Sidebar

Zabbix Summit 2022
Register for Zabbix Summit 2022

role.update

説明

object role.update(object/array roles)

このメソッドで、既存の役割を更新できます。

このメソッドはSuper adminユーザータイプでのみ使用できます。 メソッドを呼び出す権限は、ユーザーロール設定で取り消すことができます。 詳細についてはユーザーの役割を参照してください。

パラメータ

(object/array) 更新されるロールプロパティ

roleidプロパティはロールごとに定義する必要があり、すべてのプロパティはオプションです。 渡されたプロパティのみが更新され、他のプロパティは変更されません。

このメソッドは標準のロールプロパティに加えて、次のパラメーターを受け入れます。

パラメータ タイプ 説明
rules array ロールに割り当てられている現在のアクセスルールを置き換えるアクセスルール

戻り値

(object) roleidsプロパティの下で更新されたロールのIDを含むオブジェクトを返します。

スクリプトを実行する機能を無効にする

ID"5"でロールを更新し、スクリプトを実行する機能を無効にします。

Request:

{
           "jsonrpc": "2.0",
           "method": "role.update",
           "params": [
               {
                   "roleid": "5",
                   "rules": {
                       "actions": [
                           {
                               "name": "execute_scripts",
                               "status": "0"
                           }
                       ]
                   }
               }
           ],
           "auth": "3a57200802b24cda67c4e4010b50c065",
           "id": 1
       }

Response:

{
           "jsonrpc": "2.0",
           "result": {
               "roleids": [
                   "5"
               ]
           },
           "id": 1
       }

APIへのアクセスを制限する

IDが"5"のロールを更新し、"create","update","delete"メソッドの呼び出しを拒否します。

Request:

{
           "jsonrpc": "2.0",
           "method": "role.update",
           "params": [
               {
                   "roleid": "5",
                   "rules": {
                       "api.access": "1",
                       "api.mode": "0",
                       "api": ["*.create", "*.update", "*.delete"]
                   }
               }
           ],
           "auth": "3a57200802b24cda67c4e4010b50c065",
           "id": 1
       }

Response:

{
           "jsonrpc": "2.0",
           "result": {
               "roleids": [
                   "5"
               ]
           },
           "id": 1
       }

ソース

CRole::update() in ui/include/classes/api/services/CRole.php.