美好的一天, 我正在使用 .Net Core 3.1 Web 应用程序和 Azure Active Directory B2C 进行用户登录,到目前为止,它运行良好且符合预期。 现在我想使用 SQL Server 中每个用户配置的角色、策略和声明。每个用户 ID(azure b2c 对象 ID)都映射到角色。
如何在startup.cs 文件中检索它们?我需要使用类似于:
services.AddAuthorization(options =>
{
options.AddPolicy("AdminAccess", policy => policy.RequireRole("Admin"));
});
非常感谢您提前。 问候
最佳答案
您可以使用 Azure AD 自定义策略,它允许您在身份验证期间调用 REST API。这可用于将用户的 ObjectId 传递到 API,并将角色返回到 Azure AD B2C。然后,B2C 可以将角色作为声明发布到 token 中。
https://learn.microsoft.com/en-us/azure/active-directory-b2c/custom-policy-rest-api-claims-exchange
关于Azure Active Directory B2C 自定义角色和策略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60945084/