是否可以向AAD添加/扩展用户身份验证逻辑?
我希望能够以另一种方式检索用户的密码,然后将密码移交给AAD以常规方式由AAD对其进行验证。
从高层次上讲,这是我想到的身份验证流程:
对此表示任何帮助。
答案 0 :(得分:1)
尽管正式建议不要使用AAD应用程序,但可以使用用户名/密码身份验证(grant_type=password
)。
该流程如何与ADAL.NET库结合使用,在此进行了详细说明:https://github.com/AzureAD/azure-activedirectory-library-for-dotnet/wiki/Acquiring-tokens-with-username-and-password
请注意,必须将您的AAD应用创建为“本机”应用才能起作用!尝试针对使用用户名和密码的用户进行身份验证时,“ Web”应用程序(机密客户端)将引发AADSTS7002
错误!
此处介绍了AAD v2.0密码流程:https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth-ropc
答案 1 :(得分:0)
是的,您可以这样做。您可以通过添加AuthController发行身份验证令牌并创建自定义身份验证端点。在用户可以调用终结点之前,他需要使用有效的凭据来调用AuthController以获得令牌,该令牌将在后续的API调用中使用。
到目前为止,这是迄今为止我所见过的最好的guide。这个one也很方便。
您还可以在后端使用a custom authentication,在前端使用AAD身份验证。