Oktaでグループベースのロール・マッピングを有効にする
Amazon Web Services(AWS)のロールと管理グループをOktaにインポートした後は、AWSのロールグループのメンバーシップをAWSが構文的に理解できるエンタイトルメントに変換するように、Okta AWSアプリを構成する必要があります。
-
管理コンソールで、[アプリケーション] > に移動します。 [アプリケーション]
-
[検索]フィールドにAWSと入力します。
- [AWSアカウント・フェデレーション]をクリックし、[サインオン]タブをクリックします。
- [設定]セクションの[編集]をクリックします。
- [高度なサインオン設定]エリアで、まだ選択されていない場合は、[グループ・マッピングを使用]チェック・ボックスを選択します。
-
以下のフィールドに入力します。
- [アプリ・フィルター]:AWSエンタイトルメント・マッピング用のアプリのコンマ区切りリストを入力します。このフィールドにより追加のセキュリティーが提供され、不正な管理者が特定のAWSのアカウントまたはロールに意図的に不正アクセスするために、特定の構文に従ってグループを作成する問題を回避できます。Active Directoryでグループを作成した場合は、
active_directory
と入力します。または、okta
と入力して、ローカルのOktaグループに使用を制限します。他のアプリケーションの場合は、Bamboo HRアプリにはbamboohr
、Okta + Egnyteのグループにはokta
,egnyte
などの値を使用できます。 - [グループ・フィルター]:正規表現式を入力して、AWS関連グループをフィルタリングし、アカウントIDとロールを抽出します。デフォルトのAWSロール・グループの構文(
aws#[account alias]#[role name]#[account #]
)を使用する場合、次の正規表現文字列を使用できます。 - [ロール値パターン]:このフィールドでは、AWSロール・グループの構文内で取得されたAWSロールとアカウントIDが取得され、AWSでOkta SAMLアサーションに必要となる適切な構文に変換されます。これにより、ユーザーはサインイン時に自分のアカウントとロールを表示できます。
- 下にスクロールして、[保存]をクリックします。
^aws\#\S+\#(?{{role}}[\w\-]+)\#(?{{accountid}}\d+)$
この正規表現式は、論理的には、AWSで始まり、次に#、次にテキストの文字列、次に#、次にAWSロール、次に#、次にAWSアカウントIDがあるグループを検索することに相当します。
次の正規表現式を使用することもできます。
aws_(?{{accountid}}\d+)_(?{{role}}[a-zA-Z0-9+=,.@\-_]+)
デフォルトの正規表現式を使用しない場合は、AWSロール・グループを適切にフィルタリングし、{{role}}および{{accountid}}という名前の2つの異なる正規表現グループ内にAWSロール名とアカウントIDを取得する正規表現式を作成します。
フィールドの構文:
arn:aws:iam::${accountid}:saml-provider/[SAML Provider Name],
arn:aws:iam::${accountid}:role/${role}
[SAML Provider Name]は、AWSアカウントのSAMLプロバイダーの名前に置き換えます( Oktaでグループベースのロール・マッピングを有効にするを参照)。文字列の残りの部分は変更せず、コピーして貼り付けるだけです。