我向WSO2-AM发出请求,让OAuth令牌代表用户访问api中发布的API。所有东西都在使用access_token中返回的大字符串,但是我想使用短的一个版本,可能是编码的。
请求:
curl -X POST -H 'Content-Type:application/x-www-form-urlencoded' -u
<consumer-key>:<consumer-secret> -k -d
'grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&assertion=<id_token>'
https://<apim>:8243/token响应:
{"access_token":"eyJ4NXQiOiJNell4TW1Ga09HWXdNV0kwWldObU5EY3hOR1l3WW1NNFpUQTNNV0kyTkRBe
lpHUXpOR00wWkdSbE5qSmtPREZrWkRSaU9URmtNV0ZoTXpVMlpHVmxOZyIsImtpZCI6Ik16WXhNbUZrT0dZd01XSTBaV05
tTkRjeE5HWXd....bZ-CD_r-2qkypeER7f8QMrLpozRipgHeCkpIKXx5PzSM6zBq5VjMW4EXSRg7LSu0JAJfD2UD6H4bqAiZPNiGy9vTLXc
Zr4g8WNzfKkr...
-hiAOt4SauSZxB1WWCFEZ0xyHVhbx7nAFzBVzfssF0DOYGXkc9hRJZGbG8VfiXb6PWtSfEjqJTSSY_aZWXw",
"refresh_token":"d3062fa0-1132-3532-b1b2-83c3c66136ff","token_type":"Bearer","expires_in":3600}预期:
{"access_token":"400f2a54-53d8-3146-88e3-be1bf5e7450d",
"refresh_token":"c2656286-449f-369f-9793 2cee9132de9f",
"scope":"default","token_type":"Bearer","expires_in":3600}我做错了什么那就是不把短的还回去?
发布于 2021-04-12 19:28:53
我假设,您期望的access_token是不透明(引用)访问令牌,在这个WSO2 APIManager3.1.0文档:使用OAuth2不透明(引用)访问令牌的安全API中进行了描述。但是,根据发行说明的说法,从WSO2 API管理器3.2.0中,他们删除了这种访问令牌:
已经删除了通过Developer生成不透明访问令牌的开箱即用支持。应用程序开发人员可以创建只生成JWT类型访问令牌的应用程序。
因此,您得到的大字符串没有别的,就像这个JWT令牌,在这里的文档:JWT (自包含)访问令牌中描述过,您可以在jwt.io站点上对它进行解码。
发布于 2021-04-13 02:21:25
https://stackoverflow.com/questions/67063444
复制相似问题