2017-11-22 1 views
1

웹 사이트와 webapi를 모두 제공하는 mvc 앱이 있습니다. 나는 행복하게 웹 사이트의 사용자를 인증하고있다. 이제 Windows 응용 프로그램에서 웹 API 메서드를 직접 호출 할 수 있어야합니다. 나는 Windows 응용 프로그램이 로그인 페이지로 리디렉션하는 것을 원하지 않습니다. 나는 비밀 키 또는 사용자 이름/비밀 번호를 개최 Windows 응용 프로그램이 필요합니다. 그렇게하면 자동으로 인증 될 수 있습니다.B2C 로그인 페이지없이 AAD B2C로 Windows 응용 프로그램을 인증하려면 어떻게해야합니까?

나는 클라이언트 자격 증명 흐름을 처리 할 수 ​​없다는 점에 우려하고 있습니다. 자동으로 B2C에 사용자 이름과 암호를 제공하는 방법이 있습니까?

+0

클라이언트 자격 증명 흐름의 경우 일반 AAD 끝점을 사용하고 앱 토큰을 얻을 수 있습니다. 그것을 API에 전달하십시오. 하지만 대신 ROPC를 보내지 않으시겠습니까? –

+0

그래서 내 앱을 AAD 및 AADB2C에 등록합니까? – FeeFiFoFum

답변

1

Azure AD B2C는 OAuth2의 클라이언트 자격 증명 또는 ROPC 플로우를 구현하지 않습니다. 그러나 ROPC는 Azure AD B2C 로드맵에 있습니다.

Windows 응용 프로그램을 사용하는 사용자가 여러 명인 경우 해당 메커니즘을 사용하여 검색된 토큰에 사용자 인증을 통해 획득 한 ROPC가 있으므로 ROPC가 필요합니다.

client_credentials 흐름을 사용한다는 것은 Windows 응용 프로그램이 사용자의 컨텍스트없이 응용 프로그램으로 만 비밀을 유지해야한다는 것을 의미합니다. 이것은 보호 환경에서 실행되는 데몬 및 백그라운드 프로세스에는 적합하지만 사용자가 사용하려고하는 응용 프로그램에는 적합하지 않습니다.

이 시점에서 가장 좋은 방법은 Azure AD B2C 로그인 페이지로 리디렉션하는 것입니다. 네이티브 환경과 동일하지는 않지만, 여기서는 MFA, 문자열 및 언어 사용자 정의, 새로운 로그인 옵션 등의 옵션을 추가 할 때 클라이언트 응용 프로그램을 변경할 필요가 없으며 귀하의 UI가 이러한 기능을 얻을 것입니다.

관련 문제