使用REST API创建api需要哪些权限?

问题描述 投票:2回答:1

使用wso2am-2.1.0我们想使用REST服务创建API,例如/api/am/publisher/v0.11/apis

要使用服务来搜索,创建和发布API,访问令牌需要范围apim:api_view apim:api_createapim:api_publish

看到publisher-api.yaml似乎需要完整的管理员角色才能访问这些服务。

我们不喜欢使用服务所使用的主要admin用户冒着使用所有权限和主要是admin用户的用户帐户的危害。

将不同的用户分配给admin角色似乎不起作用,创建的令牌不包含必要的请求范围(对发布者的servicess的子序列调用导致401 Unauthenticated请求)。我错过了什么?

wso2 wso2-am
1个回答
2
投票

它应该工作。我刚刚做了,这是输出。

bhathiya@bhathiya-x1:/data/products/am/resources$ curl -X POST -H "Authorization: Basic YWRtaW46YWRtaW4=" -H "Content-Type: application/json" -d @payload.json https://localhost:9443/client-registration/v0.11/register -k
{"clientId":"ryUqrib4UAiKtbEt8_HxadTcubYa","clientName":"admin_rest_api_publisher","callBackURL":"www.google.lk","clientSecret":"Q1sTqqd175da8fLaESY6z9h5nuca","isSaasApplication":true,"appOwner":"admin","jsonString":"{\"grant_types\":\"password refresh_token\",\"redirect_uris\":\"www.google.lk\",\"client_name\":\"admin_rest_api_publisher\"}"}
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 22:29:11
bhathiya@bhathiya-x1:/data/products/am/resources$ curl -k -d "grant_type=password&username=bhathiya&password=admins&scope=apim:api_view apim:api_create" -u ryUqrib4UAiKtbEt8_HxadTcubYa:Q1sTqqd175da8fLaESY6z9h5nuca https://localhost:8243/token
{"access_token":"1e3f7460-e186-3ded-b4d9-c093e1ceb9df","refresh_token":"be66fe42-2d34-3a34-8576-f7e24388be00","scope":"apim:api_create apim:api_view","token_type":"Bearer","expires_in":3600}

你也可以改变publisher-api.yaml中的角色。

© www.soinside.com 2019 - 2024. All rights reserved.