はじめに
AzureADでSAML連携を行う際、NameIDにUPNやメールアドレスを使用するのが一般的ですが、SP側のアカウント名がADアカウントのユーザ名(SAMAccountName)を設定される場合があります。
ここではSAMAccountNameを使用したSAML連携方法について記載します。
前提
本手順では、AzureADconnectを用いてID連携をされているケースが前提となります。
また、代替ログインIDを使用して連携しているケースでの手順となります。
AzureADのUPN:myname@hoge.com
オンプレADのUPN:K12345@hoge.local
※「K12345」は社員番号等を想定し、SP側のログインIDを社員番号としている場合
設定手順
□ 属性とクレームを設定
エンタープライズアプリケーション→シングルサインオンのセットアップで、
「一意のユーザID」を既定値の「userprincipalname」から変更するため、「編集」を選択します。
「一意のユーザ識別子(名前ID)」を選択します。
「名前識別子の形式」を既定値の「電子メールアドレス」から「指定なし」に変更します。
ソース属性を「user.onpremisessamaccountname」に変更します。
「user.onpremisessamaccountname」はオンプレの Azure AD から同期され SAM アカウント名
一意のユーザIDが「user.onpremisessamaccountname」に変更された事を確認
上記で、UPN属性ではなく、SAMAccountNameを用いたSAML連携が可能となります。
補足
上記のようなSAMAccountNameを用いてSAML連携を行う場合、SP側のNameIDフォーマットが
「urn:oasis:names:'tc:SAML:1.1:nameid-format:emailAddress」となっている場合不一致が生じ、SAML連携に失敗します。
今回の手順では、SP側が「urn:oasis:names:'tc:SAML:1.1:nameid-format:unspecified」に対応している場合に成功する事を確認しています。