第4章 Ansible Automation Platform Central Authentication へのアイデンティティーブローカーの追加
Ansible Automation Platform Central Authentication は、ソーシャルプロバイダーとプロトコルベースのプロバイダーの両方をサポートします。アイデンティティーブローカーを Central Authentication に追加してレルムのソーシャル認証を有効化でき、ユーザーは Google、Facebook、GitHub などの既存のソーシャルネットワークアカウントを使用してログインできます。
サポート対象のソーシャルネットワークの一覧と、そのネットワークの有効化の詳細は、本セクション を参照してください。
プロトコルベースのプロバイダーは、ユーザーの認証および承認に特定のプロトコルに依存するものです。これにより、特定のプロトコルに準拠するアイデンティティープロバイダーに接続できます。Ansible Automation Platform Central Authentication は、SAML v2.0 プロトコルおよび OpenID Connect v1.0 プロトコルをサポートします。
手順
- Ansible Automation Platform Central Authentication に管理ユーザーとしてログインします。
- ナビゲーションバーの Configure セクションで、Identity Providers をクリックします。
- Add provider というドロップダウンメニューを使用して、アイデンティティープロバイダーを選択し、アイデンティティープロバイダー設定ページに進みます。
以下の表は、アイデンティティープロバイダー設定で使用できるオプションの一覧です。
表4.1 Identity Broker 設定オプション
| 設定オプション | 説明 |
| エイリアス |
エイリアスはアイデンティティープロバイダーの一意の ID です。これはアイデンティティープロバイダーを内部で参照するために使用されます。 |
| 有効 | プロバイダーのオン/オフを切り替えます。 |
| Hide on Login Page |
有効にすると、このプロバイダーは、ログインページにログインオプションとして表示されません。クライアントは、ログインの要求に使用する URL の |
| Account Linking Only | これが有効な場合は、このプロバイダーを使用したユーザーのログインはできず、ログインページのオプションとしては表示されません。既存のアカウントをこのプロバイダーにリンクできます。 |
| Store Tokens | アイデンティティープロバイダーから受け取ったトークンを保存するかどうか。 |
| 保存されたトークンの読み取り可能 | ユーザーが保存されたアイデンティティープロバイダートークンを取得できるかどうか。これは、broker クライアントレベルのロール read token にも適用されます。 |
| Trust Email | アイデンティティープロバイダーが提供するメールアドレスが信頼されているかどうか。レルムにメール検証が必要な場合、この IDP からログインするユーザーはメールの検証プロセスを行う必要はありません。 |
| GUI Order | ログインページに、利用可能な IDP がどのように表示されているかを並べ替える注文番号。 |
| First Login Flow | 初めてこの IDP を使用して Central Authentication にログインするユーザーに対してトリガーされる認証フローを選択します。 |
| Post Login Flow | ユーザーが外部アイデンティティープロバイダーでのログインを終了するとトリガーされる認証フローを選択します。 |
4.1. Ansible Automation Platform Central Authentication を使用したグループパーミッションの管理
特定のパーミッションをロールにグループ化し、それらのロールをグループに割り当てることで、Ansible Automation Platform でユーザーアクセスを管理できます。Ansible Automation Platform に初めてログインすると、Users、Groups、および Roles が Automation Hub のユーザーアクセスページに表示され、各グループにユーザーアクセスとロールを割り当てることができます。
Automation Hub には、発生する可能性のあるユースケースと互換性のある管理ロールのセットが含まれています。独自の管理ロールのセットを作成するか、User Access ページの Roles セクションにある事前定義済みロールを使用できます。
4.1.1. パーミッションのロールへのグループ化
システム内の機能への特定のユーザーアクセスを持つロールにパーミッションをグループ化できます。
前提条件
-
hubadminユーザーとしてログインしている。
手順
- ローカルの Automation Hub にログインします。
- User Access ドロップダウンメニューに移動します。
- Roles をクリックします。
- Add roles をクリックします。
- Name フィールドにロール名を入力します。
- Description フィールドにロールの説明を入力します。
- 各 Permissions タイプの横にあるドロップダウンメニューをクリックし、そのロールに適切なパーミッションを選択します。
- Save をクリックします。
特定のパーミッションで新しいロールを作成している。これで、このロールをグループに割り当てることができます。
4.1.1.1. グループへのロールの割り当て
Groups メニューと Namespaces メニューの両方から、グループにロールを割り当て、ユーザーがシステムの特定の機能にアクセスできるようにします。Groups メニューからグループに割り当てられたロールにはグローバルスコープがあります。たとえば、ユーザーに namespace 所有者ロールが割り当てられている場合、そのパーミッションはすべての namespace に適用されます。ただし、Namespaces メニューからグループに割り当てられたロールは、オブジェクトの特定のインスタンスにのみユーザーにアクセスを付与します。
前提条件
-
hubadminユーザーとしてログインしている。
手順
Groups メニューからのロールの割り当て
- ローカルの Automation Hub にログインします。
- User Access ドロップダウンメニューに移動します。
- Groups をクリックし、グループ名を選択します。
- Add roles をクリックします。
- 追加するロールの横にあるチェックボックスをクリックします。
- Next をクリックして、グループに適用されるロールをプレビューします。
- Add をクリックして、選択したロールをグループに適用します。
Back をクリックしてロールメニューに戻るか、Cancel をクリックして前のページに戻ります。
手順
Namespaces メニューからのロールの割り当て
- ローカルの Automation Hub にログインします。
- Collections ドロップダウンメニューに移動します。
- My Namespaces タブをクリックし、名前空間を選択します。
- Namespace owners タブをクリックして編集します。
ユーザーは、割り当てられたパーミッションに関連付けられた Automation Hub の機能にアクセスできるようになりました。
4.1.2. Automation Hub のパーミッション
パーミッションは、各グループが特定のオブジェクトに対して実行する一連の定義済みのアクションを提供します。以下のパーミッションに基づいて、グループに必要なアクセスレベルを決定します。
表4.2 パーミッション参照テーブル
| オブジェクト | パーミッション | 説明 |
|---|---|---|
| コレクションの namespace | 名前空間の追加 namespace へのアップロード 名前空間の変更 名前空間の削除 | これらのパーミッションが割り当てられたグループは、名前空間の作成、コレクションのアップロード、または削除を行うことができます。 |
| collections | Ansible リポジトリーコンテンツの変更 コレクションの削除 | このパーミッションが割り当てられたグループは、承認機能を使用してリポジトリー間でコンテンツを移動でき、確定または拒否機能で staging から published または rejected リポジトリーにコンテンツを移動して、コレクションを削除します。 |
| users | ユーザーの表示 ユーザーの削除 ユーザーの追加 ユーザーの変更 | これらのパーミッションが割り当てられたグループは、ユーザー設定の管理および Automation Hub へのアクセスが可能です。 |
| groups | グループの表示 グループの削除 グループの追加 グループの変更 | これらのパーミッションが割り当てられたグループは、グループ設定の管理および Automation Hub へのアクセスが可能です。 |
| コレクションリモート | コレクションリモートの変更 コレクションリモートの表示 | これらの権限を持つグループは、Collections → Repo Management に移動して、リモートリポジトリーを設定できます。 |
| containers | コンテナーの名前空間パーミッションの変更 コンテナーの変更 イメージタグの変更 新規コンテナーの作成 既存コンテナーへのプッシュ コンテナーリポジトリーの削除 | これらのパーミッションが割り当てられたグループは、Automation Hub でコンテナーリポジトリーを管理できます。 |
| リモートレジストリー | リモートレジストリーの追加 リモートレジストリーの変更 リモートレジストリーの削除 | これらのパーミッションが割り当てられたグループは、Automation Hub に追加されたリモートレジストリーを追加、変更、または削除できます。 |
| タスク管理 | タスクの変更 タスクの削除 全タスクの表示 | これらのパーミッションが割り当てられたグループは、Automation Hub の Task Management に追加されたタスクを管理できます。 |