标签: azure-ad-b2c

Azure B2C EditProfile 自定义策略,无需先登录

现在,active-directory-b2c-custom-policy-starterpackProfileEdit.xml附带的文件要求用户登录,然后才真正让他们进入“编辑个人资料”页面。

我试图完成的用例有点不同。用户已经登录到应用程序,并且有一个按钮,Edit Profile单击该按钮会将用户带到“编辑个人资料”页面。也就是说,不应再次登录。

我的应用程序允许用户使用以下方式登录:FacebookLocal Account Signin。自定义 ProfileEdit B2C 策略应该知道用户使用哪一个登录,并直接将用户重定向到 ProfileEdit 策略。

我尝试搞乱ProfileEdit技术简介,但我所做的修改不起作用。

任何对 Azure B2C 自定义策略更有经验的人都可以告诉我如何实现这一目标吗?

customization edit azure user-profile azure-ad-b2c

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

有没有办法在Azure AD B2C中使用GRAPH API批量创建或删除用户

我正在尝试用 C# 制作一个控制台应用程序,希望通过它将超过 100000 个用户迁移到 Azure AD B2C。

为此,我们使用 Graph API。

我当前的方法为每个 API 调用创建一个用户帐户,并且需要超过 12 个小时才能迁移大约 50000 个用户。

为了减少总时间,我想批量发送数据,而不是使用 API 逐一发送数据。但是,我无法找到任何解决方案。

是否有可用于批量创建用户的API端点。请帮忙。

另外,如果我想批量删除这些用户。可以这样做吗?

以下是我用于实现解决方案的一些 Microsoft 文档参考。

https://learn.microsoft.com/en-us/azure/active-directory-b2c/active-directory-b2c-user-migration?tabs=applications https://learn.microsoft.com/en-us/previous -versions/azure/ad/graph/api/users-operations#CreateLocalAccountUser

createuser azure-ad-graph-api azure-ad-b2c

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

有什么方法可以为 Azure AD B2C 自定义策略中的输入提供默认值吗?

I am working on integrating Azure AD B2C into an existing shopping cart application, replacing an existing user identity solution.

I have already created a custom policy to implement user registration / sign-up and integrated it into the normal account creation process. However, I am having a problem with integrating registration during the checkout process.

With the old IDP, the checkout process first collects the user's name and email address. After that has been collected, the user is given the …

azure-ad-b2c

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

使用 Azure AD B2C 通过 Microsoft 身份提供商登录的响应无效

我正在创建一个使用 Azure AD B2C 进行身份处理的应用程序,并使用 MSAL 作为我的 Angular 前端来与其交互。到目前为止,我可以使用本地帐户和 Google 帐户,但在让 Microsoft 身份提供商与我的应用程序一起使用时遇到问题。为了尝试做到这一点,我一直遵循以下指南: https://learn.microsoft.com/en-us/azure/active-directory-b2c/identity-provider-microsoft-account

每当我尝试通过 Microsoft 帐户登录时,都会收到以下错误:

服务器错误:服务器错误:AADB2C90273:收到无效响应:“错误:invalid_request,错误描述:跨源授权代码兑换需要代码交换的证明密钥。”

在我的应用程序设置中,我配置了 2 个重定向 URI:

无论出于何种原因,只有两者的组合似乎才能让我在登录后重定向回我的应用程序,而其他身份提供商的情况并非如此。但响应仍然是一个错误。

客户端 ID 和密钥均根据上述 MS 指南文档中所述的说明正确配置。

任何帮助表示赞赏。

azure azure-ad-b2c azure-ad-msal

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

用户登录后如何在 Blazor 服务器端应用程序中检索用户声明?

我有 Blazor 服务器应用程序和AD B2C身份验证。我已经配置了 Azure 并且该应用程序工作正常。我还可以使用以下代码查看声明。

<AuthorizeView>
    <Authorized>
        <table style="border: 1px solid black;">
            <tr style="border: 1px solid black; padding: 2px;">
                <th style="border: 1px solid black; padding: 2px;">Claim Type</th>
                <th style="border: 1px solid black; padding: 2px;">Value</th>
            </tr>

            @foreach (var item in context.User.Claims)
            {
                <tr style="border: 1px solid black; padding: 2px;">
                    <td style="border: 1px solid black; padding: 2px;">@item.Type</td>
                    <td style="border: 1px solid black; padding: 2px;">@item.Value</td>
                </tr>
            }
        </table>
    </Authorized>
</AuthorizeView>
Run Code Online (Sandbox Code Playgroud)

我想访问C# 类(而不是 razor 文件)中的用户声明并保存在数据库中。我怎样才能做到这一点?声明是否存储在像HttpContext这样的全局对象中,我可以从中检索这些声明?

azure-ad-b2c blazor-server-side

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

不记名令牌在 AAD B2C .NETCorre 中不起作用

我有一个使用 ASP.NET Core 构建的 Web API。我有一个将调用此 API 的 React 应用程序。使用 AAD B2C 管理身份。我遇到了一个问题,API 无法识别应用程序生成的不记名令牌。

我确信这与我的设置有关,因为令牌本身具有我需要的所有声明(由 JWT.io 解码)。但是,当我通过 .NET Core 中的代码传递它以允许授权时,ClaimsIdentity 没有任何内容,也不包含用户信息。

我使用以下代码行设置实例:

 services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
         .AddMicrosoftIdentityWebApi(options =>
         {
            configuration.Bind("AzureAdClient", options);
            options.TokenValidationParameters.NameClaimType = "name";
         }, options => { configuration.Bind("AzureAdClient", options); });
Run Code Online (Sandbox Code Playgroud)

我还有以下配置:

 "AzureAdClient": {
        "Instance": "https://login.microsoftonline.com/",
        "Domain": "somename.onmicrosoft.com",
        "ClientId": "guid here",
        "TenantId": "guid here",
        "Audience": "https://somename.onmicrosoft.com/tenants-api",
        "SignUpSignInPolicyId": "B2C_1_RwSignIn"
    }
Run Code Online (Sandbox Code Playgroud)

我在这里做错了什么吗?

azure-ad-b2c

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

身份验证失败:com.microsoft.identity.client.exception.MsalClientException:缺少类型所需的令牌:{0}

实现了 Azure B2C 登录。

突然应用程序收到此错误。无法找到问题出在哪里。谁能帮忙

我们使用以下源: https ://github.com/Azure-Samples/ms-identity-android-java

在此输入图像描述

在此输入图像描述

下面的代码用于生成 KeyHash

public static void getKeyHash(Context mAppContext){
        final String packageName = mAppContext.getPackageName();
        try {
            final PackageInfo info = mAppContext.getPackageManager().getPackageInfo(packageName, PackageManager.GET_SIGNATURES);
            for (final Signature signature : info.signatures) {
                final MessageDigest messageDigest = MessageDigest.getInstance("SHA");
                messageDigest.update(signature.toByteArray());
                final String signatureHash = Base64.encodeToString(messageDigest.digest(), Base64.NO_WRAP);
                Log.i("Utils", "signatureHash-->"+signatureHash);
            }
        } catch (PackageManager.NameNotFoundException | NoSuchAlgorithmException e) {
            e.printStackTrace();
            Log.e("Utils", "Unexpected error in verifyRedirectUriWithAppSignature()", e);
        }

    }
Run Code Online (Sandbox Code Playgroud)

已授予权限的范围和在 android 代码中使用的相同范围 URL

在此输入图像描述

添加此权限应用程序后我忘记了offline_access权限

android access-token azure-active-directory azure-ad-b2c azure-ad-msal

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

使用 Java 将代理设置添加到 Microsoft Graph 客户端

我正在尝试实现 GraphClient,下面是一个运行良好的示例代码...

   ClientCredentialProvider authProvider = 
              new ClientCredentialProvider(clientId,
                      scopes,
                      clientSecret,
                      b2cTenant,
                      endpoint);
    
    IGraphServiceClient graphClient = graphClient = GraphServiceClient.builder()
                .authenticationProvider(authProvider)
                .buildClient();
Run Code Online (Sandbox Code Playgroud)

这工作正常......但在某些情况下,从运行代码的地方,有一个代理,所以我需要设置代理来连接到互联网。我需要设置代理并将其传递给 graphClient 以某种方式告诉通过代理进行调用。

我试图找到一份文件,但找不到任何文件,我得到了这个......

ProxyOptions proxyOptions = new ProxyOptions(ProxyOptions.Type.HTTP, new InetSocketAddress(proxyUrl, proxyPort));
proxyOptions.setCredentials(proxyUser, proxyPassword);

final UsernamePasswordCredential usernamePasswordCredential = new UsernamePasswordCredentialBuilder()
                    .clientId(clientId)
                    .username(username)
                    .password(password)
                    .httpClient(HttpClient.createDefault(new HttpClientOptions().setProxyOptions(proxyOptions)))
                    .build();
Run Code Online (Sandbox Code Playgroud)

但问题是“ProxyOptions”不在 Maven 中,我不确定它属于哪个库。

任何人都可以提出一个想法。

java proxy azure-ad-graph-api azure-ad-b2c microsoft-graph-api

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

Azure B2C 用户流不显示任何应用程序

刚刚在 Azure B2C 中注册了第一个应用程序和第一个用户流。

为了检查流程,我单击“运行用户流程”,但弹出窗口中的所有字段和下拉菜单都是空的。

下拉列表中是否至少应该注册一个应用程序?

azure-ad-b2c

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

有一些如何备份 Azure AD B2C 的方法吗?

我找不到这个问题的官方答案。我在谷歌上的研究表明......

这是没有必要的,因为 Azure AD B2C 是地理复制的、弹性的、等等……甚至在第三次世界大战中,Azure AD BC2 也将启动并运行。

好吧,微软,讲得很好。对您的销售团队来说非常好,但是...

  • 我们有客户。客户是偏执狂。他们希望我们展示我们是如何进行备份的。
  • 另外,如果一个笨拙的管理员不小心删除了所有人怎么办?
  • Azure AD B2C 存储的不仅仅是用户数据。您可以存储自定义用户属性、应用程序注册、流程以及构成解决方案架构的许多其他内容。这也必须得到保护。

那么,由于没有现成的解决方案......有人知道一些非官方的事情吗?也许是一个强大的脚本或一个无文档的解决方案?Azure AD B2C 的返回和还原解决方案不再有效。

azure azure-active-directory azure-ad-b2c

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