Azure AD Connectのソースアンカー属性について

こんにちは。サイオステクノロジーの小川です。

今回はAzure AD Connect(AADC)のソースアンカー属性に関するTipsを記載します。

Office365をSPとして、オンプレのIdPに認証を連携する際、Azure ADのアカウント属性のImmutable IDの値をIdP側に持っておく必要があります。ADからAzure ADへAADCを利用する際のソースアンカーの値がImmutable IDに連携されます。しかし、推奨設定ではmS-DS-ConsystencyGuidがソースアンカーとなっており、AADCで連携する際ADのmS-DS-ConsystencyGuidの値がBase64エンコードされて連携されてしまいます。

これではIdPで持っているImmutable IDの値とAzure ADのImmutable IDの値に差異が生まれ、認証ができなくなってしまいます。これを回避するために連携するADの属性に注意する必要があります。

構成

検証した構成は以下になります。

Azure AD Connectの動作

ソースアンカー属性の値はグローバルに一意である必要があり、特殊文字が含まれていないことなど、いくつか条件があります。

ソースアンカーがBinary属性の場合、ADからのインポート時に値がBase64エンコードされ、Azure ADへアカウントのエクスポート処理が実行されます。mS-DS-ConsystencyGuidはBinary属性になります。なぜBinary属性はBase64エンコードして連携されるかというと、Binary属性値をBase64エンコードすることで特殊文字が表示されないようにすることができるためにこのような動作になっています。

String属性ではBinary属性のようにBase64エンコードされません。なので、上記の制約を満たすようにADのソースアンカー属性とするString属性に値を設定します。ADからAzure ADへアカウント連携時にImmutable IDの属性値がADのソースアンカーに指定した属性値で連携することができます。

これでAD、Azure AD、認証プロバイダーでAzure ADのImmutable IDの値が一致するので、問題なくIdPで認証することが可能になります。

ご覧いただきありがとうございます! この投稿はお役に立ちましたか?

役に立った 役に立たなかった

0人がこの投稿は役に立ったと言っています。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です