ActiveDirectoryとAzureADでのHybridAzureADJoined設定と必要なADユーザーの情報変更
こんにちは
Office365を利用する中でActiveDirectory(AD)とAzureAD(AAD)の同期でHybridAzureADJoined設定が必要になるケースがあります。
例えば
- IntuneとMECM(旧名SCCM)の共同管理を利用する
- オンプレADドメイン参加済みWindowsPCのIntuneへの自動登録
- Windows10 E3 or Windows10 E5のライセンス自動適用
- WindowsVirtualDesktopで作成するデバイスをオンプレADに参加させる
等々、設定が必要になってくるケースがあることと、HybridADJionするWindowPCの状態にも依存していて最初に調べた時に結構困ったので、内容を記録しておきたいと思います!
※2はHybridAzureADJoin時に登録しないと自動登録されなくなるみたいで後から登録したいってなると再度HybridAzureADJoinさせないといけなくなるので事前に計画して実施するなら先に設定してください。
設定方法はこれです。
ということで今回は「AzureADConnectを利用したHybridAzureADJoined設定」について書いていきます!
まず初めにHybridAzureADJoinedは書くと長いので以後HAADJと略していきます!
そもそもAzureADにデバイスを参加させる方法は3つあります。
- AzureAD参加
- ハイブリッドAzureAD参加
- AzureAD登録
このあたりの違いについては僕が書くよりもとってもいい資料があるのでご紹介です!笑
※Micorosoft社の方が書いてくれておりめっちゃ読みやすいんです!
https://github.com/yusukekodama/PMActivities/blob/master/Webinar/Schedule.md
過去記事の以下のタイトルの内容を読んでくださいね!
Azure AD の新しいデバイス管理パターンを理解しよう
Modern device management with Azure AD
- HAADJの動き(AzureADConnectのみの場合)
- ActiveDirectoryとAzureAD間でAzureADConnectでユーザーオブジェクトを同期する
-
同期されたユーザーにてクライアントPCにログオンする←ここめっちゃ重要
- クライアントPCがActiveDirectoryとAzureADに情報を受け渡し(クライアントPC内のタスクスケジューラにて実行)、ActiveDirectory内の自身のクライアントPC(ログオンしたコンピューターオブジェクト)のUserCertificateに証明書の値を追加
- AzureADConnectは同期対象のOUかつコンピューターオブジェクトであれば「UserCertificate」に値が入っている場合、AzureADに同期
- AzureADにコンピューターオブジェクトが同期され、AzureADにてログオンされたユーザー情報との紐付けを実施
何が重要かというと2のPCでのログオンユーザーがAzureAD(Office365)のログオンユーザーIDと一緒でないといけないです!
下図みたいなパターンだとADのユーザー(ユーザーA)の社員番号が1234と仮定すると恐らく、WindowsPCにtest\1234もしくは1234@test.localでログオンしているかと思います。
AzureAD(Office365)には1234@test.localなんてユーザーはいないためHAADJは失敗します。
つまりADユーザーのUserPrincipalNameをAzureAD(Office365)と一緒にする必要があります。(今回は下図のとおりプレフィックスもサフィックスも変更しています。)
ADユーザーの情報を上記状態(UserPrincipalNameのみでOK)に変更すると、ユーザーはWindowsに「ユーザーA@test.co.jp」でログオンすることができるようになります。
するとAzureAD(Office365)のIDとも一致し、HAADJが成功します。
※ユーザーはWindowsへのログオン名が変化するため注意する必要があります。
~2020/08/20追記~
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
UPN変更さえしていれば、sAMAccountname(test\1234)でログオンしてもHAADJが成功しました!!知らなかった!そうだったのか
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
プレフィックスとサフィックスの変更による影響は以下に参考になるものがありました。
https://docs.microsoft.com/ja-jp/azure/active-directory/hybrid/howto-troubleshoot-upn-changes
HybridAzureADJoinの動作やAzureADの動作について細かな内容は以下に記載がありました。
ちなみにWindowsクライアントがADおよびAzureADにデバイス登録通信をするときにはWinHTTPを利用しているようなのでWinInetにしかプロキシ設定していないとかだと通信できずにエラーになるのでご注意を!!
※インターネットオプションのプロキシ設定だけだとNGなことあるよってことです!
- 構成
ActiveDirectoryサーバー兼AzureADConnectサーバー(WindowsServer2016)
※ActiveDirectoryとAzureADConnectサーバーのOSはWindows2012R2以降であればOKなようです。詳しくは以下URLをご確認ください。
https://docs.microsoft.com/ja-jp/azure/active-directory/devices/hybrid-azuread-join-managed-domains
- 設定手順
1.AzureADConnectのインストール
まずはAzureADConnect(AADC)をサーバーにインストールします。本番環境ではADサーバーにAADCをインストールすることは非推奨ですが、今回は検証用なのでADサーバーにインストールしちゃいます。
https://www.microsoft.com/en-us/download/details.aspx?id=47594
にアクセスして、DownLoadボタンからAzureADConnectのモジュールをダウンロード
ダウンロードしたmsiファイルをダブルクリックで実行
カスタマイズをクリック
インストール先の指定やSQLServerを利用する場合は以下の項目をクリック
※不要であればそのままインストールをクリック
今回サインオン方式は推奨の「パスワードハッシュの同期」としています。
この違いについても上記記載のMicrosoftの方の資料に記載があります。(神かよ!)
AzureAD(Office365)のグローバル管理者のアカウントIDおよびパスワードを入力
オンプレADの情報追加
フォレストより対象のドメインを選択して「ディレクトリの追加」をクリック
オンプレADのエンタープライズ管理者(EnterPrise Admin)のユーザー情報を入力しOKをクリック
構成済みディレクトリに反映されていることを確認し次へをクリック
ユーザープリンシパル名のプルダウンでADユーザーのどの属性を利用してAzureADのIDを生成するかを決めます。
※ADドメイン(test.local)はAzureAD(Office365)のカスタムドメインとして存在していないので、以下画面のような警告が表示されます。
今回は別理由にてADユーザーのMail属性(電子メール)を利用したのでこのまま進みます。
userPrincepalNameで同期を実施する予定があり、ADとAzureADのUPNサフィックス(ドメイン名)が違う場合は、事前にADサーバーにてUPNサフィックスを追加し同期する各ADユーザーの情報を修正する必要がありますので、注意してください。
手順は下に記載します。
ADドメイン(test.local)、AzureADカスタムドメイン(test.co.jp)のような環境でUPNサフィックス追加なしでUserPrincicalNameでUserA@test.local(test\UserA)の同期を実施するとUserA@xxx.onmicrosoft.comというアカウントとしてAzureADに作成されます。
特定のOU配下のみIDを同期するかどうかを指定できます。
今回はOffice365というOUの配下にUsersとComputersというOUを作成し、その中にいるユーザーやコンピューターのみAzureADに同期をさせます。
HAADJではコンピューターオブジェクトを同期する必要があるため、OU「Office365」内のOU「Computers」にコンピューターオブジェクトを配置しています。
※以下図は参考情報
「選択したドメインとOUの同期」をクリックし、その配下の同期するOUのみにチェックをつけ、次へをクリック
※個人的には特定OUだけ同期するとしておいた方が、ADにはユーザーを作成したいが、Office365側は不要みたいなケースに対応できるのでいいのかな?って思っています。同期した後Office365側だけユーザーが不要になったときに同期対象OUからユーザーを移動するとOffice365側のユーザーのみが削除されるので、ADユーザーだけは残すってこともできます。
ADユーザーとAzureADユーザーのマッチを何で実施するかを指定しています。
今回はADユーザーのメール属性をAzureADユーザーのIDとして同期しているのでこのまま次へをクリック
今回フィルターを利用しないので次へをクリック
オプション機能の設定画面です。
デフォルトで同期されるユーザー情報に加えて追加で情報を同期したい時などは、このオプションから追加属性を指定します。
今回は実施しないので次へをクリック
そのままインストールをクリック
※AADCの冗長化を実施する際は、ActiveなAADCは1台である必要があります。
2台目以降の構築では以下の「ステージングモードを有効にする」にチェックを入れてインストールします
終了をクリック
ここまでで、AzureADConnectのインストールは完了です。
この項目まで終わるとADユーザーがAzureADに同期されます。
2.HybridAzureADJoined設定
デスクトップに作成されたAzureADConnectをダブルクリックで実行
構成をクリック
デバイスオプションの構成を選択し次へをクリック
次へをクリック
AzureADのグローバル管理者のアカウントを入力
ハイブリッドAzureAD参加の構成を選択し次へをクリック
「Windows10以降のドメインに参加しているデバイス」にチェックを入れ次へをクリック
対象のフォレストにチェックを入れ追加をクリック
エンタープライズ管理者(EnterPriseAdmins)のユーザー情報を入力
次へをクリック
構成をクリック
終了をクリック
以上でHybridAzureADJoinedの設定が完了です。
3.ADユーザーの情報変更
上記「HAADJの動き」にて記載したように今回はADユーザーのプレフィックスおよびサフィックスがAzureAD(Office365)と違うことを想定しているので、子の変更も実施します。
ADサーバーにて「ActiveDirectory ドメインと信頼関係」をクリック
ActiveDirectory ドメインと信頼関係を右クリックし、プロパティをクリック
AzureAD(Office365)で利用するカスタムドメインを追加
※今回はtest.co.jpとしています。
この設定(UPNサフィックス追加)を実施するとADユーザーはサフィックス設定にてtest.co.jpが選択できるようになります。
ActiveDirectoryのユーザーとコンピューターを起動し、変更対象のユーザーのプロパティを表示します。
以下のようにプレフィックスを「1234」から「ユーザーA」サフィックスを「test.local」から「test.co.jp」に変更します。
これでこのユーザーはWindowsに「ユーザーA@test.co.jp」でログオンできるようになり、HAADJが成功します!!
~2020/08/20追記~
上記状態ならtest\1234でログオンしてもHAADJ成功した!!
~~~~~~~~~
え!!!!!これ全ユーザーやるの??ってなりますよね・・・・笑
それはめっちゃ大変なので、次回は「PowershellでADユーザーのUPNプレフィックスおよびサフィックスを一括変更する」を書きたいと思います!
上記内容は以下に書いておきました。
やってみたけど、うまくいかないよって場合はJapan Azure Identity Support Blogにトラブルシューティング手順があるので非常に参考になると思います(相変わらず丁寧な記載なのでマジ助かる!)
https://jpazureid.github.io/blog/azure-active-directory/troubleshoot-hybrid-azure-ad-join-managed/
- 最後に
Twitterでも情報発信したいと思いますので、興味があったらフォローしてください!