Java 如何在Spring OAuth2资源所有者密码中管理用户权限?

Java 如何在Spring OAuth2资源所有者密码中管理用户权限?,java,spring,spring-boot,spring-security-oauth2,Java,Spring,Spring Boot,Spring Security Oauth2,我实现了SpringOAuth2资源所有者密码,主要基于 . 我对处理用户权限有点困惑。例如,我有一个登录请求: POST /oauth/token HTTP/1.1 Host: localhost:8080 Authorization: Basic cGVwZTpwZXBlc2VjcmV0 Cache-Control: no-cache Postman-Token: cea7a288-3f4a-9a83-47b3-eb6cc4218cf2 Content-Type: application/x

我实现了
Spring
OAuth2
资源所有者密码,主要基于 .
我对处理用户权限有点困惑。例如,我有一个登录请求:

POST /oauth/token HTTP/1.1
Host: localhost:8080
Authorization: Basic cGVwZTpwZXBlc2VjcmV0
Cache-Control: no-cache
Postman-Token: cea7a288-3f4a-9a83-47b3-eb6cc4218cf2
Content-Type: application/x-www-form-urlencoded

grant_type=password&username=myusername&password=mypassword
(and client_id:client_secret encoded)
它的答复是:

{
  "access_token": "2ff22411-1ec5-4a36-954f-071de576e78d",
  "token_type": "bearer",
  "expires_in": 8918,
  "scope": "READ_FLIGHTS"
}
此用户具有范围
READ\u FLIGHTS
。但是该范围对应于
客户机id
,因此登录该应用程序的用户也具有该范围。我希望为用户而不是客户机指定作用域。可能吗? 例如,我想让这个
用户A
具有作用域
写入飞行
,而
用户B
没有。同一应用程序中的两个用户(
client\u id

你知道怎么做吗


编辑
我已经检查过了,但是我无法理解如何实现它。如果您知道这个实现的一个示例,那就太好了。我找不到任何

这周我也一直在看这个。我当前的策略是实现UserApprovalStore,在调用checkForApproval时修改AuthorizationRequest内的作用域@谢谢!如果没有其他解决办法,我会考虑的