3 ユーザグループ

概要

ユーザーグループを使用すると、組織上の目的と、データへの権限割り当ての両方のためにユーザーをグループ化できます。ホストグループおよびテンプレートグループのデータの表示と設定に対する権限は、個々のユーザーではなく、ユーザーグループに割り当てられます。

あるユーザーグループには利用可能で、別のユーザーグループには利用できない情報を分けることが、しばしば理にかなっています。これは、ユーザーをグループ化し、その後ホストグループおよびテンプレートグループにさまざまな権限を割り当てることで実現できます。

ユーザーは、任意の数のグループに所属できます。

設定

ユーザーグループを設定するには:

  • Users → User groups に移動する
  • Create user group をクリックする(または、既存のグループを編集するにはグループ名をクリックする)
  • フォームでグループ属性を編集する

User group タブには、グループの一般属性が含まれます:

必須入力フィールドには赤いアスタリスクが付いています。

Parameter Description
Group name 一意のグループ名。
Users グループにユーザーを追加するには、既存ユーザーの名前を入力し始めます。候補のユーザー名が表示されたら、スクロールして選択します。
または、Select ボタンをクリックしてポップアップでユーザーを選択することもできます。
Frontend access グループのユーザーがどのように認証されるか。
System default - デフォルトの認証方式を使用する(全体設定
Internal - Zabbix の内部認証を使用する(全体で LDAP 認証が使用されていても)。
HTTP 認証が全体のデフォルトの場合は無視されます。
LDAP - LDAP 認証を使用する(全体で内部認証が使用されていても)。
HTTP 認証が全体のデフォルトの場合は無視されます。
Disabled - このグループの Zabbix Webインターフェース へのアクセスは禁止されます
LDAP server ユーザー認証に使用する LDAP server を選択します。
このフィールドは、Frontend access が LDAP または System default に設定されている場合にのみ有効です。
Multi-factor authentication ユーザー認証に使用する多要素認証の method を選択します:
Default - MFA 設定でデフォルトとして設定されている method を使用します。MFA が有効な場合、新しいユーザーグループではこのオプションがデフォルトで選択されます。
<Method name> - 選択した method を使用します(例: "Zabbix TOTP")。
Disabled - このグループでは MFA を無効にします。MFA が無効な場合、新しいユーザーグループではこのオプションがデフォルトで選択されます。
ユーザーが MFA 有効の複数のユーザーグループに属している場合(または少なくとも 1 つのグループで MFA が有効な場合)、次の認証ルールが適用されることに注意してください。いずれかのグループが "Default" MFA method を使用している場合、その method でユーザーを認証します。それ以外の場合は、最初の method(アルファベット順)を認証に使用します。
Enabled ユーザーグループとグループメンバーの状態。
Checked - ユーザーグループとユーザーが有効
Unchecked - ユーザーグループとユーザーが無効
Debug mode このチェックボックスをオンにすると、ユーザーに対して debug mode を有効にします。

Template permissions タブでは、ユーザーグループのテンプレートグループ(ひいてはテンプレート)データへのアクセスを指定できます:

Host permissions タブでは、ユーザーグループのホストグループ(ひいてはホスト)データへのアクセスを指定できます:

をクリックしてテンプレート/ホストグループ (親グループでもネストされたグループでも可)を選択し、それらに権限を割り当てます。グループ名の入力を始めると 一致するグループのドロップダウンが表示されます。あるいは、Select をクリックして、すべてのグループを一覧表示するポップアップウィンドウを開きます。

その後、オプションボタンを使用して選択したグループに権限を割り当てます。指定可能な権限は次のとおりです:

  • Read-write - グループへの読み書きアクセス;
  • Read - グループへの読み取り専用アクセス;
  • Deny - グループへのアクセスを拒否。

同じテンプレート/ホストグループが異なる権限で複数行に追加されている場合、最も厳しい権限が適用されます。

Super admin ユーザーは、ネストされたグループに親グループと同じ権限レベルを強制できます。これは host/template グループ設定フォームで行えます。

Template permissionsHost permissions タブは、同じパラメーターセットをサポートします。

グループに対する現在の権限は Permissions ブロックに表示され、変更または削除できます。

ユーザーグループがホストに対して Read-write 権限を持ち、そのホストにリンクされたテンプレートに対して Deny または権限なしの場合、 そのグループのユーザーはホスト上のテンプレート化されたアイテムを編集できず、テンプレート名は Inaccessible template と表示されます。

Problem tag filter タブでは、タグ名と値でフィルタリングされた障害を表示するための、タグベースのユーザーグループ権限を設定できます:

をクリックしてホストグループを選択します。 タグフィルターを適用するホストグループを選択するには、Select をクリックして既存のホストグループの完全な一覧を表示するか、ホストグループ名の入力を始めて一致するグループのドロップダウンを表示します。テンプレートグループには適用できないため、表示されるのはホストグループのみです。

その後、All tags から Tag list に切り替えて、フィルタリング対象の特定のタグとその値を設定できます。 値のないタグ名は追加できますが、名前のない値は追加できません。最初の 3 つのタグ(値がある場合はその値も含む)のみが Permissions ブロックに表示されます。それ以上ある場合は、 アイコンをクリックまたはホバーすると確認できます。

タグフィルターを使用すると、ホストグループへのアクセスと障害を表示できるかどうかを分離できます。

たとえば、データベース管理者が "MySQL" データベースの障害だけを確認する必要がある場合、まずデータベース管理者用のユーザーグループを作成し、次に "target" というタグ名と "mysql" という値を指定します。

"target" というタグ名が指定され、値フィールドが空欄の場合、ユーザーグループは選択したホストグループに対する tag name "target" のすべての障害を表示できます。 All tags が選択されている場合、ユーザーグループは指定したホストグループのすべての障害を表示できます。

タグ名とタグ値が 正しく指定されていることを確認してください。そうでない場合、ユーザーグループは いかなる障害も表示できません。

ユーザーが複数の選択されたユーザーグループのメンバーである場合の例を見てみましょう。この場合、フィルタリングではタグに OR 条件が使用されます。

User group A User group B Visible result for a user (member) of both groups
Tag filter
Host group Tag name Tag value Host group Tag name Tag value
Databases target mysql Databases target oracle target:mysql or target:oracle problems visible
Databases set to: All tags Databases target oracle All problems visible
Not configured in the Problem tag filter Databases target oracle target:oracle problems visible

フィルターを追加すると(たとえば、ある ホストグループ "Databases" のすべてのタグを対象にする場合)、他のホストグループの 障害は表示できなくなります。

複数のユーザーグループからのアクセス

ユーザーは任意の数のユーザーグループに所属できます。これらのグループは、ホストまたはテンプレートに対して異なるアクセス権限を持つ場合があります。

そのため、結果として権限のないユーザーがどのエンティティにアクセスできるようになるのかを把握することが重要です。次の例では、ユーザーグループ A と B に所属するユーザーについて、ホスト X(Hostgroup 1 内)へのアクセスがさまざまな状況でどのように影響を受けるかを考えます。

  • Group A が Hostgroup 1 に対して Read アクセスのみを持ち、Group B が Hostgroup 1 に対して Read-write アクセスを持つ場合、ユーザーは 'X' に対して Read-write アクセスを取得します。

"Read-write" 権限は "Read" 権限よりも優先されます。

  • 上記と同じシナリオで、'X' が同時に Hostgroup 2 にも属しており、その Hostgroup 2 が Group A または B に対して 拒否 されている場合、Hostgroup 1 に対して Read-write アクセスがあっても、'X' へのアクセスは 利用不可 になります。
  • Group A に権限が定義されておらず、Group B が Hostgroup 1 に対して Read-write アクセスを持つ場合、ユーザーは 'X' に対して Read-write アクセスを取得します。
  • Group A が Hostgroup 1 に対して Deny アクセスを持ち、Group B が Hostgroup 1 に対して Read-write アクセスを持つ場合、ユーザーの 'X' へのアクセスは 拒否 されます。

その他の詳細

  • Admin レベルのユーザーがホストに対して Read-write アクセス権を持っていても、所属するテンプレートグループへのアクセス権がない場合は、テンプレートをリンク/リンク解除できません。テンプレートグループに対して Read アクセス権があれば、ホストに対してテンプレートをリンク/リンク解除できますが、テンプレート一覧にはテンプレートは表示されず、他の場所でもテンプレートを操作できません。
  • Admin レベルのユーザーがホストに対して Read アクセス権を持っている場合、設定セクションのホスト一覧にはそのホストは表示されません。ただし、ホストのトリガーは IT サービス設定で利用できます。
  • Super Admin 以外のユーザー('guest' を含む)は、マップが空であるか、画像のみを含む場合に限り、ネットワークマップを表示できます。マップにホスト、ホストグループ、またはトリガーが追加されると、権限が適用されます。
  • Zabbix サーバーは、対象ホストへのアクセスが明示的に "denied" されている場合、アクションのオペレーション受信者として定義されたユーザーに通知を送信しません。