「小出しに色々と条件が公開されているが、結局必要なのかどうか分からない」という声をよく聞きますので、Office365におけるAD FS Proxyの展開について書きたいと思います。
Category Archives: Office365
Office365 Deployment Readiness Toolの紹介
Office365をオンプレミスのActive Directoryと連携してシングルサインオン環境を実現しようとすると、やれ「UPNサフィックスがxxx.localとかだとダメ」「シングルフォレストじゃなきゃダメ」「特定属性に禁則文字や文字数制限有り」など、細々とした事前のチェック事項が存在します。
最初は、1個1個チェックシート作って確認するなり、ある程度の所はスクリプト作って自動で調べるようにしなきゃダメかな~と考えていましたが、Microsoftがそう言った面倒な事を一気に調べてくれる「Office365 Deployment Readiness Tool」というツールをリリースしてくれましたので、紹介したいと思います。
PowerShellでのOffice365自動接続
Office365へは、ブラウザを使ったアクセスの他、PowerShellを利用してもログインすることができます。
通常はGet-Credentialコマンドレットを利用してID・Passwordを毎回入力するのですが、頻繁にアクセスする必要がある場合やタスクスケジューラーでの定期処理などを行いたい場合などは、以下の手順でログイン処理を自動化することができます。
PowerShellによるサブスクリプション一括割り当て
ディレクトリ同期ツールを利用して作成されたアカウントは、当初はサブスクリプションが有効になっていない状態で作成されます。つまり、Exchange OnlineやSharePoint Onlineのサービスは利用することができません。
ちなみに、ローカルでDisable状態のまま同期されたアカウントは、サインインが禁止された状態で作成されますので、Microsoft Onlineポータルにもログインできません。
Office365で特定ユーザのパスワードを無期限にする
Office365では、パスワードポリシーとして「8-16文字」「大文字小文字混在」「1文字以上の数字/記号」「有効期限90日」「過去1世代使用不可」「ユーザ名を含めない」などが設定されております。
ただし、運用上パスワードの変更周期を無期限(もしくは、管理者側のタイミングに)設定したい場合が有ります。例えば、ディレクトリ同期ツールに設定された管理用アカウントなどです。PowerShellでアクセスして、特定アカウントのパスワードの有効期限を変更することができます。
ディレクトリ同期ツールの同期間隔の変更
※注:このアーティクルの内容はMicrosoftよりサポートされていない手法になります。
Office365のディレクトリ同期ツールは、標準での同期間隔が3時間になっています。これにより、ローカルで作成したアカウントや変更したグループのメンバーシップの情報がOffice365側に同期されるまで、最大で約3時間のタイムラグが生じます。
BPOS時代のドキュメントですが、Microsoftの ディレクトリ同期を強制実行する を参照にして、%programfiles%Microsoft Online Directory SyncMicrosoft.Online.DirSync.Scheduler.exe.Config の内容を変更することにより、これを制御可能です。
Office365ディレクトリ手動同期スクリプト(リモート / WSH)
リモートで手動ディレクトリ同期の実行命令を出すスクリプトです。ディレクトリ同期サーバにPowerShell2.0を入れるのが一番楽な気もしますが、なるべくデフォルトのMicrosoftの環境をいじらないというポリシーなら、ということで。
Office365ディレクトリ手動同期スクリプト(PowerShell)
Office365のディレクトリ同期サービスでインストールされたCoexistence-Configurationスナップインを追加して、Start-Online-CoexistenceSync コマンドレットを叩くだけですけど。
Office365のディレクトリ同期で特定アカウントを非同期にする
※この手法はMicrosoftによりサポートされておりません
Office365のディレクトリ同期ツールを利用すると、ローカルのActive Directoryからユーザやグループの情報がOffice365側に同期されます。
この時、対象となるOUなどを絞ることはできず、フォレスト全体を対象として同期が実施されますが、一部条件に該当するのアカウント(例えば、isCriticalSystemObjectがTrueのオブジェクトなど)は同期されず、結果的にほとんどのビルトインアカウント(AdministratorやDomain Adminsなど)は同期されません。
しかし、DnsUpdateProxyグループやディレクトリ同期ツール専用のアカウントなど、同期する必要は無いのに同期されてしまっている物があって気持ち悪いと感じる方の為に、フィルタリングする方法を紹介します。
Office365のディレクトリ同期で残ったゴミを削除する
※この手法はMicrosoft社によってサポートされていません。
テスト用に作った検証環境から本番環境への移行や、Active Directoryのロールバックなどにより、ローカルのActive Directory上に無いユーザがOffice365側に残ってしまうことがあります。通常の利用の中ではなかなか発生しませんが、一度発生してしまうとなかなかハマってしまう事象です。