Windows 인증을 제거하기 위해 ADFS (구내)가있는 Angular SPA + .ASPNET Core API를 설정하려고합니다. 궁극적 목표는 다음과 같습니다ADFS 2016 - OpenID Connect Discovery Endpoint에 대한 CORS 문제
- 각도 SPA -> 리디렉션 ADFS에 대한 사용자 및 다시 id_token 수신
- 각도 SPA ->이 API를
- 각도 SPA를 호출이 토큰을 사용 ->은 시간에서 토큰을 새로 고칩니다 시간
각도 SPA 및 API는 ADFS에서 올바르게 구성됩니다. 나는 angular-oauth2-oidc을 사용하여 스파를 구성합니다.
문제는 SPA를로드 할 때 SPA가 OpenId Discovery 엔드 포인트 (.well-known/openid-configuration
)에 도달하려고 시도 할 때 CORS 오류가 발생한다는 것입니다. 따라서 사용자를 ADFS로 리디렉션 할 수도 없습니다. 아무것도 작동하지 않습니다.
저는 온라인을 많이 보았고 ADFS가 CORS를 지원하지 않는다는 많은 사람들을 만났습니다. 그래도 이상하게 보입니다. Microsoft는 그들이 Single Page Applications을 지원한다고 주장하므로 이미 ADS가 CORS 요청을받는다고 가정합니다.
다른 사람이이 문제에 부딪 혔습니까? 진심으로 Microsoft는 이것을 구현했으며 CORS 요청을 허용하는 방식으로 구축하지 않았습니다.
편집 : 또한 adal.js 주위에 래퍼를 만들려고했습니다. 사용자를 ADFS로 리디렉션하고 로그인하여 id_token을 가져 왔습니다. 이제 문제는 API가 아니라 토큰에있는 스파에 대해 aud
클레임을 반환한다는 것입니다. SPA가 토큰을 사용하여 API를 호출하면 예상대로 실패합니다. 내가 이것에 막 다른 골목을 맞춘 것 같은 느낌.