Spring oauth2 范围与权限(角色)
Spring oauth2 scope vs authorities(roles)
我正在使用 Spring Security OAuth2 并且目前实现了 client_credentials 和密码授权类型。我注意到客户既有范围又有权限。有人可以解释一下有什么区别吗?更具体地说,我正在使用 JDBCTokenStore 并且数据库模式具有 oauth_client_details table。
此外,
在oauth_client_detailstable中,我不确定下面的字段是什么
用于:
web_server_redirect_url, access_token_validity,refresh_token_validity
一些澄清将非常有帮助和赞赏。
I noticed a client has both scope and authorities
客户端只有范围,但我们可以consider/use将其作为权限(角色)。这是因为 OAuth2 规范没有解释作用域的具体用法。
考虑一下,用户授权 Twitter post 将用户的推文发送到 Facebook。在这种情况下,Twitter 将具有范围 write_facebook_status。虽然用户有权更改自己的个人资料,但这并不意味着 Twitter 也可以更改用户的个人资料。换句话说,范围是客户端 authorities/roles 而不是用户的 authorities/roles.
web_server_redirect_url
这将被授权服务器用于在成功授权后将请求重定向到其原始URL或回调(授权授予)。
access_token_validity
这是 token_access 过期时间(以秒为单位)。设置为 -1 或 0 表示无限。如果您将其设置为 60,则 1 分钟后您的 token_access 将无效。您必须通过授权过程请求新令牌或使用 refresh_token.
refresh_token_validity
这是refresh_token过期时间。
我正在使用 Spring Security OAuth2 并且目前实现了 client_credentials 和密码授权类型。我注意到客户既有范围又有权限。有人可以解释一下有什么区别吗?更具体地说,我正在使用 JDBCTokenStore 并且数据库模式具有 oauth_client_details table。
此外,
在oauth_client_detailstable中,我不确定下面的字段是什么 用于:
web_server_redirect_url, access_token_validity,refresh_token_validity
一些澄清将非常有帮助和赞赏。
I noticed a client has both scope and authorities
客户端只有范围,但我们可以consider/use将其作为权限(角色)。这是因为 OAuth2 规范没有解释作用域的具体用法。
考虑一下,用户授权 Twitter post 将用户的推文发送到 Facebook。在这种情况下,Twitter 将具有范围 write_facebook_status。虽然用户有权更改自己的个人资料,但这并不意味着 Twitter 也可以更改用户的个人资料。换句话说,范围是客户端 authorities/roles 而不是用户的 authorities/roles.
web_server_redirect_url
这将被授权服务器用于在成功授权后将请求重定向到其原始URL或回调(授权授予)。
access_token_validity
这是 token_access 过期时间(以秒为单位)。设置为 -1 或 0 表示无限。如果您将其设置为 60,则 1 分钟后您的 token_access 将无效。您必须通过授权过程请求新令牌或使用 refresh_token.
refresh_token_validity
这是refresh_token过期时间。