我正在使用 Spring Security OAuth2 客户端应用程序并提供了以下配置
spring:
security:
oauth2:
client:
registration:
okta:
client-id:
client-secret:
scope: openid
provider:
okta:
authorization-uri: https://dev-7858070.okta.com/oauth2/default/v1/authorize
token-uri: https://dev-7858070.okta.com/oauth2/default/v1/token
user-info-uri: https://dev-7858070.okta.com/oauth2/default/v1/userinfo
jwk-set-uri: https://dev-7858070.okta.com/oauth2/default/v1/keys
我仅将范围指定为
openid
,但仍然获得其他范围,例如 profile
和 email
。我只想获取 openid 范围。我哪里错了?
您可以通过用逗号分隔来指定多个范围。
spring:
security:
oauth2:
client:
registration:
okta:
client-id:
client-secret:
scope: openid,profile,email
在 OAuth2 授权系统中,可以为客户端定义默认范围。客户端将始终获得这些范围,即使它没有请求它们。
个人资料和电子邮件是典型的默认范围。