Azure SQL Managed Instance使用AAD认证时设置Password Expiration的步骤
Azure SQL托管实例中AAD认证用户的密码过期设置流程
为啥SSMS里的Password Expiration选项灰了?
因为AAD认证用户的密码策略(包括过期规则)由Azure AD全权管控,SQL托管实例仅负责身份验证,无权修改AAD用户的密码设置。SSMS里的该选项是针对SQL本地账户设计的,对AAD用户呈灰色不可编辑状态属于正常现象。
具体设置流程
根据AAD用户的类型,分两种场景操作:
1. 纯AAD本地用户(未从本地AD同步)
直接通过Azure门户或PowerShell修改AAD端的设置:
- Azure门户操作:
- 登录Azure门户,进入「Azure Active Directory」→「用户」
- 找到目标用户,进入详情页后点击「配置文件」→「编辑」
- 在「密码有效期」区域,设置是否启用密码过期及具体过期天数,保存即可
- PowerShell操作:
- 执行
Connect-AzureAD登录AAD账号 - 查看当前用户密码策略:
Get-AzureADUser -ObjectId "user@domain.com" | Select-Object UserPrincipalName, PasswordPolicies - 设置密码永不过期:
Set-AzureADUser -ObjectId "user@domain.com" -PasswordPolicies "DisablePasswordExpiration" - 恢复默认密码过期规则:
Set-AzureADUser -ObjectId "user@domain.com" -PasswordPolicies "None"
- 执行
2. 从本地AD同步到AAD的用户
这类用户的密码策略由本地Active Directory管控,修改后同步到AAD即可:
- 在本地AD服务器打开「Active Directory用户和计算机」
- 找到目标用户,右键选择「属性」→「账户」
- 在「账户选项」中配置密码过期规则(如“用户下次登录时须更改密码”“密码永不过期”等)
- 等待AD自动同步(默认每30分钟一次,也可手动触发),AAD会自动同步该策略
验证设置生效
- 纯AAD用户:通过
Get-AzureADUser命令查看PasswordPolicies属性,确认设置已生效 - 同步用户:本地AD修改完成后等待同步,再到AAD门户查看用户的密码策略状态
内容的提问来源于stack exchange,提问作者nam
相关产品推荐
相关产品推荐

