《Windows Azure Platform 系列文章目录》
我们知道,Azure AD混合身份验证支持以下多种方式:
云端身份验证:
(1)Azure AD密码哈希同步(Password Hash)。把本地域控制器里的目录中的用户名和密码,同步到Azure云端的Azure AD里。密码会使用 HMAC-SHA256 键控哈希算法的 1000 次迭代
(2)Azure AD Pass Through。通过使用在一个或多个本地服务器上运行的软件代理,为 Azure AD 身份验证服务提供简单密码验证。 服务器直接使用本地 Active Directory 验证用户,这将确保云中不发生密码验证。
联合身份验证(ADFS):
(1)Azure AD 将身份验证过程移交给单独的受信任身份验证系统(例如本地 Active Directory 联合身份验证服务 (AD FS))来验证用户的密码
最近遇到一个客户使用场景,这里简单介绍一下。
客户环境:
- 客户使用Azure Virtual Desktop (AVD)来使用VDI环境
- AVD环境的用户验证,是通过密码哈希实现的,即用户名、密码保存在IDC。再通过Azure AD Connect把用户名密码同步到Azure
- AVD用户是通过Remote Desktop App登录AVD环境的
- AVD用户不能通过VPN方式,连接到IDC侧的域控,进行密码重置
客户问题:
- 因为本地AD用户密码同步到微软云上,会存在密码过期的情况。
- 因为AVD客户端用户不能通过VPN方式,直接连接到IDC侧的域控,需要找到解决办法
实现方式:
- 采用Azure AD Password Write Back的方式,即云端azure ad用户可以重置密码,再把密码回写到IDC侧的域控上
前提:
- AVD用户必须使用Azure AD Premium P1 License
实现步骤:
以下操作需要使用
1.在IDC的域控制器服务器上,以域管理员身份,打开Active Directory Users and Computers
2.点击View,勾选Advanced Features
3.在左侧的栏目中,选择根域,右键,点击Properties -> Security -> Advanced
4.在Permissions栏目里,点击Add
5.在Principal里,点击Azure AD Connect的账户
6.在Applies下拉框里,选择Descendant User Objects
7.在Permission里,确保Reset password勾选框选中
8.在属性中,确保Write LockoutTime和Write pwdLastSet勾选框选中
9.最后点击Apply/OK
在Azure AD中进行如下设置:
1.在IDC的Azure AD Connect服务器上,点击Azure AD Connect
2.点击Customize
3.Domain/OU Filtering里选择需要同步的属性信息。步骤略
4点击Password Write back
Azure AD Connect这边就配置完毕了
5.我们以azure全局管理员身份,登录https://portal.azure.cn/
6.选择Azure Active Directory,点击properies,可以选择某些用户,这里我设置avd登录用户所在的用户组
7.验证方式使用默认的email和mobile phone
8.确定on-premise integration的配置,如下图:
9.我们以avd用户,登录remote desktop app,会因为密码过期问题,显示登录失败:
10.我们以avd用户身份,登录https://portal.azure.cn/,点击forget my password
11.输入验证码,如下图:
12.后续密码重置后,我们再次以avd用户,登录remote desktop app。
此时输入重置后新的密码,即可登录avd环境
其他常见问题:
https://appds.uk/blog/azure-ad-user-password-reset-issues
http://it-club.cn/post/68.html