use*_*977 13 spring oauth-2.0 spring-security-oauth2
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);
}
Run Code Online (Sandbox Code Playgroud)
我觉得它没用.这段代码检查的内容是什么?
根据我收集到的信息,它是资源服务的ID。
当您考虑为了api版本控制而分离oauth令牌提供程序servlet和资源服务器时,这一点变得更加清楚。例如,假设客户端A(cA)可以访问api1,而客户端B(cB)可以访问api2,则可以通过在api1的资源服务器xml中指示其resource-id = api1来强制执行此访问,然后配置客户端详细信息对于cA,它们具有resourceIds =“ api1”,对于[cB,api2]同样。
这样,我们就可以保护api访问并将其保护声明与客户角色声明分开。
归档时间: |
|
查看次数: |
8065 次 |
最近记录: |