troushoo

自己証明書を利用したADFS 連携で、Azure ポータルにローカルのドメインユーザーでログイン

概要

自己証明書を利用したADFS 連携で、Azure ポータルにローカルドメインユーザーでログインする方法を紹介します。

内容

Azure 上に 2つのVM を作成し、Azure ポータルにローカルのドメインユーザーでログインさせる方法を紹介します。
今回利用する環境は以下です。


以下の手順が必要です。
1. ドメイン名の取得
2. 証明書の作成
3. ルート証明書に登録
4. 代替UPN サフィックスの設定
5. ローカルドメインユーザーの作成
6. ADFS サービス用の内部DNS の設定
7. NSG の設定
8. Azure AD の設定
9. Azure AD Connect を実行し、ローカルドメインユーザーをAzure AD と同期
10. ローカルドメインユーザーで、Azure ポータルにログイン

1. ドメイン名の取得
インターネットから、ドメインにアクセスできるよう、ドメイン名の取得を行います。
freenom にて、無料でドメイン名を取得することもできます。


2. 証明書の作成
取得したドメインに対して、証明書を作成します。自己証明書を用いることも可能でした。
自己証明書は、SelfSSL7を用いて作成できます。

2.1. Microsoft のIIS チームのサイトから、SelSSL7 をダウンロードします。


2.2. 以下のコマンドを実行します。

selfssl7.exe /N cn=tradfs.tk;cn=dcxxx.trdn.local /K 2048 /V 3652 /X /F C:\tradfscert3.pfx /W 1qazZAQ!

各々の意味は以下です。
引数 意味
/N cn=tradfs.tk;cn=dcxxx.trdn.local コモンネームを指定します。
/K 2048 鍵の長さを指定します。
/V 3652 証明書が有効である日数を指定します。
/X 証明書をPFX ファイルでエクスポートします。
/F C:\tradfscert3.pfx 証明書のファイル名を指定します。
/W 1qazZAQ! PFX ファイルのパスワードを指定します。

3. ルート証明書に登録

自己証明書の場合は、ルート証明書に登録する必要がありました。以下の手順をWAP サーバー、ADFS サーバー両方で実行します。

3.1. 上記2 で作成した、自己証明書をダブルクリックします。


3.2. 「Store Location」に「Local Machine」を選択します。


3.3. インポートする証明書のパスを指定します。
通常既に指定されているので、そのまま「Next」をクリックします。


3.4. 証明書作成の際に指定したパスワードを入力し「Next」をクリックします。


3.5. 自己証明書を、ルート証明書に登録するために、「Place all certificates in the following store」を選択し、「Trusted Root Certification Authorities」を選択します。



4. 代替UPN サフィックスの設定
Azure にログインさせるには、UPN サフィックスがドメインと同じである必要があります。

4.1. ドメインコントローラーで「Active Directory Domains and Trusts」(domain.msc) を起動します。

4.2. 「Active Directory Domains and Trusts」を右クリックし「Properties」をクリックします。


4.3. 「Alternative UPN suffixes」に上記1 で取得したドメイン名を入力します。


5. ローカルドメインユーザーの作成
5.1. ドメインコントローラーで「Active Directory Users and Computers」(dsa.msc) を起動します。

5.2. 「Users」から新規ユーザーを作成します。


5.3. ユーザー作成時「User logon name」は、上記1 で取得したドメインを指定します。


6. ADFS サービス用の内部DNS の設定
ADFS サービスに、内部DNS で名前解決できる必要があります。

6.1. ドメインコントローラーで「DNS Manager」(dnsmgmt.msc) を起動します。

6.2. 「Forward Lookup Zones」を右クリックし「New Zone」からウィザードを起動し、上記1で作成したゾーンを作成します。


6.3. 作成したゾーンを右クリックし「New Host (A or AAAA)」から、ADFS の内部IP 用のA レコードを作成します。


(念のため、後述するTXT のエントリーも別途作成しました)

7. NSG の設定
Azure 上で構築する際は、NSG を設定し、必要なポートを開ける必要があります。
今回は、下図のように開けております。必要なポートについては、マイクロソフトのサイトでも確認できます。


8. Azure AD の設定
8.1. クラシックポータルにログインし「ACTIVE DIRECTORY」の規定のディレクトリを選択し「ドメイン」の「追加」をクリックします。


8.2. 上記の1 で取得したドメイン名を入力し、「このドメインを構成して、ローカル Active Directory にシングル サインオンします。」にチェックを入れます。


8.3. 「[ディレクトリ統合] ページに今すぐアクセスします。」にチェックを入れ、ウィザードを終了させます。


8.4. 「ディレクトリ統合」のタブに移動するので、「2 Azure AD Connect をインストールして実行する」からAzure AD Connect をダウンロードします。


9. Azure AD Connect を実行し、ローカルドメインユーザーをAzure AD と同期
9.1. 上記の8.4. でダウンロードしたAzure AD Connect を、Azure 上に作成したドメインコントローラ上で実行します。

9.2. 使用許諾にチェックをいれます。


9.3. 「Customize」をクリックします。


9.4. 「Install required components」はデフォルトの設定のまま「Install」をクリックします。


9.5. 「User sign-in」で「Federation with AD FS」にチェックを入れます。


9.6. Azure AD の全体管理者のアカウントでAzure AD に接続します。


9.7. ローカルのディレクトリに接続します。


9.8. Azure AD のユーザー名として使用する属性として「userPrincipalName」を指定します。


9.9. Domain やOU をフィルタすることも可能です。


9.10. ユーザーの特定方法を指定します。


9.11. ユーザーやデバイスをフィルターすることも可能です。


9.12. オプションの設定を、必要に応じ行います。


9.13. 上記2 で作成した、AD FS 用の証明書を登録します。


9.14. AD FS をインストールするサーバーを指定します。


9.15. Web application proxy をインストールするサーバーを指定します。


9.16. ドメイン管理者のアカウントを指定します。


9.17. AD FS のサービスアカウントを指定します。


9.18. Azure AD のドメインを指定します。
この指定したドメインの所有者である必要があります。
そのため、DNS サーバーにレコードを登録する必要があります。TXT だけで問題ありませんでした。



9.19. 「Install」をクリックします。


以下のような「Create Federated AAD Trust」のエラーが出てきたら、まだDNS の設定が反映されていない状態です。
しばらく待ってRetry を実行します。


筆者の環境では以下のエラーが表示されましたが、Retry することで回避できました。


9.20. インストールが完了します。
DNS の設定を確認するため、Verify をクリックします。


9.21. DNS の確認が行われます。


10. ローカルドメインユーザーで、Azure ポータルにログイン
10.1. ローカルユーザーが同期されているかを確認します。
筆者環境では、AD Connect のウィザードが正常終了したにも関わらず、ローカルユーザーが同期されていない場合もありました。その際は、再度AD Connect を実行し、再度設定をやり直すとうまくいきました。


10.2. ローカルのドメインユーザーに共同管理者の権限を与えます。


10.3. ローカルのドメインユーザーでAzure ポータルにログインします。


10.4. 自己証明書を利用しているので、セキュリティの警告が出ることもありますが、そのまますすめます。


10.5. パスワードを入力します。


10.6. ドメインのローカルユーザーで、Azure ポータルにログインできます。



情報元
Azure AD Connect のカスタム インストール

関連記事
Azure File Storage をDocker コンテナにボリュームとしてマウントするMicrosoft のドライバー
  1. 2016/07/31(日) 23:39:11|
  2. Azure
  3. | トラックバック:0
  4. | コメント:0
<<暗号化される前のHTTPS 通信を、追加ソフトインストールなく確認する方法 | ホーム | 一般公開されたWinDBG のデバッガーエクステンション MEX>>

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://troushoo.blog.fc2.com/tb.php/300-41510855
この記事にトラックバックする(FC2ブログユーザー)

スポンサーリンク

最新記事

月別アーカイブ

カテゴリ

ツール (92)
ネットワーク (76)
Visual Studio (56)
SOS・Psscor2/Psscor4 (25)
WinDbg (25)
Linux (24)
Azure (17)
Tips (20)
英語 (1)
About Me (1)
未分類 (0)

全記事表示リンク

全ての記事を表示する

検索フォーム

RSSリンクの表示

リンク

このブログをリンクに追加する