没有针对非 IBMid 用户的现有权限的输出?

No output for existing permissions on non-IBMid users?

我在 https://softlayer.github.io/python/set_permission/

尝试了示例用户权限脚本

它成功列出了具有 IBMid 的用户的现有用户权限,但如果我尝试使用没有 IBMid 的用户,例如帐户所有者或品牌主帐户,我将无法获得现有权限的输出。这是预期的吗?

示例脚本中列出权限的特定代码部分是:

def main(self, user_id):
    permissions = self.client['User_Customer'].getPermissions(id=user_id)
    print("=== OLD PERMISSIONS ===")
    self.printPermissions(permissions)
    #setperm = {'keyName': "TICKET_ADD"}
    #self.client['User_Customer'].addPortalPermission(setperm, id=user_id)
    #permissions = self.client['User_Customer'].getPermissions(id=user_id)
    #print("=== NEW PERMISSIONS ===")
    #self.printPermissions(permissions)

我对旧的(现有的)权限部分特别感兴趣。我已经在内部开了一个ticket(ticket 57783823),推荐先来这里。感谢您提供的任何帮助。

当您尝试获得主帐户和品牌帐户的权限时,预计会得到空响应,因为这是设计使然。

要让所有用户进入帐户并获得他们的权限,请使用以下其余部分,有了这个休息部分,您将获得所有用户、他们的 child 和权限。

方法: 得到

https://[username]:[apiKey]@api.softlayer.com/rest/v3.1/SoftLayer_Account/getUsers?objectMask=mask[id,parentId,firstName,lastName,permissions,childUsers]

最后,要获得所有可用权限,您可以使用以下其余部分 api:

方法:获取

https://[username]:[apiKey]@api.softlayer.com/rest/v3.1/SoftLayer_User_Customer_CustomerPermission_Permission/getAllObjects