3.3. Red Hat Single Sign-On
MTA は、ユーザーの認証と認可に Red Hat Single Sign-On (RHSSO) インスタンスを使用します。
MTA Operator は RHSSO インスタンスを管理し、必要なロールと権限を持つ専用の レルム を設定します。
MTA 管理の RHSSO インスタンスを使用すると ユーザーフェデレーションのプロバイダーの追加 や アイデンティティープロバイダーの統合 など、高度な RHSSO 設定を実行できます。RHSSO 管理コンソール にアクセスするには、<route> を MTA Web コンソールのアドレスに置き換えて、ブラウザーに URL https://<_route_>/auth/admin を入力します。
以下に例を示します。
- MTA Web コンソール: https://mta-openshiftmta.example.com/
- RHSSO 管理コンソール: https://mta-openshiftmta.example.com/auth/admin
RHSSO の管理者認証情報は、MTA がインストールされている名前空間内の credential-mta-rhsso
という名前の秘密ファイルに保存されます。
管理者の認証情報を取得するには、次のコマンドを実行します。
oc get secret credential-mta-rhsso -o yaml
RHSSO インスタンス専用のルートを作成するには、MTA の Tackle カスタムリソース (CR) で rhsso_external_access
パラメーターを true
に設定します。
リソースにはマルチユーザーアクセス制限がありません。たとえば、ユーザーが作成したアナライザータスクは、その他のユーザーがキャンセルできます。
3.3.1. ロール、ペルソナ、ユーザー、権限
MTA は 3 つのロールを使用します。それぞれ 1 つのペルソナに対応しています。
ロール | ペルソナ |
---|---|
| 管理者 |
| アーキテクト |
| 移行担当者 |
ロールは RHSSO インスタンスですでに定義されています。作成する必要はありません。
MTA 管理者の場合は、RHSSO にユーザーを作成し、各ユーザーに 1 つ以上のロール (ペルソナごとに 1 つのロール) を割り当てることができます。
3.3.1.1. ロール、ペルソナ、ユーザーインターフェイスビューへのアクセス
ユーザーは複数のロールを持つことができますが、各ロールは特定のペルソナに対応しています。
-
管理者: 管理者は、アーキテクトや移行担当者が持つすべての権限を持っています。さらに、他のユーザーが使用できるが変更や表示はできないアプリケーション全体の設定パラメーターを作成する権限も持っています。例: Git 認証情報、Maven の
settings.xml
ファイル。 - アーキテクト: 移行プロジェクトの技術責任者です。評価を実行し、アプリケーションとそれに関連する情報を作成および変更できます。アーキテクトは機密情報を変更または削除することはできませんが、使用することはできます。例: 既存の認証情報を特定のアプリケーションのリポジトリーに関連付ける。
- 移行担当者: アプリケーションを分析することはできますが、作成、変更、削除はできないユーザーです。
ユーザーインターフェイスビュー の説明のとおり、MTA には Administration と Migration の 2 つのビューがあります。
Administration ビューにアクセスできるのは管理者だけです。アーキテクトと移行担当者は、Administration ビューにアクセスできず、表示することもできません。
管理者は、Migration ビューでサポートされているすべての操作を実行できます。アーキテクトおよび移行担当者は、Migration ビューのすべての要素を表示できます。ただし、Migration ビューで操作を実行できるかどうかは、各ロールに付与されている権限によって異なります。
MTA ユーザーインターフェイスの Administration ビューと Migration ビューに対する管理者、アーキテクト、移行担当者のアクセス権限を、次の表にまとめます。
メニュー | アーキテクト | 移行担当者 | 管理者 |
---|---|---|---|
Administration | いいえ | いいえ | はい |
移行 | はい | はい | はい |
3.3.1.2. ロールと権限
次の表には、MTA が管理対象の RHSSO インスタンスにシードするロールと権限 (スコープ) を示します。
tackle-admin | リソース名 | 動詞 |
addons |
delete | |
adoptionplans |
post | |
applications |
delete | |
applications.facts |
delete | |
applications.tags |
delete | |
applications.bucket |
delete | |
assessments |
delete | |
businessservices |
delete | |
dependencies |
delete | |
identities |
delete | |
imports |
delete | |
jobfunctions |
delete | |
proxies |
delete | |
reviews |
delete | |
settings |
delete | |
stakeholdergroups |
delete | |
stakeholders |
delete | |
tags |
delete | |
tagtypes |
delete | |
tasks |
delete | |
tasks.bucket |
delete | |
tickets |
delete | |
trackers |
delete | |
cache |
delete | |
files |
delete | |
rulebundles |
delete |
tackle-architect | リソース名 | 動詞 |
addons |
delete | |
applications.bucket |
delete | |
adoptionplans |
post | |
applications |
delete | |
applications.facts |
delete | |
applications.tags |
delete | |
assessments |
delete | |
businessservices |
delete | |
dependencies |
delete | |
identities |
get | |
imports |
delete | |
jobfunctions |
delete | |
proxies |
get | |
reviews |
delete | |
settings |
get | |
stakeholdergroups |
delete | |
stakeholders |
delete | |
tags |
delete | |
tagtypes |
delete | |
tasks |
delete | |
tasks.bucket |
delete | |
trackers |
get | |
tickets |
delete | |
cache |
get | |
files |
delete | |
rulebundles |
delete |
tackle-migrator | リソース名 | 動詞 |
addons |
get | |
adoptionplans |
post | |
applications |
get | |
applications.facts |
get | |
applications.tags |
get | |
applications.bucket |
get | |
assessments |
get | |
businessservices |
get | |
dependencies |
delete | |
identities |
get | |
imports |
get | |
jobfunctions |
get | |
proxies |
get | |
reviews |
get | |
settings |
get | |
stakeholdergroups |
get | |
stakeholders |
get | |
tags |
get | |
tagtypes |
get | |
tasks |
delete | |
tasks.bucket |
delete | |
tackers |
get | |
tickets |
get | |
cache |
get | |
files |
get | |
rulebundles |
get |