0

Active Directory와 함께 IdentityServer3를 사용하여 SSO를 수행하는 App1 및 App2를 보유하고 있습니다.SSO 상황에서 앱 초기화를 처리 할 위치는 어디입니까?

각 앱마다 고유 한 사용자 및 역할이 있습니다. ClaimsTransformation OWIN 미들웨어를 만들었고, 사용자/역할을 얻었으며, 쿠키를 직렬화 한 다음 후속 호출을 다시 가져 왔습니다. 잘 작동합니다.

하지만 초기 사용자 등록은 어디서 처리합니까? App1 사용자가 로그온 한 다음 App2로 새로 이동하면 인증을 건너 뛸 수 있기 때문에 인증 할 수 없습니다.

미들웨어에서이 작업을 수행 할 경우 사용자를 등록/프로필 페이지로 리디렉션하려고하면 리디렉션에 미들웨어가 다시 부딪혀 리디렉션 루프가 발생합니다.

제안 사항? 감사.

답변

0

전혀 신경 쓰지 마세요. Owin.Security.OpenIdConnect를 사용하는 .NET의 경우 앱 초기화는 SecurityTokenValidated에서 수행해야합니다. 내가 쿠키 이름을 설정하지 않았기 때문에 인증 문제를 건너 뛸 수있었습니다.

app.UseOpenIdConnectAuthentication(new OpenIdConnectAuthenticationOption 
    { 
    SignInAsAuthenticationType = "Cookies", 
    Notifications = new OpenIdConnectAuthenticationNotification 
    { 
     SecurityTokenValidated = n => { ... }