[SPRING] 스프링 보안으로 OAuth 2.0에서 resourceId의 의미
SPRING스프링 보안으로 OAuth 2.0에서 resourceId의 의미
org.springframework.security.oauth2.provider.filter의 OAuth2ProtectedResourceFilter :
Collection<String> resourceIds = auth.getClientAuthentication().getResourceIds();
if (resourceIds!=null && !resourceIds.isEmpty() && !resourceIds.contains(resourceId)) {
throw new InvalidTokenException("Invalid token does not contain resource id ("+resourceId+"): " + token);
}
나는 그것이 유용하지 않다고 생각한다. 이 코드는 무엇을 검사합니까?
해결법
-
==============================
1.내가 수집 한 것을 바탕으로 자원 서비스의 ID입니다.
내가 수집 한 것을 바탕으로 자원 서비스의 ID입니다.
API 버전 지정을 위해 oauth 토큰 공급자 서블릿과 리소스 서버를 분리 할 때 더 명확 해집니다. 예를 들어, 클라이언트 A (cA)가 api1에 액세스하고 클라이언트 B (cB)가 api2에 액세스 할 수 있다고 가정하면 리소스 서버 xml에서 resource-id = api1 인 api1을 지정하고 클라이언트 세부 정보를 구성하여이 액세스를 시행합니다 cA의 경우 resourceIds = "api1"이고 [cB, api2]의 경우도 마찬가지입니다.
이를 통해 API 액세스를 보호하고 클라이언트 선언과 별도로 보호 선언을 유지할 수 있습니다.
-
==============================
2.클라이언트가 특정 리소스를 볼 권한이 있는지 여부를 확인하는 것 같습니다. 토큰 변수가 어떻게 관련되어 있는지, 당신이 보여주지 않은 관련 코드가 더있는 것처럼 보입니다.
클라이언트가 특정 리소스를 볼 권한이 있는지 여부를 확인하는 것 같습니다. 토큰 변수가 어떻게 관련되어 있는지, 당신이 보여주지 않은 관련 코드가 더있는 것처럼 보입니다.
from https://stackoverflow.com/questions/8598960/what-does-resourceid-mean-in-oauth-2-0-with-spring-security by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] AspectJ와 Spring Boot에서 @Autowired 사용하기 (0) | 2019.05.06 |
---|---|
[SPRING] Spring Cloud AWS에서 Cloudform 사용 안 함 (0) | 2019.05.06 |
[SPRING] 스윙은 스프링 부트 아래에서 헤드리스라고 생각하지만 스프링이나 일반 자바에서는 그렇지 않다고 생각하는 이유는 무엇입니까? (0) | 2019.05.06 |
[SPRING] Jersey 저지 - * 종속성이 추가 될 때 WebApplication 공급자가 존재하지 않습니다. (0) | 2019.05.06 |
[SPRING] 봄을 사용하여 비동기 및 동기화 이벤트 게시자를 구성하는 방법 (0) | 2019.05.06 |