如何使用MSAL.NET处理多租户守护服务应用程序的AppCacheTokens。

问题描述 投票:0回答:1

是否可以使用 MSAL.NET 身份验证库来处理appCacheTokens,生成多租户守护服务应用程序(即客户端凭证授予).在这种情况下,我必须建立(n)数量的机密客户端应用程序,基于租户ID和需要维护的令牌。

var confidentialClientApplication_001 = ConfidentialClientApplicationBuilder
                .Create(clientId)
                .WithTenantId("TenantId__001")
                .WithClientSecret(clientSecret)
                .Build();

var confidentialClientApplication_002 = ConfidentialClientApplicationBuilder
                .Create(clientId)
                .WithTenantId("TenantId__002")
                .WithClientSecret(clientSecret)
                .Build();

... ... ...

var confidentialClientApplication_999 = ConfidentialClientApplicationBuilder
                    .Create(clientId)
                    .WithTenantId("TenantId__999")
                    .WithClientSecret(clientSecret)
                    .Build();  

本文档 已实施单项应用

azure-active-directory adal msal
1个回答
1
投票

你可以在获取令牌时指定不同的租户ID.

这应该可以。

var app = ConfidentialClientApplicationBuilder.Create("client-id")
    .WithAuthority(AzureCloudInstance.AzurePublic, AadAuthorityAudience.AzureAdMultipleOrgs)
    .WithClientSecret("secret")
    .Build();

var result = await app.AcquireTokenForClient(new[]{"https://graph.microsoft.com/.default"})
    .WithAuthority(AzureCloudInstance.AzurePublic, Guid.Parse("target-tenant-id"))
    .ExecuteAsync();

所以我们指定 "组织 "作为应用授权,但在获取令牌时指定一个特定的租户。

© www.soinside.com 2019 - 2024. All rights reserved.