wso2 API-M 3.0 - 如何为 product/admin api 调用获取 oauth 令牌
wso2 API-M 3.0 - how to get oauth token for product/admin api calls
我正在使用通用 admin/admin 凭据测试 wso2 API-M 的预发布版本 3.0,并希望在 [=13] 调用各种发布者 apis =] - 例如创建一个新的 api。
所有这些 api 都采用 oauth 访问令牌,但是在他们的文档中我只看到了他们的 oauth2 范围,但我没有看到如何生成访问令牌以传递 api请求。
很清楚如何为 apis 和已经在 wso2 store/publisher 中创建的应用程序生成 oauth 令牌,但我一直没能找到如何为更高级别的产品生成 oauth 令牌 apis 在 https://docs.wso2.com/display/AM300/Product+APIs。
我知道 wso2 的早期版本有 "carbon" 端点与管理和身份服务器 UI 这可能有助于解决这个问题,但这个新版本没有那个端点和 "admin" 我偶然发现的端点不会产生与 oauth 令牌相关的任何内容。关于如何获取 oauth 凭据以调用这些 api 的任何想法?谢谢。
您需要执行以下操作。
使用 DCR 端点,创建一个 oauth 应用程序并生成客户端密钥和密码。
curl -X POST -H "Content-Type: application/json" -H "Authorization: Basic YWRtaW46YWRtaW4=" --data @payload.json https://localhost:9443/api/identity/oauth2/dcr/v1.0/register -kv
payload.json内容
{
"redirect_uris": [
"http://localhost"
],
"client_name": "name_1",
"grant_types": [
"password"
]
}
授权令牌是 Base64 编码的(用户名:密码)
使用密码授予类型获取访问令牌
curl -X POST -H "Authorization: Basic MTNiYmM1ODAtYjkwYy00ZDg0LWE5NjItYjg4NTg2Yzk1MmEyOjYxZGE1M2YwLTkxN2MtNDhmNi1hYWEzLWVmMDU3NjEzMDdiMw==" -H "Content-Type: application/x-www-form-urlencoded" -d 'username=admin&password=admin' "https://localhost:9443/api/auth/oauth2/v1.0/token?grant_type=password&scope=scope" -kv
授权令牌是 Base64 编码的(clientId:clientSecret)
使用收到的令牌
调用 API
curl -X GET -H "Authorization: Bearer 9uAXi-J5GywvdTupCjbg005-NdqDSfD397vI_UKcbaw" "https://localhost:9443/api/am/publisher/v1.0/apis/" -kv
详情请参考以下内容
我正在使用通用 admin/admin 凭据测试 wso2 API-M 的预发布版本 3.0,并希望在 [=13] 调用各种发布者 apis =] - 例如创建一个新的 api。
所有这些 api 都采用 oauth 访问令牌,但是在他们的文档中我只看到了他们的 oauth2 范围,但我没有看到如何生成访问令牌以传递 api请求。
很清楚如何为 apis 和已经在 wso2 store/publisher 中创建的应用程序生成 oauth 令牌,但我一直没能找到如何为更高级别的产品生成 oauth 令牌 apis 在 https://docs.wso2.com/display/AM300/Product+APIs。
我知道 wso2 的早期版本有 "carbon" 端点与管理和身份服务器 UI 这可能有助于解决这个问题,但这个新版本没有那个端点和 "admin" 我偶然发现的端点不会产生与 oauth 令牌相关的任何内容。关于如何获取 oauth 凭据以调用这些 api 的任何想法?谢谢。
您需要执行以下操作。
使用 DCR 端点,创建一个 oauth 应用程序并生成客户端密钥和密码。
curl -X POST -H "Content-Type: application/json" -H "Authorization: Basic YWRtaW46YWRtaW4=" --data @payload.json https://localhost:9443/api/identity/oauth2/dcr/v1.0/register -kv
payload.json内容
{
"redirect_uris": [
"http://localhost"
],
"client_name": "name_1",
"grant_types": [
"password"
]
}
授权令牌是 Base64 编码的(用户名:密码)
使用密码授予类型获取访问令牌
curl -X POST -H "Authorization: Basic MTNiYmM1ODAtYjkwYy00ZDg0LWE5NjItYjg4NTg2Yzk1MmEyOjYxZGE1M2YwLTkxN2MtNDhmNi1hYWEzLWVmMDU3NjEzMDdiMw==" -H "Content-Type: application/x-www-form-urlencoded" -d 'username=admin&password=admin' "https://localhost:9443/api/auth/oauth2/v1.0/token?grant_type=password&scope=scope" -kv
授权令牌是 Base64 编码的(clientId:clientSecret)
使用收到的令牌
调用 APIcurl -X GET -H "Authorization: Bearer 9uAXi-J5GywvdTupCjbg005-NdqDSfD397vI_UKcbaw" "https://localhost:9443/api/am/publisher/v1.0/apis/" -kv
详情请参考以下内容