2016-12-21 8 views
0

외부 API (WebApi1)를 호출하는 응용 프로그램 (WebApp)과 WebApi1이 다른 외부 Api WebApi2를 호출합니다.Azure AD Protected Web API 호출이 동의 오류로 인해 실패했습니다.

나는 WebApi1

에서 WebApi2에 마찬가지로 웹 애플리케이션 응용 프로그램 권한에서 WebApi1에 응용 프로그램 권한을 준 나는 WebApi1에 대한 동의 페이지를 가지고 있으며, 그것은 WebApi1을 위해 잘 작동 받아 들였다. 그러나 WebApi1에서 사용자 대신 WebApi2를 호출하려고하면 동의 페이지 오류가 발생합니다.

AADSTS65001 : 사용자 또는 관리자가 Azure portal에서 응용 프로그램을 등록하면 ID

+0

확인하려면 자신의 코드 논리로 웹 API 응용 프로그램에 AAD를 통합합니까? 또는 포털에서 구성합니까? 그리고 config에서 AAD 응용 프로그램의 매니페스트에서 'knownClientApplications' 설정을 시도 했습니까? https://docs.microsoft.com/en-us/azure/active-directory/active-directory-devhowto-multi-tenant-overview#understanding- user-and-admin-consent –

+0

KnownClientApplications를 사용해 보았지만 여전히 코드 블로그로 문제가 있습니다. 감사합니다. Gary, Manownest의 KnownClientApplications를 사용해 보았습니다. 아래 코드를 시도해 보았을 때 그 예외를 throw하는 블로그 - AuthenticationContext authContext = new AuthenticationContext (authority); var result = authContext.AcquireTokenAsync (webApi2ResourceId, clientCred, userAssertion). 결과; –

+0

또한 모든 푸른 색 응용 프로그램은 단일 거주자 –

답변

0

으로 응용 프로그램을 사용 동의하지 않은, 그것은 이미 동의를 이후 knownClientApplications을 config (설정) 할 필요가 없다 우리가 앱을 등록 할 때.

그리고 다른 포털에서 등록한 경우 KnownClientApplications을 구성한 후에는 prompt=consent 매개 변수를 다시 사용하도록 권한을 부여해야합니다. 이 때 웹 앱은 웹 api2에 대한 동의를 요구합니다. 동의 한 후에는 문제가 해결되어야합니다.