AAD B2C認証の新機能です。現在私は3つのアプリケーションをAADでホストしており、Azure Active DirectoryでホストされているWeb APIにアクセスしています。 私はアプリケーションの1つをB2Cテナントに移しています。私もB2CでWeb APIをホストしており、私はスタートアップクラスで以下のコードを使用しています。Azure Activeディレクトリマルチテナント認証
public partial class Startup
{
public void ConfigureAuth(IAppBuilder app)
{
var settings = new SecurityTokenSettings();
var validAudiencesList = new List<String>
{
settings.GetValue("apiResource"),
settings.GetValue("apiClientId")
};
app.UseWindowsAzureActiveDirectoryBearerAuthentication(
new WindowsAzureActiveDirectoryBearerAuthenticationOptions
{
Tenant = settings.GetValue("tenant"),
TokenValidationParameters = new TokenValidationParameters
{
ValidAudiences = validAudiencesList,
SaveSigninToken = true,
},
AuthenticationMode = AuthenticationMode.Active
});
app.UseClaimsAuthorization();
}
}
これは、AAD登録アプリケーションとWeb APIを使用するとうまく動作します。 ClaimsAuthorization - context.Authentication.Userにはクレームとユーザー情報があります。
しかし、私はB2C登録されたアプリとWeb APIを使用すると、コンテキスト内のユーザー情報が空になります。また、私は何の主張も見ません。
私はapp.UseOAuthBearerAuthenticationを使用しても、AADとB2Cの両方のアプリケーションで正常に動作しますか?
Web APIにアクセスするためにAADアプリケーションとB2Cアプリケーションを認証する方法を教えてください。