인증 목적으로 승인 코드 부여와 암시 적 흐름의 장점을 파악할 수없는 이유는 기존 웹 응용 프로그램의 경우입니까?암시 적 인증 워크 플로와 인증 코드 부여 단점 단점?
말, 제 3 자 Iaas 제공 업체를 통해 인증하는 웹 앱이 있습니다. 웹 앱은 사용자 (일부 ID로 식별 됨)가 인증되었는지 만 알아야합니다. web-app는 타사 서비스를 히트하지 않으므로 권한 부여 목적으로 액세스 토큰을 가질 필요가 없습니다.
이 예제에서는 IaaS의 웹 브라우저에 user_id (JWT 토큰)를 직접 가져 오는 것이 덜 안전하고 웹 백엔드를 통해 동일한 user_id를 얻는 방법을 알지 못합니다. 두 경우 모두 세션이 설정됩니다. 이 경우 암묵적 교부금을 사용하면 무엇을 잃어 버릴 수 있습니까?
'인증 코드'부여에는 보안 클라이언트가 필요하지 않습니다. 이 보조금 유형은 스마트 폰의 기본 응용 프로그램에서 사용할 수 있으며 전혀 보안되지 않을 수 있습니다. 올바른 질문은 '클라이언트가 웹 브라우저에서 완전히 ** 실행 중'입니다. 대답이 '예'이면 암시 적 부여 유형을 사용하고, 그렇지 않은 경우 '인증 코드'(기본 응용 프로그램의 경우 PKCE)를 사용하십시오. 더 나은 설명을 보려면 https://alexbilbie.com/guide-to-oauth-2-grants/ 또는 (우수 도서) https://www.manning.com/books/oauth-2-in-action을 참조하십시오. –
내 서버에서 실행중인 웹 서버에 요청하는 브라우저에서 실행중인 클라이언트가 있습니다. 모든 문서는 인증 코드 사용을 제안합니다. 이 경우 암시적인 권한 부여보다 보안이 어떻게 유지되는지 아직 이해하지 못합니다. 예를 들어 권한 부여의 경우 클라이언트가 인증되면 서버는 동일한 user_id를 포함 할 수있는 클라이언트와의 세션을 설정합니다. 따라서 권한 부여 서버에 이중 라운드 트립이 추가 된 것 같습니다. –
@MikhailY ID/액세스 토큰이 최종 사용자의 브라우저로 갈 필요가 없기 때문에 더 안전합니다. – iandayman