Office 365はAzure Active Directory(Azure AD)と呼ばれる認証サービスの無料サブスクリプションが含まれていることで、ユーザーID管理を行っています。Azure ADとは通常オンプレミスで運用するActive DirectoryをAzure上に構築したもので、主にクラウドサービスでのID統合管理やシングルサインオン(SSO)を実装するための認証サービスです。
では、既にオンプレミスでActive Directoryを運用していてローカルシステムのSSOを実装している環境では、どのようにしてOffice 365を同じ認証基盤に統合すればよいのか?今回はその点についてお伝えしましょう。
Office 365とActive Directoryを統合する簡単な方法
結論としてはAzure ADとActive Directoryを接続することで、Office 365をオンプレミスの認証基盤に統合することができます。そのためにはまず「Azure AD Connect」という同期ツールが欠かせません。ちなみにAzure AD Connectは無料でダウンロードできるツールであり、「Microsoftのダウンロードページ」にて公開されています。
このAzure AD Connectを使用した最も簡単な接続方法をご紹介しましょう。
まずはAzure AD Connect用のサーバー(ドメイン参加済み)にローカル管理者としてサインインをしてダウンロードページからAzure AD Connectをダウンロードします。ダウンロードした「AzureADConnect.msi」を実行したら簡単設定を行うを選択しましょう。これはAzure AD Connectの設定を自動で行うためのオプションで、パスワード同期が自動で構成されます。
次にAzure ADに接続するために全体管理者権限を持ったユーザー情報を入力し、次にActive Directoryドメインサービスに接続するためにEnterprise Admins権限を持つユーザー情報を入力します。最後にインストールを実行して完了です。
以上の手順でOffice 365がオンプレミスのActive Directoryに統合され、単一IDとパスワードでサインオンできるはずです。
より詳しいインストール手順に関してはMicrosoftが公開している「ドキュメント」をご参照ください。
ハードマッチによるOffice 365とActive Directoryの統合
Office 365をご利用いただくと自然とAzure AD上でユーザーアカウントが管理されます。これを既存のローカルアカウントを管理しているActive Directoryと統合したいというケースは非常に多くあります。もしも先にご紹介した方法での統合ができなかった場合は、ハードマッチによる統合を行ってみてください。
通常はActive Directoryで同期対象となるアカウントのメールアドレスまたはUPN(User Principal Name)名を一致させた状態で同期を行います。ちなみにこれをソフトマッチと呼びます。しかし、Active DirectoryとAzure ADで管理されているアカウントメールアドレスやUPNが異なると、これを紐づけた上でオブジェクトの一意性を確保するためのID情報「Immutable ID」を紐づける必要があります。これがハードマッチと呼ばれる統合方法です。
以下にその手順をご紹介します。
手順①Active DirectoryにてBase64でエンコードされたObjectGUIDを確認する
- Active Directoryの任意のドメインコントローラー(DC)上で「管理ツール」「Active Directoryユーザーとコンピューター」を開く
- メニューから「表示」「拡張機能」にチェックを入れる
- 該当ユーザーアカウントのプロパティを開く
- 「属性エディター」タブを開き、"distinguishedName" 値を選択して「表示」をクリック
- "distinguishedName" 値の内容をコピーする
- コマンドプロンプトを起動し、次のコマンドを実行する「ldifde -f c:\ ldifde_user.txt -d "手順Eでコピーした内容" -p subtree」
- 出力されたファイルを開いてObjectGUIDの値を確認する
手順②Azure AD上でImmutableIdが設定されてないことを確認
- インターネットに接続している任意のパソコン上で「Windows PowerShell用Windows Azure Active Directoryモジュール」を管理者として実行する
- 起動したPowerShellにて「Connect-MsolService」コマンドを実行する(認証ダイアログが表示されたら管理者ユーザーの資格情報を入力し「OK」ボタンをクリック)
- 次のコマンドを実行する「Get-MsolUser -UserPrincipalName "対象ユーザーの UPN" | fl」
- 出力されたファイルを開いてImmutableの値を確認する
手順③ImmutableIdを手動で設定
- インターネットに接続している任意のパソコン上で「Windows PowerShell用Windows Azure Active Directoryモジュール」を管理者として実行する
- 起動したPowerShellにて「Connect-MsolService」コマンドを実行する(認証ダイアログが表示されたら管理者ユーザーの資格情報を入力し「OK」ボタンをクリック)
- 次のコマンドを実行する「Set-MsolUser -UserPrincipalName <対象ユーザーの UPN> -ImmutableId <Active DirectoryユーザーのBase64エンコードされたobjectGUID値>」
- 次のコマンドを実行する「Get-MsolUser -UserPrincipalName "対象ユーザーの UPN" | fl」
手順④手動で差分ディレクトリ同期を実施
- ディレクトリ同期サーバーに管理者権限でログインする
- 管理者のPowerShellを起動して次のコマンドを実行する「Start-ADSyncSyncCycle -PolicyType Delta」
- Office 365管理ポータルにて作業対象ユーザーの「同期の種類」がクラウドからActive Directoryに変わったことを確認する
以上でハードマッチによるOffice 365とActive Directoryの統合は完了です。既存のローカルシステム環境やOffice 365の利用状況によって最適な統合方法が異なるので、自社環境の状況把握を行ってから適切な方法でOffice 365とActive Directoryを統合しましょう。