我正在尝试根据可用的文档将标准网关角色分配给网关设备 https://docs.internetofthings.ibmcloud.com/apis/swagger/v0002-beta/security-gateway-beta.html#!/Limited_Gateway/put_authorization_devices_deviceId_roles
但我不断收到 403 Forbidden 错误。我正在使用具有“操作应用程序”角色并因此具有分配角色的权限的应用程序凭据(api 密钥和令牌)。
这里有几个运行的脚本,我用虚拟值替换了 org、type、id 和 token
curl -X PUT \
https://dummyorg.internetofthings.ibmcloud.com:443/api/v0002/authorization/devices/g%3Adummyorg%3Adummytype%3Adummyid/roles \
-H 'authorization: Basic dummyauth' \
-H 'content-type: application/json' \
-d '{
"roles": [
{
"roleId": "PD_STANDARD_GW_DEVICE",
"roleStatus": 1
}
]
}'
响应 HTTP 403 被禁止
当我尝试获得设备的角色时,它工作正常
curl -X GET \
https://dummyorg.internetofthings.ibmcloud.com:443/api/v0002/authorization/devices/g%3Adummyorg%3Adummytype%3Adummyid/roles \
-H 'authorization: Basic dummyauth' \
回复
{
"results": [
{
"roleId": "PD_PRIVILEGED_GW_DEVICE",
"roleStatus": 1
}
],
"rolesToGroups": {}
}