나머지 API를 보호하기 위해 봄 oauth2를 구현하고 있습니다. 기본적으로 모든 사용자에게 제한하는 대신 특정 사용자에게 나머지 API 사용을 제한합니다.javacript를 사용하여 HTML 프런트 엔드와 Spring Oauth2 구현을 통합합니다.
나는 백엔드를 구현했고 봄 oauth2를 사용하여 API를 보호했다.
다음 단계를 따르고 있습니다.
1) 5 가지 매개 변수로 GET 요청을 보냅니다.
로컬 호스트 : 8080/SpringRestSecurityOauth/OAuth를/토큰 grant_type = 비밀번호 & CLIENT_ID = Awyi123nasdk89 & client_secret = asdj39m32 @ # $의 & 이름 = 라훌 @ gmail을 & 암호 = 라훌 9831 @
2) 서버의 유효성을 검사하는 사용자에게 스프링 보안을 지원하고 액세스 코드로 json 응답을 반환합니다.
{ "access_token이": "22cb0d50-5bb9-463d-8c4a-8ddd680f553f",
"token_type": "베어러",
"refresh_token도": "7ac7940a-d29d-4a4c-9a47-25a2167c8c49"
는 "expires_in"119
}
3) 내가 매개 변수로이 액세스 토큰을 전달하여 보호 된 리소스에 액세스는 요청은 다음과 같이 간다 :
로컬 호스트 : 8080/SpringRestSecurityOauth/API/사용자/? access_token = 8c191a0f-ebe8-42cb-bc18-8e80f2c4238e
4) 토큰이 만료 된 경우 사용자는 단계 (2)에서 승인 한 새로 고치는 토큰을 사용하여 새 토큰을 가져와야합니다.
로컬 호스트 : 8080/SpringRestSecurityOauth/OAuth를/토큰 grant_type = refresh_token도 & CLIENT_ID = restapp & client_secret = restapp & refresh_token도 = 7ac7940a-d29d-4a4c-9a47-25a2167c8c49 만료 후 새로운 액세스 토큰 요청은 다음과 같이 보입니다
위의 모든 단계가 정상적으로 작동합니다. 이제 클라이언트 측에서이를 구현해야합니다. 따라서 특정 클라이언트가이 호출에 액세스 할 수 있습니다. HTML/CSS를 클라이언트 측 기술로 사용하고 있습니다.
클라이언트가 액세스 토큰을 얻는 방법은 무엇입니까? 브라우저 로컬 저장소에 저장해야합니까? 또는 나머지 전화가 걸릴 때마다 생성되어야합니다.
어떤 예도 더 진행할 수 있습니다.