1단계 일때 사용하는 클래스?
커스텀하게 할수 있는 법을 알아보자
다른파라미터 추가? 표준 클라이언트Id 리다이렉트 Url등.. 이거 외에 커스텀하게?
커스텀하게 설정하지 않으면 DefaultOAuth2AuthorizationRequestResolver 실행
OAuth2AuthorizationRequestResolver 이 클래스가
작동하기위해 요청정보에 들어오는 Url 정보랑 레지스트레이션 레포지토리 필요
화면 코드
url 마지막 부분만 3개가 다른이유는 레지스트레이션 아이디들이다.
여러개의 설정을 쓸수 있고 프로바이더는 1개만 공통으로 사용한다.
clientAuthenticationMehthod: none으로 해야 PKCE 방식으로 작동
none : 클라이언트 자격증명을 공개적으로 클라이언트ID 가지고 권한부요청을 하겠다.
근대 저 설정대로하면 오류가나서 변경이필요함
포함되어 날라가는 값들
코드 받을땐 클라이언트 아이디만 필요해도 되는데..
그러나 2단계에선 클라이언트 시크릿이필요한데 ? 토큰을 발급받기위해 기밀 같은경우는 시크릿이 필요함.
1단계에선 성공하는대 2단계는?
None 아니면 PKCE가 작동하지 않는데..
값도 nonce만..
인가서버는 코드챌린지를 필요하다.
PKCE 설정을 해놨는데 PKCE로 안오니깐 오류
어떻게해야될까?
OFF로 해버리면? 위에 내용을 검사하지 않겠다.
그럼 인증이 됨
근데 클래스를 만든 이유는?
우리는 보안에 더 강력하게하기위해 클라이언트 시크릿 자격도 통과해야되고
인증방식을 시크릿 베이직 , 포스트 , PKCE도 하겠다 이말임 보안을 더강화하겠따.