首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Security Oauth2版本2.0.7中请求多个作用域

在Security Oauth2版本2.0.7中请求多个作用域
EN

Stack Overflow用户
提问于 2015-07-21 19:21:53
回答 1查看 4.5K关注 0票数 6

我们有一个使用spring-security-oauth2:1.0的应用程序。我试图把它改成一个更新的版本,spring-security-oauth2:2.0.7.RELEASE。如果我没有指定scope,或者我指定了我的单个作用域,那么应用程序可以正常工作。在请求像read,write这样的多个作用域时,我遇到了问题,因为以前的版本都是这样的。

我请求的客户端拥有所有read,write and trust权限。

当我使用spring-security-oauth2:1.0时,为了得到一个令牌,我经常做一个get调用,例如

secret=secret&scope=read,write&username=user@abc.com&password=temp123

如果您看到了范围参数scope=read,write,那么通过这样的请求,我就可以获得一个带有作用域read and write的令牌。

如果我试图对Oauth2版本的2.0.7.RELEASE(尽管有一个POST请求)做同样的事情,我会得到Invalid Scope异常,因为tokenRequestread,write作为一个单独的作用域。我请求的客户端具有read,write and trust权限,但read,write不是其中之一。

如果我尝试使用scope=writescope=read,它可以正常工作,因为readwrite是客户端范围的一部分。

如果我想在OAuth2 2.0.7.RELEASE中请求多个作用域,我如何做到这一点?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-22 05:48:34

我找到了正确的方法。与逗号分隔的作用域不同,您必须使用+来分隔作用域。

例:read+writewrite+trust

因此,下面的POST请求运行良好。

secret=secret&scope=read+write&username=user@abc.com&password=temp123

希望能对其他人有所帮助:)

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31547822

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档