3.3. 外部ユーザーの OAuth2 トークン作成の管理
Red Hat Ansible Automation Platform は、LDAP、SAML、SSO などの外部プロバイダーを通じて認証されたユーザーが、プログラムによる API アクセス用の OAuth2 トークンを作成することを禁止するセキュリティー初期設定に基づいて設計されています。外部ユーザーがこのようなトークンを生成しようとすると、403: Forbidden' error with the message: '(access_denied) OAuth2 Tokens cannot be created by users associated with an external authentication provider というメッセージが表示されます。
このデフォルトの動作は意図的なセキュリティー対策です。Ansible Automation Platform は、トークン生成を一元的に管理することを重視しています。そのため、外部認証プロバイダーの OAuth 2.0 ユーザートークン生成を有効にする適切な方法を管理者が選択する形になっています。
重要なのは、OAuth2 トークンは Ansible Automation Platform 内で作成され、Ansible Automation Platform 自体がその有効期限を含むライフサイクルを管理する点です。このライフサイクルは、ユーザーの外部アイデンティティープロバイダー (IdP) とのセッションから独立しています。たとえば、ユーザーが Ansible Automation Platform トークンを生成し、その後そのアカウントが外部 IdP で無効になっても、Ansible Automation Platform のトークンは、有効期限が切れるか手動で取り消されるまで有効なままです。この相互関係を認識しておくことが、セキュアな設定を維持するうえで極めて重要です。この認識により、外部ユーザーによるトークン作成を有効にする場合は、補完的な対策が必要であることが明白になるためです。
3.3.1. 外部ユーザーの OAuth2 トークン作成の有効化 リンクのコピーリンクがクリップボードにコピーされました!
外部ユーザーが OAuth2 トークンを作成できるようにするには、Ansible Automation Platform 環境で適切な設定を変更します。この設定を有効にしたら、補完的なセキュリティー対策を必ず実装してください。
手順
-
ナビゲーションパネルから、
に移動します。 - 設定をクリックします。
- Allow external users to create OAuth2 tokens 設定を Enabled に変更します。
- をクリックします。
次のステップ
外部ユーザー OAuth2 トークン用のセキュリティー対策の実装 の説明に従って、推奨されるセキュリティー対策を実装します。
3.3.2. 外部ユーザー OAuth2 トークン用のセキュリティー対策の実装 リンクのコピーリンクがクリップボードにコピーされました!
外部ユーザーに対して OAuth2 トークンの作成を有効にしたら、強力なセキュリティー体制を維持するために、次の補完的な対策を実装します。
手順
トークンの有効期間を制限する: OAuth2 トークンの有効期間を短く設定して、公開される期間を短縮します。
-
Ansible Automation Platform の設定で、
OAUTH2_ACCESS_TOKEN_EXPIRE_SECONDSの値を調整します。値を 28800 (8 時間) にすることを推奨します。これにより、トークンの有効期間が標準的な 1 日の就業時間に制限されます。
-
Ansible Automation Platform の設定で、
厳格なロールベースのアクセス制御 (RBAC) を適用する: ユーザーに必要最小限の権限のみを付与します。
- トークンを作成するユーザーを、制限の厳しいロールを持つ Teams に割り当てます。特権昇格につながる可能性のある広範な権限を付与することは避けてください。
- 明確なオフボーディングプロセスを確立する: トークンの取り消しを組織のオフボーディング手順に組み込みます。HR および IT のオフボーディングプロセスに、退職するユーザーのすべてのアクティブなトークンを Ansible Automation Platform 管理者が取り消す手順が組み込まれている必要があります。トークンは、Tokens タブのユーザープロファイルから手動で取り消すことができます。
- 監査と監視: Activity Stream でトークン関連のアクティビティーの正当性を定期的に確認します。