このページについて
SeciossLinkをIdPとして利用し、ZUNDA IDとSAML連携させるための手順を説明します。この設定を完了すると、SeciossLinkにサインインしているユーザーが、その認証情報を用いてZUNDA IDへシングルサインオンでログインできるようになります。
設定に必要なもの
事前に以下を揃えておいてください。
-
SeciossLinkの管理者アカウント
シングルサインオン設定を作成・編集できる権限を持つアカウントが必要です。
-
ZUNDA IDの認証方法の管理権限を持つユーザー
SAMLプロバイダーの作成と設定を行うため、ZUNDA IDの管理権限を持つユーザーが必要です。
-
事前にリカバリーキーを発行・保管していること
設定不備やIdP障害によるロックアウトを防ぐため、ログイン方法のリカバリー設定の設定方法を参照し、リカバリーキーを事前に発行してください。
-
SeciossLink側の設定(サービスプロバイダー登録、ユーザーへの割り当て)
SeciossLinkにZUNDA IDをサービスプロバイダーとして登録し、対象ユーザー(またはグループ、組織など)にサービスを割り当てる必要があります。詳細はSeciossLinkのマニュアルをご確認ください。
設定手順
ZUNDA IDとSeciossLinkの管理画面を交互に操作して設定を進めます。両方の画面を同時に開いておくとスムーズです。
ZUNDA IDの「ログイン方法設定」画面を開き、「SAMLプロバイダーを追加」ボタンをクリックしてください
表示されたダイアログに、このプロバイダーを識別するための任意の表示名(例:SeciossLink)を入力し、「作成」をクリックしてプロバイダー詳細画面へ進んでください。ここで付けた名前は、ログイン画面や設定画面で表示されます。
SeciossLinkの管理コンソールへログインし、左サイドメニューから「シングルサインオン」→「SAML」を開き、画面右上の「登録」ボタンをクリックしてください
ZUNDA IDのプロバイダー詳細画面に戻り、「メタデータURL(SP)」の「ダウンロード」ボタンをクリックして、SP側のメタデータXMLを保存してください
SPメタデータには、ACS URLやエンティティIDなど、SeciossLink側で必要となるZUNDA ID(SP)の情報が含まれています。このファイルをSeciossLink側へアップロードすることで、主要な設定を一括で反映させることができます。
SeciossLinkのSAMLサービスプロバイダー登録画面を下にスクロールし、「メタデータ」セクションの「ファイルを選択」から先ほどダウンロードしたSPメタデータXMLファイルを選択し、「読み込む」ボタンをクリックしてください
読み込みに成功すると、エンティティIDやAssertion Consumer Serviceなどの値が自動的に入力されます。
画面上部に戻り、「サービスID」と「サービス名」を入力してください
- サービスID
zunda-id(任意の一意な識別子)
- サービス名
ZUNDA ID
エンティティIDとAssertion Consumer Serviceは、前手順でメタデータから自動入力されていることを確認してください。
「IDの属性」を urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress に、「ユーザーIDの属性」を「メールアドレス」に変更してください
ZUNDA IDではNameIDフォーマットとしてemailAddressを期待しており、ユーザーの紐付けにメールアドレスを利用するため、この設定が必要です。
「送信する属性」セクションで「姓」「名」「別名(表示名)」にチェックを入れ、それぞれの「属性名」にZUNDA IDが期待するスキーマURIを入力してください
- 姓:
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname - 名:
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname - 表示名(別名):
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name
この属性マッピングにより、SAMLログイン時にSeciossLinkからZUNDA IDへユーザーの姓・名・表示名が送信され、JITサインアップ時にZUNDA ID側に正しくユーザー名を取り込めるようになります。
SP証明書の登録と署名検証の有効化(任意)
必須ではありませんが、SeciossLink側にZUNDA IDのSP証明書を登録し、AuthnRequestの署名検証を有効化することで、リクエストが確かにSP(ZUNDA ID)から送信されたものであることをSeciossLinkが暗号学的に検証できるようになり、なりすましやリクエストの改ざんに対するセキュリティが高まります。
SeciossLinkの登録画面をさらにスクロールし、「リクエストの署名検証」の「有効」にチェックを入れ、「署名の適用範囲」で「アサーションとレスポンス両方に適用」を選択してください
ZUNDA IDのプロバイダー詳細画面より、「SP証明書」セクションの「ダウンロード」ボタンをクリックして、プライマリーSP証明書ファイルをダウンロードしてください
SeciossLinkの登録画面に戻り、「SP証明書」セクションの「ファイルを選択」をクリックし、先ほどダウンロードしたSP証明書ファイルをアップロードしてください
ここまで設定して、「保存」ボタンをクリックしてSeciossLink側の設定を保存してください。
IdPメタデータの取得とインポート
SeciossLinkからIdPメタデータをダウンロードし、ZUNDA ID側にインポートしてIdP側の設定値を一括で取り込みます。
SeciossLinkで「シングルサインオン」→「SAML」を開き、画面右上の「設定」タブをクリックし、「Idpメタデータ」の「ダウンロード」ボタンをクリックしてIdPメタデータXMLを保存してください
このメタデータには、SeciossLinkのIdP Entity ID、SSO URL、IdP署名証明書などが含まれており、ZUNDA IDにインポートすることでIdP側の設定を一括で取り込めます。
ZUNDA IDのプロバイダー詳細画面に戻り、「メタデータXMLをインポート」ボタンをクリックしてください
表示されたダイアログから「ファイルから読み込む」をクリックし、先ほど保存したIdPメタデータXMLファイルを選択してください。読み込まれたことを確認したら、「メタデータXMLをインポート」ボタンをクリックしてください。
IdP Entity ID、SSO URL、IdP証明書などの設定値がすべてインポートされたことを確認してください。
テストをする
設定が完了したら、プロバイダーを有効化する前に必ずログインテストを実施して、設定が正しいか、SeciossLinkユーザーの情報が正しく取り込めるかを確認してください。テストにSeciossLink側で対象サービスへのユーザー割り当てが必要なため、事前にテスト実行者のアカウントへ作成したサービスを割り当てておいてください。
ZUNDA IDのSeciossLinkプロバイダー詳細画面より、「テスト」ボタンをクリックしてください
テストボタンをクリックすると、ポップアップウィンドウでSeciossLinkのログイン画面が開きます。ポップアップがブロックされている場合は、ブラウザのポップアップブロッカーを一時的に無効化してください。
SeciossLinkのログイン画面が表示されるので、テスト実行者のアカウントでSeciossLinkへログインしてください
ログインに成功すると、以下のように「SSOログインテストに成功しました」と表示され、NameID・メールアドレス・姓・名のチェック結果が緑のチェックになっていれば設定完了です(表示名は任意項目のため、未設定の場合はZUNDA ID側で自動設定されます)
テストに失敗した場合は、以下を確認してください。
- SeciossLinkのIdPメタデータが正しくZUNDA IDにインポートされているか
- SeciossLink側で「送信する属性」のスキーマURIが正しく設定されているか
- テスト実行者のアカウントに作成したサービスが割り当てられているか
テストが完了したら、プロバイダー詳細画面に戻り「状態」を ON に切り替えることで、SeciossLinkによるSAMLログインが有効になります。
| ログイン方法が利用できなくなった場合に備えて、ログイン方法のリカバリー設定の設定方法を事前に行っておくことを強く推奨します。設定完了後は作成したSAMLプロバイダーをログイン方法として利用する方法を参照し、ログイン方法として有効化してください。 |