第2回 Office 365とのアイデンティティ基盤連携を実現する(前):クラウド・サービスと社内システムとのID連携 最新トレンド(2/3 ページ)
クラウド・サービスであるOffice 365でも、社内のActive Directoryアカウントを利用してシングル・サインオンできると便利だ。でも、その方法は? 社内ADをID管理基盤として利用する場合の環境構築手順を詳しく解説する。
Office 365とのSSOを設定する
SSO用ドメインの追加が完了したら、いよいよSSOの設定を行う。それには、まずOffice 365の管理者ポータルを開き、左側のナビゲーション・メニューの[管理]より[ユーザー]をクリックしてユーザー管理画面を表示させる。次に「シングル サインオン」の[セットアップ]をクリックし、順番に設定を行う。
Office 365のユーザー管理画面
この画面からSSOのセットアップを始める。
(1)これをクリックすると、右側にユーザー管理画面が表示される。
(2)これをクリックすると、SSOからディレクトリ同期までに必要な作業手順の一覧が表示されるので、それに従って作業を進める。
[セットアップ]をクリックすると、SSOからディレクトリ同期までに必要な作業が順に記載されたページが表示される。そこから必要なソフトウェア・モジュールのダウンロードも可能だ。基本的には、そのページに記載されている手順通りに作業を進めることとなる。その中から操作が必要な以下の作業項目について解説する。
- AD FS 2.0をセットアップする
・フェデレーション・サーバ
・フェデレーション・サーバ・プロキシ - AD FS 2.0とOffice 365の間に信頼関係を構成する
・Microsoft Online Servicesサインイン・アシスタントをセットアップする
・PowerShell用Microsoft Online Servicesモジュールをセットアップする
・SSO用のドメインをフェデレーション・ドメインに変換し、信頼関係を構成する
●AD FS 2.0をセットアップする
AD FS 2.0自体の導入は「クラウド・サービスと社内ADのSSOを実現する(前)」で解説した手順と基本的に変わらないが、Office 365と連携する上で2点重要な変更がある。
1点目は、IISに設定するSSL証明書は自己署名入り証明書ではなく、外部証明機関から正規に発行された証明書を利用しなければならないという点である。クライアントにOutlookやLyncクライアントを利用する場合、Office 365側から社内のAD FSプロキシへの通信が発生するため、安全な通信を確立するためには正規の証明書を利用する必要があるためだ(自己署名入り証明書ではOffice 365側から信頼されない)。なお、トークン署名およびトークン暗号化用の証明書については、AD FS 2.0が自動的に設定する自己署名入りの証明書が利用できる。
また、Office 365側が信頼する証明機関についてはしばしば更新される可能性があるため、構築を計画する際にマイクロソフトへ問い合わせて確認することが望ましい。なお、本稿執筆用の環境ではドメイン管理および証明書の発行はともにGoDaddyという有名な企業を利用している。
2点目はAD FS 2.0に修正プログラム(ロールアップ)の適用が推奨される点だ(利用する機能によっては不要ではあるが)。本稿執筆時点でAD FS 2.0にはロールアップ2がリリースされている。これを適用することにより、親子関係にあるADドメイン環境のサポートおよび詳細なアクセス制御などの機能が追加されるため、適用しておくことを勧める。ロールアップ2のパッケージは、以下のWebページを開いて[Hotfix Download Available]をクリックしていくとダウンロードできる。
- Description of Update Rollup 2 for Active Directory Federation Services (AD FS) 2.0[英語](マイクロソフト サポート技術情報)
ダウンロード方法の詳細はTIPS「不具合を修正するホットフィックス修正プログラム(QFE)を入手する」が参考になる。
以上の点に留意しながら、まずは通常のAD FS 2.0サーバを社内に構築する。
また、今回の環境においては社外から社内へのアクセスを行うことが前提となるため、社内のAD FS 2.0サーバとは別に、AD FSプロキシの環境をDMZ上に構築する。構築にあたっては上記の2点だけではなく、次の前提事項も必要である。
構成要素 | 構成内容 |
---|---|
外部からのアクセスに利用するFQDN | 社内AD FS 2.0サーバのフェデレーション・サービス名と一致すること |
社内のAD FS 2.0サーバとの通信 | ・ファイアウォールでポート443/tcpを開放すること(DMZ⇒内部ネットワーク) ・社内のAD FS 2.0サーバの名前解決ができること(hostsファイルを利用) |
ドメイン参加 | 不要 |
SSL証明書 | 社内のAD FS 2.0サーバで利用したものと同じ証明書を利用 |
AD FSプロキシ構築の前提事項 |
上表のうち、社内とOffice 365を含む社外との接続に必要なファイアウォール開放設定については、随時更新されるので、定期的に次のマイクロソフトのドキュメントを確認する必要がある。
実際のインストール手順は、セットアップ・ウィザード中の「サーバーの役割」画面で[フェデレーション サーバー プロキシ]を選択することを除いて、通常のAD FS 2.0をインストールする手順と違いはない。
また、インストール完了後にAD FS 2.0管理コンソールから実行するAD FS 2.0フェデレーション・サーバ・プロキシの構成ウィザードでは、社内のAD FS 2.0サーバのフェデレーション・サービス名を指定する必要がある。その名称は、AD FS 2.0管理コンソールから次の手順で確認できる。
フェデレーション・サービス名の確認方法
社内のAD FS 2.0サーバでAD FS 2.0管理コンソールを開き、そのフェデレーション・サービス名を確認する。
(1)これを右クリックするとメニューが表示される。
(2)これをクリックすると、(3)を含むフェデレーション・サービスのプロパティが表示される。
(3)この名称をメモする。
上記の手順でフェデレーション・サービス名を確認したら、AD FS 2.0フェデレーション・サーバ・プロキシの構成ウィザードに戻って、その名称を入力する。
フェデレーション・サービス名の指定
AD FSプロキシのインストールが完了したら、その構成ウィザードを実行する。この画面では、社内のAD FS 2.0サーバのフェデレーション・サービス名を指定する必要がある。
(1)前述の手順でメモしたフェデレーション・サービス名を入力する。
●AD FS 2.0とOffice 365の間に信頼関係を構成する
AD FS 2.0のインストールが完了したら、Office 365(実際はOffice 365のID基盤であるWindows Azure Active Directory)との間に信頼関係を構成する必要がある。通常、信頼関係を構成するにはAD FS 2.0の管理コンソールから証明書利用者信頼の追加を手動で行うが、Office 365との連携についてはマイクロソフトによって専用のツールが提供されている。
- Microsoft Online Servicesサインイン・アシスタント(マイクロソフト ダウンロード・センター)
- PowerShell用Microsoft Online Servicesモジュール(マイクロソフト)
モジュールをダウンロードしたら、社内のAD FS 2.0サーバ上で、まずMicrosoft Online Servicesサインイン・アシスタント、次にPowerShell用Microsoft Online Servicesモジュールの順番にインストールを行う。
インストールが完了するとデスクトップ上に[Windows PowerShell 用 Microsoft Online Services モジュール]というショートカットが作成される。これを実行するとPowerShellが起動するので、そのプロンプトから、
$cred=Get-Credential
と入力・実行する。すると認証ダイアログが表示されるので、Office 365テナントの管理者IDとパスワードを入力する。
次に、以下のコマンドレットでOffice 365へ接続を行う。
Connect-MsolService -Credential $cred
完了後、引き続き以下のコマンドレットを実行し、Office 365上にあらかじめ設定しておいたSSO用のドメインをフェデレーション・ドメインに変換する。
Convert-MsolDomainToFederated -DomainName <ドメイン名>
コマンドレット実行が成功すると、
‘<ドメイン名>’ ドメインが正常に更新されました。
と表示される。
また、この状態でOffice 365の管理者ポータルから当該のドメインの状態を確認すると「ドメインの種類」が「シングル サインオン」に変更されていることが分かる。
ここまでで、SSOに関する設定は完了である。
Copyright© Digital Advantage Corp. All Rights Reserved.