SQL Server - 包含的数据库用户密码过期如何工作?

Wil*_*ood 6 sql-server logins password contained-database

我最近开始使用包含的数据库,但我不明白包含的数据库用户是否/如何拥有过期的密码。

MSDN 文档说他们这样做 - 使用 SQL Server 登录,有强制密码过期的选项框,但对于包含的数据库用户来说,这不存在(据我所知)。

这些包含的数据库帐户已经存在一段时间了,我们的域策略是每 6 个月重置一次密码,但我们从未更改过这些密码,而且应用程序在过去几年中使用相同的密码连接得很好。

我的第一个问题是我怎么知道对包含的数据库用户强制执行“密码过期”?对于 SQL 登录is_expiration_checkedsys.sql_logins.

使用传统的 SQL 登录,我可以使用以下函数来获取更改 SQL Server 登录的时间

LOGINPROPERTY('login','PasswordLastSetTime')  
Run Code Online (Sandbox Code Playgroud)

包含的数据库用户是否有类似的东西?

Wil*_*ood 4

好的,看起来只适用密码复杂性要求,而不适用过期 - https://learn.microsoft.com/en-us/sql/relational-databases/security/password-policy?view=sql-server-2017 - ”注意 SQL 数据库强制执行密码复杂性。密码过期和策略强制部分不适用于 SQL 数据库。”