我在使用azure AD身份验证时遇到了一个问题。Out团队开始开发身份应用程序来处理我们所有应用程序服务的身份验证请求。
对于登录用户,我们必须使用Azure AD,因为我们不希望我们的用户创建新帐户,而是使用他们的公司microsoft帐户登录我们的应用程序。
问题是当用户进入应用程序时。它获得了microsoft azure文档中描述的azure访问令牌,但我们希望为这个经过身份验证的人创建自己的自定义令牌,其中包含来自我们数据库的额外信息。
我们尝试使用documentation中描述的外部提供者来实现身份服务器,但并不是很成功。
因此,我们面临的问题是从azure身份到我们自己的自定义身份的转换。
有什么想法/建议如何实现这样的服务器/客户端吗?
发布于 2020-05-04 15:06:23
您可以使用identity server 4作为身份提供者,并添加Azure AD作为外部登录,here是代码示例,您可以添加Azure AD登录,如下所示:
services.AddAuthentication()
.AddOpenIdConnect("aad", "Azure AD", options =>
{
options.ClientId = "<app>";
options.Authority = "https://login.microsoftonline.com/<tenant>/";
options.CallbackPath = "/signin-oidc-aadtenant";
options.SaveTokens = true;
options.SignInScheme = IdentityServerConstants.ExternalCookieAuthenticationScheme;
})您可能会在实现整个流程时显示详细的问题。
发布于 2020-05-03 19:10:52
您可以使用Azure AD B2C中的自定义策略。阅读此处https://docs.microsoft.com/en-us/azure/active-directory-b2c/custom-policy-get-started
https://stackoverflow.com/questions/61571615
复制相似问题