🪪

Microsoft Entra - SAML の SSO をテストしてみる (RSA Test Service Provider)

2024/08/22に公開

https://zenn.dev/takuyaot/books/45d4f4494a63ce


ここでは IDaaS の主要機能の一つであるシングル サインオン (SSO) を設定してみます。

Microsoft 365 などは既に設定せずとも連携されている状況となりますが、3rd Party の SaaS サービスなどを連携させるためには設定する必要があります。

ここでは SAML 2.0 の SaaS サービスに Entra ID のユーザーで SSO してみましょう


RSA Simple Test Service Provider

ここでは RSA が提供している「SAML 2.0 Test Service Provider」を使用してテストしたいと思います。
https://sptest.iamshowcase.com/

こちらを利用することで簡単に SSO のテストが可能です。
様々なパターンの SSO などが試すことがができ、その情報も確認できる大変便利なサイトです!

それではこのサイトに対して SSO を設定していきましょう。

1. SAML 構成に必要な情報の取得

ここでは RSA Test Service Provider との SAML による SSO の設定をする際に必要な情報を取得します。

  1. ブラウザーにて RSA のサイト (https://sptest.iamshowcase.com/) にアクセスし 上部の [Insutractions] の項目にカーソルを合わせ [IDP initiated SSO] をクリック

  2. 中央付近にある [DOWNLOAD METADAATA] をクリック

  3. metadata の中にある 「entityID」「Location」 の値をコピーします

entityID は IAMShowcase
Location は https://sptest.iamshowcase.com/acs

という値でした。
この値を Entara ID の方で設定していきます。

2. Entra ID 側でのアプリ登録

  1. Microsoft Entra 管理センター (https://entra.microsoft.com/) にアクセスし、「ID」の項の [アプリケーション] - [エンタープライズアプリケーション] とたどり、上部の [新しいアプリケーション] をクリック

  2. 表示されたページ上部の [独自のアプリケーションの作成] をクリック

  3. お使いのアプリの名前を聞かれるので任意の名前 (ここでは「RSA SAML 2.0 Test Service Provider」と入れました) を入れ、そのまま [作成] をクリック

  4. [ユーザーとグループ] のメニューから上部の [ユーザーまたはグループの追加] をクリック

  5. 「ユーザーとグループ」の割り当てを求められるため、「選択されてません」 の箇所をクリック

  6. 今回テストするユーザー (ここでは takuyaot05 にしました) をチェックし [選択]

  7. 対象のユーザーが選択されたことを確認し [割当て] をクリック

  8. 次にメニューの 「シングル サインオン」 の項目をクリック後 [SAML] をクリック

  9. 「基本的な SAML 構成」の右上にある [編集] をクリック

  10. 「識別子の追加」 をクリックして前の手順でメモった IAMShowcase を、そして 「応答 URL の追加」 にて https://sptest.iamshowcase.com/acs を入力し [保存] をした後 [✕] をクリック

  11. test を進められますが、ここでは 「いいえ、後でtestします」 をクリック

  12. そのまま中ほどまでスクロールして「フェデレーション メタデータ XML」の項の [ダウンロード] をクリック。その後 XML ファイルを [保存]

  13. 再びブラウザーで https://sptest.iamshowcase.com/ のページに戻り、[SP initiated SSO] をクリック

  14. 真ん中のあたりまでスクロールし「Upload metadata」の項目にて [CHOOSE FILE] をクリックして、手順「12.」でダウンロードした XML ファイルを選択し [SUBMIT FILE] をクリック

  15. 表示された URL をコピー。(あとでテストでアクセスします)

https://sptest.iamshowcase.com/ixs?idp=xxxxxxxxxxxxxxxxxxx の形式です。
(忘れたら idp= の部分に自分の idp を入れましょう。)
以上で準備完了になります!

実際にテストしてみる

それでは実際にアクセスしてみましょう。
ここでは 2 つのパターン (SP Initiated と IdP Initiated と呼ばれるのもの) の SSO を試してみます

RSA のサイトにアクセスしてからサインイン (SP Initiated)

ユーザーが直接 RSA Test サイトにアクセスしたときの動作を想定してテストしてみます。
RSA のサイトからすると、あなたは誰ですか?という感じで認証を求める動きです。

  1. ブラウザーを InPrivate ブラウズ で起動し、前の手順の「15.」で入手した URL をコピペしてアクセス

  2. そうすると、Entra ID のサインイン画面にリダイレクトされました。ここでは割り当てたユーザー (takuyaot05) でサインインします

  3. そうすると無事 RSA のサイトにサインインしました。

サインインしたユーザの ID やその下に様々なステータスが表示されており、RSA Test サイトに Entra ID のユーザーの情報が連携されていることが分かります。

Entra ID にサインインしてからアクセス (IdP Initiated)

次に、ユーザーが Entra ID で認証を受けてから、RSA Test サイトにアクセスをする動作をテストしてみます。

  1. ブラウザーを InPrivate ブラウズ で起動し Entra ID の「マイ アプリ」(https://myapplications.microsoft.com) の URL にアクセスします。

  2. サインインが求められますのでアプリを割り当てたユーザー (takuyaot05) でアクセス

  3. サインインに成功すると「アプリ ダッシュボード」が表示されます。そこで RSA Test アプリをクリックしてアクセス

  4. そのまま無事アクセスできました!

こちらも同様に SSO が成功していることが確認できました!

以上となります。

今回は手動で登録するような手順を試してみました。
他にはギャラリーから登録する手順などもありますし、チュートリアルとして詳細な手順もあります。もし連携したいアプリがあれば試してみてください。
https://learn.microsoft.com/ja-jp/entra/identity/saas-apps/tutorial-list

また SAML 以外にも OpenID Connect という認証プロトコルやパスワード ベースで SSO 連携する方法など様々なものがありますので、他のパターンも是非見てみてください!
https://learn.microsoft.com/ja-jp/entra/identity/enterprise-apps/add-application-portal-setup-sso

Microsoft (有志)

Discussion