SAMLを使用したSSO設定

SAMLを使用したSSO設定について説明します。

設定の概要については、「設定の流れ」をご確認ください。

具体的な操作については、「操作手順」をご確認ください。

 

各手順タイトルの先頭にあるアイコンは、以下の設定先を示しています。

:

SSOプロバイダで設定する手順を示す。

:

HULFT10 for Container Platformで設定する手順を示す。

:

Red Had OpenShiftで設定または操作する手順を示す。

設定の流れ

SAMLを使用したSSO設定の流れは、以下のとおりです。

表3.1 SAMLを使用したSSO設定の流れ

SSOプロバイダ

HULFT10 for Container Platform

Red Hat OpenShift

手順1.「管理者ユーザーの作成」

管理者ユーザーを作成(*1)

管理者ユーザーを作成(*1)

-

手順2.「ユーザー認証設定に必要な情報の取得」

-

ユーザー認証設定をSAMLに変更して、SAML認証設定に表示されている以下の値を取得

  • 識別子 (エンティティID)

  • 応答URL (Assertion Consumer Service(ACS) URL)

→手順3.で設定

-

手順3.「ユーザー認証設定に必要な情報の登録」

HULFT10 for Container PlatformのSAML用のクライアントを作成

手順2. のSAML認証設定に表示されていた以下の値を設定

  • 識別子 (エンティティID)

  • 応答URL(Assertion Consumer Service(ACS) URL)

-

-

手順4.「SAML IdP XML Metadataの取得」

ユーザー認証設定に必要な以下の値を取得

  • SAML IdP XML Metadata

→手順5.で設定

-

-

手順5.「SAML IdP XML Metadataの設定」

-

手順4.で取得した以下の値を設定

  • SAML IdP XML Metadata

-

手順6.「SAML証明書およびSAML秘密鍵の登録」

-

-

任意に取得したSAML証明書およびSAML秘密鍵をSecretに登録

手順7.「管理コンテナの再起動」

-

-

管理コンテナを再起動

手順8.「アクセストークンの取得」

転送コンテナユーザーを作成

アクセストークンの取得(*2)

→手順9.で登録

 

-

手順9.「アクセストークンの登録」

-

-

手順8.で取得したアクセストークンを登録

手順10.「転送コンテナの再起動」

-

-

転送コンテナを再起動

*1

:

SSOが有効な場合、ID/パスワードを使用したログインはできません。

*2

:

SSOが有効になると、パスワードを使用した認証によるログインが無効となるため、転送コンテナの再起動ができません。このため、アクセストークンを使用した認証が必要となります。

操作手順

SAMLを使用したSSO設定の操作手順を、SSOプロバイダに「okta」を使用した例で説明します。

「okta」以外に利用できるSSOプロバイダについては、「利用可能なシングルサインオン(SSO)プロバイダ」を参照してください。

管理者ユーザーの作成

SSOが有効になると、HULFT10 for Container Platformへパスワードによるログインはできなくなります

SSOを有効にした後に管理者権限でHULFT10 for Container Platformにログインできるよう、事前にSSOプロバイダでの管理者ユーザーと同期させるHULFT10 for Container Platformの管理者ユーザーを作成します。

 

SSOプロバイダのokta開発環境での操作は以下のとおりです。

  1. okta開発環境に管理者ユーザーを作成します。

    okta開発環境で作成した管理者ユーザーを、以降の手順でHULFT10 for Container Platformに設定してください。

 

HULFT10 for Container Platformでの操作は以下のとおりです。

= 備考 =

以下の手順は管理者権限のユーザーで実施していますが、存在しない場合はrootユーザーで実施してください。

  1. HULFT10 for Container Platformの管理画面に管理者権限のユーザーIDでログインします。

  2. ホーム>Settings>ユーザー設定>ユーザー管理をクリックします。

  3. 新規作成ボタンをクリックします。

  4. ユーザー新規作成画面で以下の値を設定します。

    表3.2 設定内容

    項目名

    設定内容

    ユーザーID

    okta開発環境に登録したHULFT10 for Container Platform管理者のEメールアドレス

    表示名

    (例)okta開発環境に登録したHULFT10 for Container Platform管理者のEメールアドレス

    メールアドレス

    okta開発環境に登録したHULFT10 for Container Platform管理者のEメールアドレス

    初期パスワード

    任意の初期パスワード(*1)

    ユーザーの権限

    管理者

    その他の項目の設定は任意です。

    *1

    :

    ユーザー新規作成画面で設定する初期パスワードはHULFT10 for Container Platformの管理画面にログインするためのものです。

    SSOの設定が有効になった後はこちらの初期パスワードではなく、SSOプロバイダに登録したパスワードでログインしてください。

  5. 保存ボタンをクリックします。

 

管理者ユーザーが作成されました。

= 備考 =

HULFT10 for Container Platformの管理画面は「ユーザー認証設定に必要な情報の取得」の手順で使用します。閉じないで次の手順に進んでください。

ユーザー認証設定に必要な情報の取得

HULFT10 for Container Platformのユーザー認証設定で、ユーザー認証方式に“SAML”を指定し、ユーザー認証設定に必要な情報を取得する手順は以下のとおりです。

  1. HULFT10 for Container Platform管理画面のホーム>Settings>ユーザー設定>ユーザー認証設定をクリックします。

  2. ユーザー認証方式に“SAML”を指定します。

  3. SAML認証設定で表示されている以下の値をコピーして控えておきます。

    表3.3 表示内容

    項目名

    表示内容

    識別子(エンティティID)

    (例)https://external-control-example.com/api/login/saml/metadata

    応答URL(Assertion Consumer Service(ACS) URL)

    (例)https://external-control-example.com/api/login/saml/acs

 

ユーザー認証設定に必要な情報を取得できました。

= 備考 =

HULFT10 for Container Platformの管理画面は「SAML IdP XML Metadataの設定」の手順で使用します。閉じないで次の手順に進んでください。

ユーザー認証設定に必要な情報の登録

HULFT10 for Container PlatformのSAML認証設定に表示された値を、SSOプロバイダのSAML用クライアントに設定します。

okta開発環境での手順は以下のとおりです。

  1. okta開発環境のApplications-Applicationsをクリックします。

  2. Applications画面でCreate App Integrationボタンをクリックします。

  3. Create a new app integrationダイアログで以下を選択し、Nextボタンをクリックします。

    表3.4 設定内容

    項目名

    設定内容

    Sign-in method

    SAML 2.0

  4. Create SAML Integration画面のGeneral Settingsタブで、以下を設定しNextボタンをクリックします。

    表3.5 設定内容

    項目名

    設定内容

    App name

    任意のクライアント名(例として、“hulft10-saml”)を指定

  5. Create SAML Integration画面のConfigure SAMLタブで、以下を設定しNextボタンをクリックします。

    表3.6 設定内容

    項目名

    設定内容

    Single sign-on URL

    HULFT10 for Container Platform管理画面のユーザー認証設定で表示されていた「応答URL(Assertion Consumer Service(ACS) URL)」を指定

    Audience URI(SP Entity ID)

    HULFT10 for Container Platform管理画面のユーザー認証設定で表示されていた「識別子(エンティティID)」を指定

    Name ID format

    EmailAddress(*1)

    *1

    :

    Name ID formatとして指定されたものをHULFT10 for Container PlatformではユーザーIDとして扱うため、usernameやEmailAddressを指定することを推奨します。

    項目名はSSOプロバイダごとに異なる場合があります。詳しくは、SSOプロバイダのマニュアルを参照してください。

  6. Create SAML Integration画面のFeedbackタブで、以下を設定しFinishボタンをクリックします。

    表3.7 設定内容

    項目名

    設定内容

    3. Help Okta Support understand how you cnfigured this application

    Are you a customer or paetner?

    I'm an Okta customer adding an internal app

 

HULFT10 for Container PlatformのSAMLクライアントが作成されました。

 

Okta開発環境では、作成したアプリケーションにログインさせたいユーザーをアサインする必要があります。

手順は以下のとおりです。

  1. Okta開発環境のApplications-Applicationsで、作成したアプリケーション(例として、“hulft10-saml”)をクリックします。

  2. Assignmentsタブで、ログインさせたいユーザーを以下のとおりアサインします。

    • すべてのユーザーをアサインしたい場合

      1. AssignボタンをクリックしてAssign to Groupsをクリックします。

      2. Assign hulft10-saml to Groupsダイアログで、EveryoneのAssignをクリックします。

        AssignがAssignedの状態になります。

      3. Doneボタンをクリックします。

        Okta開発環境に登録されているすべてのユーザーがアサインされます。

    • グループ単位でユーザーをアサインしたい場合

      1. AssignボタンをクリックしてAssign to Groupsをクリックします。

      2. Assign hulft10-saml to Groupsダイアログで、アサインしたいグループのAssignをクリックします。

        AssignがAssignedの状態になります。

      3. Doneボタンをクリックします。

        指定したグループのユーザーがアサインされます。

    • ユーザー単位でアサインしたい場合

      1. AssignボタンをクリックしてAssign to Peopleをクリックします。

      2. Assign hulft10-saml to Peopleダイアログで、アサインしたいユーザーのAssignをクリックします。

      3. 新たに表示されたAssign hulft10-saml to Peopleダイアログで、Save and Go Backボタンをクリックします。

        元のAssign hulft10-saml to Peopleダイアログで、アサインしたいユーザーのAssignがAssignedの状態になります。

      4. Doneボタンをクリックします。

        指定したユーザーがアサインされます。

SAML IdP XML Metadataの取得

ユーザー認証設定に必要なSAML IdP XML Metadataを取得する手順は以下のとおりです。

  1. okta開発環境で作成したSAML画面(例として、hulft10-saml画面)でSign onタブをクリックします。

  2. Settings-Sign on methods-SAML 2.0-Metadata URLのcopyボタンをクリックします。

  3. Webブラウザのアドレスバーに、先の手順でコピーしたMetadata URLをペーストします。

  4. Webブラウザのウィンドウに表示されたXMLデータのすべてをコピーして控えておきます。

 

HULFT10 for Container Platformのユーザー認証設定に必要なSAML IdP XML Metadataを取得しました。

SAML IdP XML Metadataの設定

SSOプロバイダから取得したSAML IdP XML Metadataを、HULFT10 for Container Platformのユーザー認証設定に設定する手順は以下のとおりです。

  1. HULFT10 for Container Platform管理画面のホーム>Settings>ユーザー設定>ユーザー認証設定をクリックします。

  2. SAML認証設定のSAML IdP XML Metadataの入力フィールドに、「SAML IdP XML Metadataの取得」で取得したXMLデータをペーストします。

  3. 保存ボタンをクリックします。

  4. ユーザー認証設定の保存ダイアログで、ユーザー認証設定を変更するチェックボックスをチェックします。

  5. 保存ボタンをクリックします。

 

HULFT10 for Container PlatformにSAML IdP XML Metadataが設定されました。

SAML証明書およびSAML秘密鍵の登録

SAML認証を行う場合に必要な設定手順については、以下を参照してください。

HULFT10 for Container Platform スタートアップガイド(OpenShift) : 「事前準備」の「SAML証明書の定義」

 

SAML認証情報が登録されたSecretのパスをHulftリソースに指定するには、以下のコマンドを実行します。

oc patch Hulft <作成したHulftリソースの名前> --type=merge -p '{"spec":{"control":{"samlSecret":<SAML証明書のSecretリソースの名前>"}}}'

管理コンテナの再起動

HULFT10 for Container Platformでのユーザー認証設定を有効にするために、管理コンテナを再起動します。

 

管理コンテナを再起動するには、以下のコマンドを実行します。

oc rollout restart Deployment hulft-<リソースの識別名>-control

<リソースの識別名>には、HULFT10 for Container Platformのプロダクトキーを発行する際に指定したホスト名の中に含まれるリソースの識別名を指定します。

リソースの識別名の詳細は、以下を参照してください。

HULFT10 for Container Platform スタートアップガイド(OpenShift) : 「ライセンスの発行」

 

管理コンテナを再起動すると、HULFT10 for Container Platformでのユーザー認証設定が有効になります。

アクセストークンの取得

SSOが有効になると、パスワードを使用した認証によるログインが無効となるため、転送コンテナの再起動ができません。このため、アクセストークンを使用した認証が必要となります。

= 備考 =

ユーザー認証によるログインを有効化する前にアクセストークンを使用した認証を設定済みの場合でも、ユーザー認証によるログインを有効化後にアクセストークンを使用した認証を再設定してください。

アクセストークンは、転送コンテナユーザーでログインしたHULFT10 for Container Platformのユーザー管理画面で取得できます。

 

転送コンテナユーザーの作成は、SSOが有効となった後はパスワードの認証とは異なる手順となります。

転送コンテナ用のユーザーはSSOプロバイダで作成しますが、そのユーザーはHULFT10 for Container Platformでは“メンバー”の権限が付与されています。

HULFT10 for Container Platformのプロファイル画面でそのユーザーに“転送コンテナ”の権限を付与する必要があります。

 

以下の手順で、転送コンテナユーザーを作成し、ユーザーの権限が“メンバー”となっていることを確認します。

  1. okta開発環境で転送コンテナ用のユーザーを作成します。

  2. HULFT10 for Container PlatformのログインリダイレクトURLをWebブラウザに入力し、ログイン画面を開きます。

  3. でログインボタンをクリックします。

  4. 手順1. で作成したユーザーのユーザー名およびパスワードを入力してサインインボタンをクリックします。

  5. oktaパスワードが失効していますダイアログが表示された場合は、新しいパスワードとパスワードを再入力してくださいにパスワードを入力して、パスワード変更ボタンをクリックします。

    ここで入力したパスワードは仮パスワードになります。

  6. ホーム>Settings>個人設定>プロファイルをクリックします。

  7. プロファイル画面で、ユーザーの権限が“メンバー”となっていることを確認します。

  8. HULFT10 for Container Platformの管理画面からログアウトします。

  9. SSOプロバイダからログアウトするため、WebブラウザのCookieを削除します。

 

以下の手順で、ユーザーの権限を“メンバー”から“転送コンテナ”に変更します。

  1. HULFT10 for Container PlatformのログインリダイレクトURLをWebブラウザに入力し、ログイン画面を開きます。

  2. 管理者ユーザーの作成で作成した管理者ユーザーのユーザー名およびパスワードを入力してサインインボタンをクリックします。

  3. ホーム>Settings>ユーザー設定>ユーザー管理をクリックします。

  4. ユーザー管理の一覧から、転送コンテナユーザーとして作成したユーザーのユーザーIDをクリックします。

  5. ユーザー管理画面で、以下を設定します。

    表3.8 設定内容

    項目名

    設定内容

    メールアドレス

    「ユーザーID」と同じメールアドレスを指定

    ユーザーの権限

    転送コンテナ

    その他の項目の設定は任意です。

  6. 保存をクリックします。

ユーザーの権限が“メンバー”から“転送コンテナ”に変更されました。

 

アクセストークンを取得する手順は以下のとおりです。

  1. ユーザー管理の一覧から、ユーザーの権限を“メンバー”から“転送コンテナ”に変更したユーザーのユーザーIDをクリックします。

  2. 転送コンテナユーザーのユーザー管理画面でアクセストークンを発行ボタンをクリックします。

  3. アクセストークンの発行ダイアログで、アクセストークンを発行ボタンをクリックします。

  4. アクセストークンの発行ダイアログに表示されたアクセストークンをコピーします。

  5. OKボタンをクリックします。

 

アクセストークンを取得しました。

アクセストークンの登録

転送コンテナでアクセストークンを使用できるようにする手順については、「アクセストークンを使用した認証の設定」の「アクセストークンをSecretに登録」を参照してください。

 

転送コンテナの再起動

登録したアクセストークンを転送コンテナで使用するためには、転送コンテナの再起動が必要です。

転送コンテナを再起動する手順については、「アクセストークンを使用した認証の設定」の「転送コンテナの再起動」を参照してください。

 

 

以上で、SAMLを使用したSSO設定が完了です。