SELECT name as LoginName,
create_date as LoginCreateDate,
modify_date as LoginModifiedDate,
is_policy_checked ,
is_expiration_checked ,
-- returns the number of days until the password expires.
LOGINPROPERTY(name, 'DaysUntilExpiration') DaysUntilExpiration,
LOGINPROPERTY(name, 'PasswordLastSetTime') PasswordLastSetTime,
LOGINPROPERTY(name, 'IsExpired') IsExpired,
LOGINPROPERTY(name, 'IsMustChange') IsMustChange
From sys.sql_logins
--- optional filter
-- where LOGINPROPERTY(name, 'DaysUntilExpiration') >= 2
作为Julien 的回答的补充,您可以主动将 tsql 下的日程安排为每天提醒您的工作,尤其
DaysUntilExpiration
是LOGINPROPERTY
例如从您的数据库服务器获取所有将在 2 天内过期的登录。您可以使用Login.ChangePassword方法:
您还可以使用 T-SQL 更改密码:
可以设置密码最长使用期限:
也可以通过 AD 和 GPO 设置。