如何通过admin api去设置服务的权限

如何使用admin api 对某个特定服务赋予某角色权限
已邀请:

江民彬

赞同来自:

【解决办法】:
admin api中,给某个服务赋予权限,通过permissions/add 操作进行,参考如下链接:

http://resources.arcgis.com/en ... 0000/

该操作有两个参数:principal和isAllowed的参数,其中principal指定角色,而isAllowed是否允许该角色访问或者不访问该服务。

但是在实际情况中,用户对public的服务使用该操作,对某个角色添加权限。虽然设置isAllowed=true,却不能对该服务添加权限。原因是因为server有个内置的角色esriEveryone,当public的时候,该角色的isAllowed=true,其覆盖了其他角色的isAllowed权限。所以,对public的服务设置某个角色访问的时候,正确的流程是:

1. 禁用everyone的访问权限,执行permissions/add 操作,参数为principal=esriEveryone, isAllowed=false。

2. 赋予某个角色的访问权限。再次执行permissions/add 操作,此时isAllowed=true

要回复问题请先登录注册