【Azure】Azure AD SAML設定手順(SP)

Azure
スポンサーリンク

前回、Azure ADをIDプロバイダーとしてSAMLベースのシングルサインオンを設定しました。

【Azure】Azure AD SAML設定手順(IdP)

この記事では、IDプロバイダー側からシングルサインオンの起点を作るIdP initiatedを設定してSAMLベースのシングルサインオンを設定しました。
今回は、サービスプロバイダー(SP)側からSAMLベースのシングルサインオンを設定してみたいと思います。

期待する目標

本手順で期待する目標は以下の通りです。

  • Azure ADをIdPとして、SAMLを構成できる
  • SPを起点としてSAMLベースのシングルサインオンが構成できる
  • SAMLで必要な情報と取得できる情報を理解する

前提条件

本記事で使用している環境は以下の通りです。

  • Azure AD プラン : Premium P2
  • SP サイト : RSA Test Service Provider

本来であれば、実使用するサービスに対して、シングルサインオンをかけるべきなのですが、諸般の都合(金銭面)でSMALのテスト用のサイトを使用します。
テスト用のサイトといっても、IdP initiatedやSP initiatedのテストができるサイトとなっており、SAMLをすると、認証情報やアサーションなどの情報を表示してくれるサイトなので、SAMLを使用したシングルサインオンの理解にはもってこいなサイトだと思います。
URL : https://sptest.iamshowcase.com/

エンタープライズアプリケーションの作成

ここら辺は、IdP initiatedの構成をとった時と同様になります。

Azure ADの選択
Azure ADの選択

[Azureポータル]にログインし、[Azure Active Directory]を選択します。

エンタープライズアプリケーションの選択
エンタープライズアプリケーションの選択

[Azure Active Directory]より、[管理]-[エンタープライズアプリケーション]を押下します。

新しいアプリケーションの選択
新しいアプリケーションの選択

[エンタープライズアプリケーション]より、[新しいアプリケーション]を押下します。

独自のアプリケーションの作成の選択
独自のアプリケーションの作成の選択

[Azure ADギャラリーの参照]より、[独自のアプリケーションの作成]を押下します。

独自のアプリケーションの作成
独自のアプリケーションの作成

[独自のアプリケーションの作成]より、以下の設定を行います。

  • お使いのアプリの名前は何ですか? : 任意のアプリケーション名を入力
  • ギャラリーに見つからないその他のアプリケーションを統合します (ギャラリー以外) : ●

設定が完了したら、[作成]を押下します。
以上でエンタープライズアプリケーションの作成は完了です。

ユーザの追加

1. ユーザとグループの割り当て
ユーザとグループの割り当て

作成したアプリケーションの概要より、[1.ユーザとグループの割り当て]を押下します。

ユーザまたはグループの追加の選択
ユーザまたはグループの追加の選択

[ユーザとグループ]より、[ユーザまたはグループの追加]を押下します。

ユーザとグループの選択
ユーザとグループの選択

[割り当ての追加]の、[ユーザとグループ]より、[選択されていません]を押下します。

割り当てユーザの検索
割り当てユーザの検索

SAMLによるシングルサインオンを許可するユーザを検索し、[選択]を押下します。

割り当ての追加確認
割り当ての追加確認

ユーザの選択が完了したら、追加ユーザ数分選択されていることを確認し、[割り当て]を押下します。

割り当てユーザの確認
割り当てユーザの確認

[ユーザとグループ]より、追加したユーザが表示されていることを確認します。
以上でアプリケーションの作成は完了です。

SAMLの設定

アプリケーションの追加とユーザの割り当てが完了したら、SAMLの設定を行っていきます。

SAMLの選択
SAMLの選択

作成したアプリケーションの[管理]-[シングルサインオン]より、[SAML]を押下します。

シングルサインオンのセットアップ
シングルサインオンのセットアップ

[SAMLによるシングルサインオンのセットアップ]が表示されます。
SP initiatedによるシングルサインオンは、ここにデータを入れていきます。

SPデータの取得

Azure ADのSAML設定画面が表示できたら、SP側のデータを取得していきます。
SPのテストには、前回も使用したRSA Test Service Providerを使用していきます。

RSA Test Service Providerトップページ
RSA Test Service Providerトップページ

以下のURLより、RSAのTest Service Providerのトップページにアクセスし、[Instructions]を押下します。
URL : https://sptest.iamshowcase.com/

今回はTest Service Providerを使用しましたが、他のSPでも同じような値を取得できればSAMLによるシングルサインオンができるようになると思います。

メタデータの取得
メタデータの取得

Setting up IDP initiated SSOより、[DOWNLOAD METADATA]を押下います。
今回は、SP initiatedの方式ですが、SP側のEntity IDを取得したいため、IdP initiatedのメタデータを取得して内容からEntity IDを確認していきたいと思います。

メタデータの確認
メタデータの確認
ダウンロードしたメタデータの内容を確認していきます。
今回必要なのが、[entityID]と[Location]となります。
Test Service Providerだと、EntityIDが[IAMShowcase]となっており、Locationは
Protected Page SAML Demo Service Provider
となっているため、この2つの値を控えておきます。
以上でSPデータの取得は完了です。

SP initiatedの構成

基本的なSAML構成の編集
基本的なSAML構成の編集

[基本的なSAML構成]より、[編集]を選択し[識別子の追加]と[応答URLの追加]を押下します。

SAMLの設定
SAMLの設定

基本的なSAML構成より、以下の設定を行います。

  • 識別子(エンティティID) : ダウンロードしたメタデータのentityIDを入力
  • 応答URL : ダウンロードしたメタデータのLocationのURLを入力

設定が完了したら、[保存]を押下します。

フェデレーションメタデータのダウンロード
フェデレーションメタデータのダウンロード

SAMLの構成が保存できたら、[③SAML証明書]より、[フェデレーションメタデータXML]をダウンロードします。

フェデレーションメタデータのアップロード
フェデレーションメタデータのアップロード

Test Service Providerの[Setting up SP initiated SSO]より、Azure ADからダウンロードした[フェデレーションメタデータXML]を選択し、[SUBMIT FILE]を押下します。

SP initiated URLの発行
SP initiated URLの発行

フェデレーションメタデータのアップロードが完了すると、ポップアップ上にURLが表示されます。
このURLをコピーしておきます。
このURLを踏むと、SP側からSAMLによるシングルサインオンが開始されます。

SP initiatedによるSSOの実行

前項でコピーしたURLにアクセスします。

アカウントの選択
アカウントの選択

既にAzure ADにログインしている場合、アカウントの選択にリダイレクトされるので、ログインするユーザを押下します。

SP initiatedによるシングルサインオン成功
SP initiatedによるシングルサインオン成功

アカウントを選択すると、パスワードが聞かれずにSAMLの情報ページにリダイレクトされればSP initiatedによるシングルサインオンが成功しています。

Attributeの確認
Attributeの確認

[Attribute Details]より、ディスプレイ名が表示されるので、確認します。

アサーションの確認
アサーションの確認

[Assertion Details]より、SAMLのステータスコードとアサーションIDを確認し、正常にアサーションできていることを確認します。
以上でSP initiatedによるシングルサインオンの実行は完了です。

まとめ

前回は、IdPからシングルサインオンを開始する方法でしたが、今回はSPからシングルサインオンを開始する方法をテストしました。
IdP initiatedによるシングルサインオンと大きな違いはEntity IDと応答URLをIdPに入れ込んであげる必要があるということでしょうか。
とはいえ、そこまで難しくはなさそうなのでIdP initiatedとSP initiatedの両方を使えるようになると、シームレスにサイトへログインができるため、非常に便利な状態になります。

おまけ

本ブログではVMwareやWindows、Linuxのインストール手順等も公開しております。
インフラエンジニアとして有益な記事や無益なコンテンツも作成しておりますので、通勤時間や休憩時間、休日のスキマ時間等に合わせて読んでいただけると幸いです。
また、Youtubeで解説動画も鋭意作成中です。本ブログで記事にしているものも動画にしようと思っておりますので、よろしくお願いいたします。
willserverのnoteも開設したのでフォローお願いします。

コメント

タイトルとURLをコピーしました