role.get

描述

integer/array role.get(object parameters)

该方法允许根据给定参数检索角色.

该方法适用于所有类型的用户. 调用该方法的权限可以在用户角色设置中撤销. 更多信息请参阅User roles.

参数

(object) 定义期望输出的参数.

该方法支持以下参数.

参数 数据类型 描述
roleids ID/array 仅返回具有指定ID的角色.
selectRules query 返回包含角色规则的rules属性.
selectUsers query 返回包含角色分配用户的users属性.

关于基于用户类型的限制,请参阅user.get.
sortfield string/array 按指定属性排序结果.

可能的值: roleid, name.
countOutput boolean 这些参数在通用get方法参数中有描述.
editable boolean
excludeSearch boolean
filter object
limit integer
output query
preservekeys boolean
search object
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

返回值

(integer/array) 返回以下两种情况之一:

  • 一个包含array的objects数组;
  • 检索到的objects数量,如果使用了countOutput参数。

示例

获取角色数据

获取"超级管理员角色"的角色数据及其访问规则

执行请求:

{  "jsonrpc": "2.0",  "method": "role.get",  "params": {  "output": "extend",  "selectRules": "extend",  "roleids": "3"  },  "id": 1 }

响应:

{  "jsonrpc": "2.0",  "result": [  {  "roleid": "3",  "name": "Super admin role",  "type": "3",  "readonly": "1",  "rules": {  "ui": [  {  "name": "monitoring.dashboard",  "status": "1"  },  {  "name": "monitoring.problems",  "status": "1"  },  {  "name": "monitoring.hosts",  "status": "1"  },  {  "name": "monitoring.latest_data",  "status": "1"  },  {  "name": "monitoring.maps",  "status": "1"  },  {  "name": "services.services",  "status": "1"  },  {  "name": "services.sla_report",  "status": "1"  },  {  "name": "inventory.overview",  "status": "1"  },  {  "name": "inventory.hosts",  "status": "1"  },  {  "name": "reports.availability_report",  "status": "1"  },  {  "name": "reports.top_triggers",  "status": "1"  },  {  "name": "monitoring.discovery",  "status": "1"  },  {  "name": "services.sla",  "status": "1"  },  {  "name": "reports.scheduled_reports",  "status": "1"  },  {  "name": "reports.notifications",  "status": "1"  },  {  "name": "configuration.template_groups",  "status": "1"  },  {  "name": "configuration.host_groups",  "status": "1"  },  {  "name": "configuration.templates",  "status": "1"  },  {  "name": "configuration.hosts",  "status": "1"  },  {  "name": "configuration.maintenance",  "status": "1"  },  {  "name": "configuration.discovery",  "status": "1"  },  {  "name": "configuration.trigger_actions",  "status": "1"  },  {  "name": "configuration.service_actions",  "status": "1"  },  {  "name": "configuration.discovery_actions",  "status": "1"  },  {  "name": "configuration.autoregistration_actions",  "status": "1"  },  {  "name": "configuration.internal_actions",  "status": "1"  },  {  "name": "reports.system_info",  "status": "1"  },  {  "name": "reports.audit",  "status": "1"  },  {  "name": "reports.action_log",  "status": "1"  },  {  "name": "configuration.event_correlation",  "status": "1"  },  {  "name": "administration.media_types",  "status": "1"  },  {  "name": "administration.scripts",  "status": "1"  },  {  "name": "administration.user_groups",  "status": "1"  },  {  "name": "administration.user_roles",  "status": "1"  },  {  "name": "administration.users",  "status": "1"  },  {  "name": "administration.api_tokens",  "status": "1"  },  {  "name": "administration.authentication",  "status": "1"  },  {  "name": "administration.general",  "status": "1"  },  {  "name": "administration.audit_log",  "status": "1"  },  {  "name": "administration.housekeeping",  "status": "1"  },  {  "name": "administration.proxies",  "status": "1"  },  {  "name": "administration.macros",  "status": "1"  },  {  "name": "administration.queue",  "status": "1"  }  ],  "ui.default_access": "1",  "services.read.mode": "1",  "services.read.list": [],  "services.read.tag": {  "tag": "",  "value": ""  },  "services.write.mode": "1",  "services.write.list": [],  "services.write.tag": {  "tag": "",  "value": ""  },  "modules": [],  "modules.default_access": "1",  "api.access": "1",  "api.mode": "0",  "api": [],  "actions": [  {  "name": "edit_dashboards",  "status": "1"  },  {  "name": "edit_maps",  "status": "1"  },  {  "name": "acknowledge_problems",  "status": "1"  },  {  "name": "suppress_problems",  "status": "1"  },  {  "name": "close_problems",  "status": "1"  },  {  "name": "change_severity",  "status": "1"  },  {  "name": "add_problem_comments",  "status": "1"  },  {  "name": "execute_scripts",  "status": "1"  },  {  "name": "manage_api_tokens",  "status": "1"  },  {  "name": "edit_maintenance",  "status": "1"  },  {  "name": "manage_scheduled_reports",  "status": "1"  },  {  "name": "manage_sla",  "status": "1"  },  {  "name": "invoke_execute_now",  "status": "1"  },  {  "name": "change_problem_ranking",  "status": "1"  },  {  "name": "edit_own_media",  "status": "1"  },  {  "name": "edit_user_media",  "status": "1"  }  ],  "actions.default_access": "1"  }  }  ],  "id": 1 }

另请参阅

来源

CRole::get() 位于 ui/include/classes/api/services/CRole.php 文件中。