2017-09-19 4 views
0

AAD B2C 인증에 새로운입니다. 현재 저는 AAD에서 호스팅되는 3 개의 응용 프로그램을 가지고 있으며 하늘빛 Active Directory에서 호스팅되는 웹 API에 액세스합니다. 응용 프로그램 중 하나를 B2C 거주자로 이동 중입니다. B2C에서도 웹 API를 호스팅했으며 시작 클래스에서 아래 코드를 사용하고 있습니다.Azure 액티브 디렉토리 다중 임차인 인증

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 등록 된 응용 프로그램 및 웹 API를 사용할 때 제대로 작동합니다. ClaimsAuthorization에서 - context.Authentication.User는 클레임과 사용자 정보를 가지고 있습니다.

그러나 B2C 등록 된 앱과 웹 API를 사용할 때 컨텍스트의 사용자 정보는 비어 있습니다. 또한 나는 어떤 주장도 보지 않는다.

app.UseOAuthBearerAuthentication을 사용하는 경우 AAD 및 B2C 등록 응용 프로그램 모두에서 성공적으로 수행 할 수 있습니까?

웹 API에 액세스하기 위해 AAD 응용 프로그램과 B2C 응용 프로그램을 인증하는 방법은 무엇입니까?

답변

0

더 많은 코드와 앱 구성 정보가 없으면 정확한 문제를 식별하기는 어렵지만 Azure AD B2C .NET Web App to a Web API 코드 샘플을 체크 아웃하는 것이 좋습니다. 이것은 구현하려는 시나리오와 비슷합니다.