相关疑难解决方法(0)

在Azure Active Directory B2C中按组授权

我试图弄清楚如何授权使用Azure Active Directory B2C中的组.我可以通过用户授权,例如:

[Authorize(Users="Bill")]
Run Code Online (Sandbox Code Playgroud)

然而,这不是很有效,我看到很少用例.另一种解决方案是通过角色授权.但是由于某些原因,似乎并没有wowrk.例如,如果我为用户提供"全局管理员"角色,请尝试:

[Authorize(Roles="Global Admin")]
Run Code Online (Sandbox Code Playgroud)

这是行不通的.有没有办法通过群组或角色进行授权?

asp.net-mvc azure azure-ad-b2c

25
推荐指数
3
解决办法
1万
查看次数

Azure AD B2C - 角色管理

我有一个与Azure AD B2C连接的Asp.NET MVC应用程序.

在管理员设置中,我创建了一个管理员组:

在此输入图像描述

在我的代码中我想使用 [Authorize(Roles = "Administrator")]

使用常规的Azure Active Directory,它很容易添加(只需3行代码).但对于Azure AD B2C,我找不到任何有用的教程或示例.也许你可以告诉我我需要修改什么.

这是我的Startup.Auth.cs的ConfigureAuth方法

public void ConfigureAuth(IAppBuilder app)
{
    app.SetDefaultSignInAsAuthenticationType(CookieAuthenticationDefaults.AuthenticationType);

    app.UseCookieAuthentication(new CookieAuthenticationOptions());

    app.UseOpenIdConnectAuthentication(
        new OpenIdConnectAuthenticationOptions
        {
            // Generate the metadata address using the tenant and policy information
            MetadataAddress = String.Format(AadInstance, Tenant, DefaultPolicy),

            // These are standard OpenID Connect parameters, with values pulled from web.config
            ClientId = ClientId,
            RedirectUri = RedirectUri,
            PostLogoutRedirectUri = RedirectUri,

            // Specify the callbacks for each type of notifications
            Notifications = new OpenIdConnectAuthenticationNotifications
            {
                RedirectToIdentityProvider = …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc azure asp.net-mvc-5 azure-ad-b2c

16
推荐指数
1
解决办法
6131
查看次数

在 Azure AD B2C 中定义特定于应用程序的用户角色

我想向使用 Azure AD B2C 以 Asp.Net Core 编写的 Web API 添加授权。我已经有了身份验证部分,现在我想在我的应用程序中添加“角色”,比如“管理员”,并且可能在未来添加更具体的角色。

我已经看到 Azure AD 添加“应用程序角色”的示例,但找不到任何适用于 AD B2C 的内容。Azure 门户中似乎没有任何内容,文档中也没有任何内容。

是否可以将自定义应用程序角色添加到 Azure AD B2C?

azure azure-ad-b2c

8
推荐指数
1
解决办法
3486
查看次数

使用JWT检索Azure AD组信息

我有需要Azure AD承载身份验证的API.

public void ConfigureAuth(IAppBuilder app)
{
   app.UseWindowsAzureActiveDirectoryBearerAuthentication(
      new WindowsAzureActiveDirectoryBearerAuthenticationOptions
      {
         // ...
      });
}
Run Code Online (Sandbox Code Playgroud)

然后可以查询Azure AD - 可能使用图谱API - 来确定主叫用户的组信息吗?这里的最终目标是将基于角色的安全性应用于API方法/控制器,如下所示(或类似).

[PrincipalPermission(SecurityAction.Demand, Role = "Admin")]
Run Code Online (Sandbox Code Playgroud)

此外,身份信息如何以及在何处应用于执行线程?

c# azure-acs azure-active-directory bearer-token json-web-token

2
推荐指数
1
解决办法
3633
查看次数