このトピックでは、OneLogin と Alibaba Cloud 間のロールベースのシングルサインオン (SSO) の例を示します。この例では、企業の ID プロバイダー (IdP) から Alibaba Cloud へのロールベース SSO のエンドツーエンドの構成プロセスについて説明します。
背景情報
この例では、企業は Alibaba Cloud アカウント、OneLogin 管理者、および複数の OneLogin ユーザーを所有しています。目標は、新しい Alibaba Cloud アカウントを作成する代わりに、OneLogin ユーザーが OneLogin アカウントを使用して Alibaba Cloud にアクセスできるように、ロールベース SSO を構成することです。
OneLogin の詳細については、「OneLogin ドキュメント」をご参照ください。
ステップ 1: OneLogin でアプリケーションを作成する
管理者として OneLogin にログインします。
プロファイル写真の左側にある [Administration] をクリックして、管理者ページを開きます。
トップメニューバーで、 を選択します。
[アプリケーション] ページの右上隅にある [アプリを追加] をクリックします。
[アプリケーションの検索] ページで、[SAML Test Connector (advanced)] を検索します。
[Add SAML Test Connector (Advanced)] ページで、アプリケーションの基本情報を構成し、[Save] をクリックします。
この例では、[Display Name] を
LoginToAliyunに設定し、他のパラメーターはデフォルト値のままにします。[Info] ページの右上隅にある [More Actions] にカーソルを合わせ、[SAML Metadata] をクリックして IdP メタデータファイルをダウンロードします。ファイルをローカルコンピューターに保存します。
ステップ 2: Alibaba Cloud で IdP を作成する
RAM 管理者として Resource Access Management (RAM) コンソールにログインします。
左側のナビゲーションウィンドウで、 を選択します。
[Role SSO] タブで、[SAML] タブをクリックし、[Create IdP] をクリックします。
[Create IdP] ページで、[IdP Name] (OneLogin) と [Remark] を入力します。
[Metadata Document] セクションで、[Upload Metadata] をクリックして、「ステップ 1: OneLogin でアプリケーションを作成する」でダウンロードした IdP メタデータファイルをアップロードします。
[Create IdP] をクリックします。
新しい IdP の詳細を表示し、その ARN を記録します。
ステップ 3: Alibaba Cloud で RAM ロールを作成する
RAM コンソールの左側のナビゲーションウィンドウで、 を選択します。
[ロール] ページで、[ロールの作成] をクリックします。
[Create Role] ページの右上隅にある [Switch Editor] をクリックします。
エディターで、SAML IdP を指定します。
エディターには、ビジュアルエディターとスクリプトエディターの 2 つのモードがあります。どちらのモードでも使用できます。この例では、ビジュアルエディターを使用します。[Principal] セクションで、「ステップ 2: Alibaba Cloud で IdP を作成する」で作成した IdP を指定します。[Identity Provider Type] を [SAML] に設定します。
エディターで、
saml:recipient条件を設定します。値をhttps://signin.alibabacloud.com/saml-role/ssoに設定します。[Create Role] ダイアログボックスで、[Role Name] (Reader-OneLogin など) を入力し、[OK] をクリックします。
新しい RAM ロールの詳細を表示し、その ARN を記録します。
ステップ 4: OneLogin でアプリケーションを設定する
管理者として OneLogin にログインします。
カスタムユーザー属性を作成します。
トップメニューバーで、 を選択します。
[Users] ページの右上隅にある [More Actions] にカーソルを合わせ、[Custom User Fields] をクリックします。
[カスタムユーザーフィールド] ページの右上隅にある [新規ユーザーフィールド] をクリックします。
[New User Field] ダイアログボックスで、[Name] と [Shortname] を設定し、[Save] をクリックします。
この例では、[Name] を
AliyunRoles for SSOに、[Shortname] をAliyunRolesに設定します。
アプリケーションを構成します。
トップメニューバーで、 を選択します。
[Applications] ページで、「ステップ 1: OneLogin でアプリケーションを作成する」で作成したアプリケーション (LoginToAliyun) をクリックします。
左側のナビゲーションウィンドウで、[Configuration] をクリックします。
[Configuration] ページで、次の情報を構成し、[Save] をクリックします。
RelayState: ログインが成功した後にユーザーがリダイレクトされる Alibaba Cloud ページ。
説明セキュリティ上の理由から、[RelayState] には、*.aliyun.com、*.hichina.com、*.yunos.com、*.taobao.com、*.tmall.com、*.alibabacloud.com、*.alipay.com など、Alibaba Group が所有するドメイン名の URL のみ入力できます。それ以外の場合、構成は無効になります。このパラメーターを設定しない場合、ユーザーはデフォルトで Alibaba Cloud 管理コンソールのホームページにリダイレクトされます。
Audience (EntityID):
urn:alibaba:cloudcomputing:international。Recipient:
https://signin.alibabacloud.com/saml-role/sso。ACS (Consumer) URL:
https://signin.alibabacloud.com/saml-role/sso。
左側のナビゲーションウィンドウで、[Parameters] をクリックします。
[Parameters] ページで、
をクリックして、最初のカスタムアプリケーションプロパティを追加します。[New Field] ダイアログボックスで、[Field Name] を
https://www.aliyun.com/SAML-Role/Attributes/Roleに設定し、[Include In SAML Assertion] と [Multi-value Parameter] を選択して、[Save] をクリックします。[Edit Field Https://www.aliyun.com/SAML-Role/Attributes/Role] ダイアログボックスの [Default If No Value Selected] セクションで、2 つのドロップダウンリストから [Aliyun Roles For SSO (Custom)] と [Semicolon Delimited Input (Multi-value Output)] を選択します。次に、[Save] をクリックします。
[Parameters] ページで、
をクリックして、2 番目のカスタムアプリケーションプロパティを追加します。[New Field] ダイアログボックスで、[Field Name] を
https://www.aliyun.com/SAML-Role/Attributes/RoleSessionNameに設定し、[Include In SAML Assertion] を選択して、[Save] をクリックします。[Edit Field Https://www.aliyun.com/SAML-Role/Attributes/RoleSessionName] ダイアログボックスの [Value] セクションのドロップダウンリストから [Email] を選択し、[Save] をクリックします。
説明必要に応じて、[Value] を [Username] や [userPrincipalName] などの他の値に設定することもできます。
[Parameters] ページの右上隅にある [Save] をクリックします。
ステップ 5: OneLogin でユーザーを作成し、アプリケーションを割り当てる
管理者として OneLogin にログインします。
トップメニューバーで、 を選択します。
ユーザーを作成します。
説明すでに OneLogin ユーザーがいる場合は、このステップをスキップしてください。
[ユーザー] ページの右上隅にある [新規ユーザー] をクリックします。
[New User] ページで、[First Name] (例: Jack)、[Last Name] (例: Lee)、[Username] (例: jacklee)、[Email] (例: jacklee@example.com) を設定し、[Save User] をクリックします。
[User Info] ページの右上隅にある [More Actions] にカーソルを合わせ、[Change Password] をクリックし、ユーザーのログインパスワードを設定して、[Update] をクリックします。
ユーザーが OneLogin にログインできるように、ユーザーのログインパスワードを設定します。
[User Info] ページの [Custom Fields] セクションで、[Aliyun Roles For SSO] カスタムユーザープロパティの値を設定します。
[Aliyun Roles For SSO] の値は、RAM ロールの ARN と IdP の ARN をコンマ (,) で区切って構成されます。値は
acs:ram::<account_id>:role/RoleName,acs:ram::<account_id>:saml-provider/ProviderNameフォーマットである必要があります。RAM ロールの ARN は、「ステップ 3: Alibaba Cloud で RAM ロールを作成する」のものです。IdP の ARN は、「ステップ 2: Alibaba Cloud で IdP を作成する」のものです。<account_id> は Alibaba Cloud アカウント ID です。説明ユーザーが複数の RAM ロールに対応する場合、複数の値のペアを設定できます。各ペアは、RAM ロールの ARN とそれに対応する IdP の ARN で構成されます。ペアはセミコロン (;) で区切ります。例:
acs:ram::125022144354****:role/reader-onelogin,acs:ram::125022144354****:saml-provider/OneLogin;acs:ram::125022144354****:role/administrator-onelogin,acs:ram::125022144354****:saml-provider/OneLogin;acs:ram::158622887609****:role/finance,acs:ram::158622887609****:saml-provider/OneLogin2。アプリケーションをユーザーに割り当てます。
[Applications] ページで、
をクリックします。「ステップ 1: OneLogin でアプリケーションを作成する」で作成したアプリケーション (LoginToAliyun) を選択し、[Continue] をクリックします。
表示されたダイアログボックスで、[保存] をクリックします。
[ユーザー] ページの右上隅にある [ユーザーを保存] をクリックします。
ステップ 4 から ステップ 6 を繰り返して、他の OneLogin ユーザーの [Aliyun Roles For SSO] プロパティを設定し、アプリケーションを割り当てます。
結果の検証
「ステップ 5: OneLogin でユーザーを作成し、アプリケーションを割り当てる」で作成したユーザー (jacklee) として OneLogin にログインします。
アプリケーション (LoginToAliyun) をクリックします。
[RelayState] で指定されたページ (またはデフォルトで Alibaba Cloud 管理コンソールのホームページ) にリダイレクトされた場合、ログインは成功です。
説明「ステップ 5: OneLogin でユーザーを作成し、アプリケーションを割り当てる」でユーザーに複数のロールを割り当てた場合、Alibaba Cloud にログインする前にロールを選択する必要があります。