Azure ADでShibboleth IdP(学認)にシングルサインオン(SSO)する方法

はじめに

こんにちは。Microsoft Tech Summit 2016に参加してきましたが、やはり皆さんAzure ADに興味があるようで、セミナーはほぼ満席でした。
今回はセミナー受講時に試してみたいと思ったAure ADとShibboleth IdP(OSS)を認証連携する方法をご説明します。

ゴールは、Azure ADで認証し学認(テストフェデレーション)にSSOできる事とします。学認との認証連携はShibboleth IdPがします。
shibo7
前提条件として、Shibboleth IdPサーバの構築が完了し学認に認証連携できている事とShibboleth SPの構築が完了している事とします。構築手順は学認サイトを参考にしてください。

参考サイト(IdP):https://meatwiki.nii.ac.jp/confluence/pages/viewpage.action?pageId=12158179
参考サイト(SP):https://meatwiki.nii.ac.jp/confluence/display/GakuNinShibInstall/SP

また、Shibboleth IdPはAzure ADのアプリケーション一覧にないため、カスタムアプリケーションを利用します。そのため、Azure AD Premiumのライセンスが必要です。

Azure AD(Premium)でShibboleth IdPへのSSOを有効にする

  1. Azureの旧ポータルにログインします。
    https://manage.windowsazure.com/
  2. Shibboleth IdPと認証連携するAzure Active Directoryを選択し、「アプリケーション」をクリックします。
  3. 画面下の「追加」をクリックします。
  4. 「ギャラリーからアプリケーションを追加します」をクリックします。
    shibo2
  5. 「カスタム」を選択し、「名前」に任意の値を入力します。
    shibo3
  6. 「シングルサインオンの構成」をクリックします。
  7. 「Microsoft Azure ADのシングルサインオン」を選択します。
    shibo4
  8. アプリケーション設定の構成で必要な情報を入力します。
    ※「詳細設定を表示します(オプション)」にチェックを付けると、サインオンURLが表示されます。myappsの画面で表示されるアイコンのリンク先を設定できます。
    ※サインオンURLなどhttpで指定するとエラーとなり次の画面に進めません。httpsで指定します。
    shibo5
  9. 「証明書のダウンロード(Base 64)」をクリックし、IdPの証明書をダウンロードします。ここでダウンロードした証明書をShibboleth SPに設定します。

    shibo6

  10. Azure ADとShibboleth IdPの認証連携設定は完了です。
  11. 「アカウントの割り当て」をクリックし、Shibbolethへのアクセスを許可するアカウントを指定します。

学認にSSOする

  1. ブラウザを起動、https://myapps.microsoft.com にアクセスし、先ほどShibbolethの権限を割り当てユーザでログインします。
  2. アプリより、「Shibboleth」をクリックします。ユーザ名/パスワードを入力することなく学認(テストフェデレーション)にログインします。

補足

今回は、Azure ADが渡すデフォルトのnameid formatはemailAddressです。そのため、Shibboleth SPに以下設定が必要です。

■attribute-map.xml
<Attribute name=”urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress” id=”emailAddress”>
<AttributeDecoder xsi:type=”ScopedAttributeDecoder”/>
</Attribute>
<Attribute name=”urn:oid:0.9.2342.19200300.100.1.3″ id=”emailAddress”>
<AttributeDecoder xsi:type=”ScopedAttributeDecoder”/>
</Attribute>

■shibboleth2.xml
<ApplicationDefaults entityID=”https://ShibbolethSPのFQDN/shibboleth-sp”
REMOTE_USER=”emailAddress eppn persistent-id targeted-id”>

 

sso シングルサインオン や 統合認証 などの導入イメージ については下記をご覧ください!
http://sios.jp/products/oss-integration/service/oss_on_cloud/authentication.html

 

Be the first to comment

コメント投稿

Your email address will not be published.


*