本記事では、OneLogin から AWS アカウントへ、複数のロールを対象とするSAML シングルサインオン(SSO)の設定手順をご案内します。
目次
前提条件
- OneLoginのライセンスプラン が Professional または旧ライセンスプラン Unlimited のいずれかであること
- OneLoginの Super User または Account Owner 権限を持つアカウントを所有していること
- Amazon Web Servicesにおけるルートユーザー権限をお持ちであること
SAML連携の設定
1. OneLogin側の操作
- OneLoginに管理者でログインし、[管理]をクリックします
-
Applications メニューから[Applications]を選択します
- [Add App]をクリックします
-
Amazon Web Services (AWS) Multi Role と検索し、該当コネクタを選択します
- [Save]をクリックします
-
More Actions > SAML Metadata を選択します
2. AWS側の設定
AWSプロバイダの作成
- Amazon Web Servicesにルートユーザーとしてログインします
-
IAM と検索し、該当サービスを選択します
- IDプロバイダ を選択します
- [プロバイダを追加]をクリックします
-
プロバイダのタイプで SAML が選択されていることを確認します
- 任意の プロバイダ名 を入力します
- メタデータドキュメント に OneLogin側の操作 手順6 で取得した
onelogin_metadata_xxxxxxx.xml
をアップロードします
- [プロバイダを追加]を選択します
- 追加したプロバイダ名をクリックします
-
概要 > ARN の値をクリップボードにコピーします
AWSのロール作成
-
ロール を選択します
- [ロールを作成]をクリックします
- 信頼されたエンティティタイプで SAML 2.0 フェデレーション を選択します
- SAML 2.0 ベースのプロバイダーで、2. AWS側の設定 手順8 で作成したプロバイダが選択されていることを確認します
- 任意のポリシーを適宜選択し、[次へ]をクリックします
- 任意の ロール名 を入力します
- [ロールを作成]をクリックします
- 同様にして必要な分ロールを作成します
AWSユーザーのアクセスキー取得
-
IAMユーザー を選択します
- [ユーザーの作成]をクリックします
- 任意のユーザー名を入力し、[次へ]をクリックします
-
ポリシーを直接アタッチする を選択します
- 許可ポリシーで IAMReadOnlyAccess を選択し、[次へ]をクリックします
- [ユーザーの作成]をクリックします
- 作成したユーザーを選択します
-
セキュリティ認証情報 タブを選択します
- [アクセスキーを作成]をクリックします
- [AWS の外部で実行されるアプリケーション]を選択し、[次へ]をクリックします
- 任意の説明タグ値を入力し、[アクセスキーを作成]をクリックします
-
アクセスキー と シークレットアクセスキー をコピーし、安全な場所に保管してください。適宜[.csv ファイルをダウンロード]を実行します
- [完了]をクリックします
3. OneLogin側の設定
-
Configuration タブに移動し、Identity Provider ARN にAWS側の設定 1. AWSプロバイダの作成 手順10で取得した値を貼り付けます
-
API Connection の Access Key ID、Access Secret Key に AWS側の設定 3. AWSユーザーのアクセスキー取得 手順12 で取得した値を貼り付けます
OneLoginの項目 Amazon Web Servicesの値 Access Key ID アクセスキー Access Secret Key シークレットアクセスキー
- [Enable]をクリックします
-
API Status が Enabled に変更されることを確認します
-
Access タブに移動し、割り当てたいユーザーが属するロールを選択後、[Save]をクリックします
-
Provisioning タブに移動し、Enable provisioning にチェックを入れます
-
Require admin approval before this action is performed から、プロビジョニングの実行前に管理者による承認が不要な操作のチェックを外します
-
When users are deleted in OneLogin, or the user's app access is remove, perform the below action から、OneLoginユーザーが削除された場合、またはコネクタへのアクセス権が失効された場合に実行する動作を選択します
- Do Nothing: 削除も停止もしない
- Delete: AWSアカウントも削除
-
Suspend: AWSアカウントも停止
-
When user accounts are suspended in OneLogin, perform the following action から、OneLoginユーザーが停止された場合に実行する動作を選択します
- Do Nothing: 停止しない
-
Suspend: AWSアカウントも停止
-
Parameters タブに移動し、Role フィールドを選択します
-
Include in User Provisioning にチェックを入れ、[Save]を保存します
-
Rules タブに移動し、[Add Rule]をクリックします
- シングルサインオンできるユーザーを割り当てるためのユーザーロールをOneLoginのパラメータをベースに設定します
例)Department(OneLoginのパラメータ)が 開発部 のユーザーに OneLogin_MultiRole_SSO(AWSで設定したロール)を割り当てる
- [Save]をクリックします
-
Users タブに移動します
- ユーザープロビジョニングに管理者の承認が必要な設定をしている場合、ユーザーは Pending ステータスになります。プロビジョニングを承認するユーザーの Pending をクリックします
- [Approve]をクリックします
-
Provisioning State が Provisioned に変更されることを確認します
SAML連携の設定は以上です。
SAML SSOの動作確認
- OneLoginに対象ユーザーでログインし、設定した Amazon Web Services (AWS) Multi Role を選択します
- ログインしたいAWS Roleを選択し、[サインイン]をクリックします
- SAML認証が完了し、AWSにSSOされることを確認します
SAML SSOの動作確認は以上です。
SAML SSOの無効化
- Amazon Web Servicesにルートユーザーとしてログインします
- 検索欄から IAM と検索し、IAM を選択します
-
IDプロバイダ を選択します
-
2. AWS側の設定 手順8 で作成したプロバイダを選択します
- [削除]をクリックします
-
確認 と入力し、[削除]をクリックします
-
ID プロバイダが削除されました と表示されることを確認します
SAML SSOの無効化は以上です。