获取 windows 域用户名和唯一 token/password 以通过服务
Obtain windows domain username and unique token/password to pass through service
我有一个应用程序,用户可以在他们的桌面上本地 运行,它在外部调用我的服务器上的 API。
我可以通过WindowsIdentity
API获取用户的Windows域名和名称。但我想在我们这边存储一个唯一的 identifier/token,我可以将后续登录与其进行比较,以确保它是同一域用户而不是冒充者。
我不能要求用户提供凭据,因为登录过程是针对初学者的,他们需要在打开应用程序时自动登录。我正在查看 WindowsIdentity
API 以寻找一些唯一 ID,但不确定它如何在用户域上的密码更改后持续存在。
编辑:也许 WindowsIdentity.GetCurrent.Claims
collection 的声明可能包含一些有用的东西。
以下声明足以在 AD 环境中唯一标识用户:
http://schemas.microsoft.com/ws/2008/06/identity/claims/primarysid
从以下位置获取:
WindowsIdentity.GetCurrent.Claims
我有一个应用程序,用户可以在他们的桌面上本地 运行,它在外部调用我的服务器上的 API。
我可以通过WindowsIdentity
API获取用户的Windows域名和名称。但我想在我们这边存储一个唯一的 identifier/token,我可以将后续登录与其进行比较,以确保它是同一域用户而不是冒充者。
我不能要求用户提供凭据,因为登录过程是针对初学者的,他们需要在打开应用程序时自动登录。我正在查看 WindowsIdentity
API 以寻找一些唯一 ID,但不确定它如何在用户域上的密码更改后持续存在。
编辑:也许 WindowsIdentity.GetCurrent.Claims
collection 的声明可能包含一些有用的东西。
以下声明足以在 AD 环境中唯一标识用户:
http://schemas.microsoft.com/ws/2008/06/identity/claims/primarysid
从以下位置获取:
WindowsIdentity.GetCurrent.Claims