我正在阅读他们Store API的WSO2 APIM文档。但是,我无法弄清楚如何使用此API进行身份验证。
根据我从本页的理解,我需要通过/ token API获取特殊标记。但是这个例子表明他们提供某种身份验证来获取这个令牌,我无法弄清楚它是哪一个。
所以我想我的问题是: - 如何获取WSO API Manager的新Store API的访问令牌?
答案 0 :(得分:1)
以下是访问权限(Reference)。
1.使用动态客户端注册API
注册您的oauth应用程序curl -X POST -H "Authorization: Basic YWRtaW46YWRtaW4=" -H "Content-Type: application/json" -d @payload.json http://localhost:9763/client-registration/v0.9/register
示例有效负载:
{
"callbackUrl": "www.google.lk",
"clientName": "rest_api_store",
"tokenScope": "Production",
"owner": "admin",
"grantType": "password refresh_token",
"saasApp": true
}
这里它使用基本身份验证。您需要在Authrization标头中提供base 64编码的用户名:password(例如:admin:admin)。
示例回复。
{
"callBackURL": "www.google.lk",
"jsonString":
"{
"username":"admin",
"redirect_uris":"www.google.lk",
"tokenScope":[Ljava.lang.String;@3a73796a,
"client_name":"admin_rest_api_store",
"grant_types":"authorization_code password refresh_token iwa:ntlm
urn:ietf:params:oauth:grant-type:saml2-bearer client_credentialsimplicit"
}",
"clientName": null,
"clientId": "HfEl1jJPdg5tbtrxhAwybN05QGoa",
"clientSecret": "l6c0aoLcWR3fwezHhc7XoGOht5Aa"
}
2.使用令牌API获取oauth访问令牌
curl -k -d "grant_type=password&username=admin&password=admin&scope=apim:subscribe" -H "Authorization: Basic SGZFbDFqSlBkZzV0YnRyeGhBd3liTjA1UUdvYTpsNmMwYW9MY1dSM2Z3ZXpIaGM3WG9HT2h0NUFh" https://127.0.0.1:8243/toke
这里基本的auth参数是base 64编码的clientId:ClientSecret
现在您有一个访问令牌来调用商店API