4.3. ロールの作成および管理

Red Hat Satellite では、標準的なタスクに十分なパーミッションを持つ一連の事前定義済みロールが提供されます (表4.1「Red Hat Satellite で利用可能な事前定義済みロール」 を参照)。また、カスタムロールを設定し、1 つ以上のパーミッションフィルターをそれらに割り当てることもできます。パーミッションフィルターでは、特定のリソースタイプに許可されるアクションを定義します。特定の Satellite プラグインによりロールが自動的に作成されます。

表4.1 Red Hat Satellite で利用可能な事前定義済みロール

Role (ロール)ロールで提供されるパーミッション[a]
Anonymous他のロールに関係なく、各ユーザーに与えられる一連のパーミッション。
Discovery manager検出されたホストを表示、プロビジョニング、編集、および破棄し、検出ルールを管理します。
Discovery readerホストと検出ルールを表示します。
Boot disk access起動ディスクをダウンロードします。
Red Hat Access Logsログビューアーとログを表示します。
マネージャ最も広範なパーミッションセット。各リソースタイプからのほとんどのアクションが有効になります。
Edit partition tablesパーティションテーブルを表示、作成、編集、および破棄します。
View hostsホストを表示します。
Edit hostsホストを表示、作成、編集、破棄、および構築します。
ViewerSatellite 構造、ログ、および統計の各要素の設定を表示できる機能を提供する受動的なロール。
Site managerManager ロールの制限バージョン。
Tasks managerSatellite タスクを表示および編集します。
Tasks readerSatellite タスクを表示します。
[a] 事前定義されたロールに関連付けられた一連の許可済みアクションは、「ロールのパーミションの表示」 で説明されているように特権ユーザーが参照できます。

4.3.1. ロールの作成

以下の手順は、ロールを作成する方法を示しています。

手順4.7 ロールの作成:

  1. Administer (管理)Roles (ロール) に移動します。
  2. New Role をクリックします。
  3. ロールの 名前 を入力します。
  4. Submit (送信) をクリックして新規ロールを保存します。
目的を達成するために、ロールにはパーミッションが含まれる必要があります。ロールの作成後は、「ロールへのパーミッションの追加」 に進んでください。

注記

既存のロールをクローンすると、ロール作成の時間を節約できます (特に、既存のパーミッションセットに基づく新しいロールを作成する場合)。ロールをクローンするには、Administer (管理)Roles (ロール) に移動し、コピーするロールの右側にあるドロップダウンリストから Clone (クローン) を選択します。新しいロールの名前を選択し、必要に応じてパーミッションを変更します。

4.3.2. ロールへのパーミッションの追加

以下の手順はパーミッションをロールに追加する方法を示しています。

手順4.8 ロールへのパーミッションの追加:

  1. Administer (管理)Roles (ロール) に移動します。
  2. 必要なロールの右側にあるドロップダウンリストから Add Filter (フィルターの追加) を選択します。
  3. ドロップダウンリストから Resource type (リソースタイプ) を選択します。(Miscellaneous) グループには、どのリソースグループにも関連付けられていないパーミッションが含まれます。
  4. 選択するパーミションを Permission (パーミッション) リストでクリックします。
  5. パーミッションを Unlimited (無制限) にするかどうかを選択します。このオプションはデフォルトで選択されるため、パーミションは選択されたタイプのすべてのリソースに適用されます。Unlimited (無制限) チェックボックスを無効にすると、Search (検索) フィールドがアクティベートされます。このフィールドでは、Red Hat Satellite 6 の検索構文を使用して詳細なフィルタリングを指定できます。詳細については、「詳細なパーミッションフィルタリング」 を参照してください。
  6. Next (次へ) をクリックします。
  7. 送信 (Submit) をクリックして変更を保存します。

4.3.3. ロールのパーミションの表示

以下の手順は、既存のロールに割り当てられたパーミションを表示する方法を示しています。

手順4.9 ロールに関連付けられたパーミッションの表示:

  1. Administer (管理)Roles (ロール) に移動します。
  2. 必要なロールの右側にある Filters (フィルター) をクリックして Filters (フィルター) ページに移動します。
Filters (フィルター) ページには、リソースタイプ別にグループ化されたロールに割り当てられたパーミッションの表が含まれます。また、このページでは、Satellite システムで使用できるパーミッションとアクションの完全な表を生成できます。手順については、手順4.10「パーミッションの完全な表の作成:」 を参照してください。

手順4.10 パーミッションの完全な表の作成:

  1. 必要なパッケージがインストールされていることを確認します。Satellite Server で以下のコマンドを実行します。
    # yum install tfm-rubygem-foreman*
  2. 以下のコマンドで Satellite コンソールを起動します。
    # foreman-rake console
    コンソールに以下のコードを挿入します。
    f = File.open('/tmp/table.html', 'w')
    
    result = Foreman::AccessControl.permissions.sort {|a,b| a.security_block <=> b.security_block}.collect do |p|
          actions = p.actions.collect { |a| "<li>#{a}</li>" }
          "<tr><td>#{p.name}</td><td><ul>#{actions.join('')}</ul></td><td>#{p.resource_type}</td></tr>"
    end.join("\n")
    
    f.write(result)
    上記の構文により、パーミッションの表が作成され、/tmp/table.html ファイルに保存されます。
  3. Ctrl+D を押して、Satellite コンソールを終了します。/tmp/table.html の最初の行に以下のテキストを挿入します。
    <table border="1"><tr><td>Permission name</td><td>Actions</td><td>Resource type</td></tr>
    /tmp/table.html の最後の以下のテキストを追加します。
    </table>
  4. Web ブラウザーで /tmp/table.html を開いて、表を参照します。

4.3.4. ロールの削除

以下の手順は、既存のロールを削除する方法を示しています。

手順4.11 ロールの削除:

  1. Administer (管理)Roles (ロール) に移動します。
  2. 削除するロールの右側にあるドロップダウンリストから Delete (削除) を選択します。
  3. 表示された警告ボックスで、OK をクリックしてロールを削除します。