Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

1/5 ADFS 2.0 を使用してWindows Azure との SSO を実現しよう v1.1

5,760 views

Published on

2010/11/2 に開催した TechFieldersセミナーで使用した資料 1/5 です。

[構築作業 前篇] インフラ編
1.AD FS 2.0 の基礎知識
2.これから作成する環境について
3.AD FS 2.0 のセットアップ
-WinSv 2008 R2 のセットアップ
-Active Directory のセットアップ
-SQL Server のセットアップ
-IIS のインストールと構成
-NLB のインストールと設定

Published in: Technology

1/5 ADFS 2.0 を使用してWindows Azure との SSO を実現しよう v1.1

  1. 1. 1 SEMINAR COLUMNS INTERVIEW LIGHTNING TALK
  2. 2. 2 Cloud TechCenter インフラ担当者のためのクラウド情報サイト http://technet.microsoft.com/ja-jp/cloud/default.aspx
  3. 3. 3 「クラウドの素朴な疑問」にお答えします bing で検索!「クラウドの素朴な疑問」
  4. 4. 4 本日の予定 • 13:30 - 17:00 「 ADFS 2.0 を使用して   Windows Azure との SSO を実現しよう」安納 • 17:00 - 17:30 「クラウド時代の「 ID 管理」と「認証セキュリティ」」  野村総合研究所 基盤ソリューション事業本部 勝原氏 • 17:30 - 18:00 ライトニングトーク • 18:00 - 19:00 懇親会
  5. 5. 5 AD FS 2.0AD FS 2.0 を使用してを使用して Windows AzureWindows Azure とのとの SSOSSO を実現しようを実現しよう マイクロソフト株式会社 エバンジェリスト 安納 順一(あんのう じゅんいち) http://blogs.technet.com/junichia/ twitter @junichia 第第 1.11.1 版版 2010.11.052010.11.05
  6. 6. 6 本日のテーマと内容 AD FS 2.0 を使用して、 Windows Azure 上に展開した アプリケーショ ン への シングルサインオン を構成します。 1.AD FS 2.0 のインストールおよび環境設定 2.Windows Azure の環境設定 3.クレームを認識するアプリケーションの作成 4.アプリケーションを Windows Azure 上に展開 途中、操作をお手伝いいただくこともあります。 3 .5 時間~4時間を要しますが、根性でのりきりましょう! 何かと難解な AD FS 2.0 の概念と操作方法を、 実際の構築手順を体験しながら理解しましょう
  7. 7. 7 Agenda [ 構築作業 前篇 ] インフラ編 1.AD FS 2.0 の基礎知識 2.これから作成する環境について 3.AD FS 2.0 のセットアップ a. WinSv 2008 R2 のセットアップ b. Active Directory のセットアップ c. SQL Server のセットアップ d. IIS のインストールと構成 e. NLB のインストールと設定 f. AD FS 2.0 用証明書の準備 g. IIS の SSL を有効化 h. AD FS 2.0 のインストール i. AD FS 2.0 初期構成の準備 j. AD FS 2.0 の初期構成 4.AD FS 2.0 管理コンソールについ て [ 構築作業 中編 ] アプリケーショ ン編 5.クレーム対応アプリとは ? 6.クレーム対応アプリの作成と展開 ~ オンプレミス編 a. 展開先 IIS の準備 b. 開発環境の準備 c. アプリケーションの開発 d. IIS にアプリを展開 5.クレーム対応アプリの作成と展開 ~クラウド編 a. Windows Azure の準備 b. アプリケーションの開発 c. Windows Azure にアプリケーションを 展開 [ 構築作業 後編 ] AD FS Deep Dive 8.クレームパイプラインとクレーム ルール 9.カスタムルールの設定 10.AD FS 2.0 の監査
  8. 8. 8 AD FS 2.0AD FS 2.0 の基礎知識の基礎知識 AD FS 2.0AD FS 2.0 の役割と目的について復習しておきましょうの役割と目的について復習しておきましょう
  9. 9. 9 クラウド ID を使用する環境 企 業 間 アプリケーション在るところ「 ID 」在り 組 織 間
  10. 10. 10 予測される ID 管理の問題点 • 見えない利用者の ID 管理 / 認証 / 承認 • 異なる認証方式の相互運用 • ディレクトリサービスの設置が困難 クレームベース セキュリティ フェデレーション セキュリティ モデル
  11. 11. 11 健保番号 / 免許証番号 / 住民票 入入 国国 日本国政府 クレームベースセキュリティの例~入国審査 出出 国国 発 行 パスポート •発行国 •氏名 •有効期限 •旅券番号 •写真 •出国印 米国政府 本人 •顔 •指紋 入国申請書 •滞在期間 •滞在先 パスポート ・ ・ 空港 信頼 ビザ •滞在可能期間 信頼
  12. 12. 12 入入 国国 日本国政府 クレームベース セキュリティ モデル 出出 国国 発 行 パスポート •発行国 •氏名 •有効期限 •旅券番号 •写真 •出国印 米国政府 本人 •顔 •指紋 入国申請書 •滞在期間 •滞在先 パスポート ・ ・ 健保番号 / 免許証番号 / 住民票 信頼 ビザ •滞在期間 クレーム プロバイダー クレーム クレーム クレーム クレーム クレーム クレーム 資格 情報 セキュリティ トークン オーソリティ リライング パーティ クレーム クレーム クレーム クレーム クレーム クレーム 署名 サブジェクト 空港 信頼 リ ソー ス
  13. 13. 13 クレーム(主張)とは • アプリケーションに渡すユーザー自身の属性 • アクセス承認に使用される
  14. 14. 14 セキュリティ トークン • パッケージ化されたクレーム • 発行者の署名によって信頼性を担保 • STS ( Security Token Service ) が生成する セキュリティトークン
  15. 15. 15 認証機関 UsersUsers サービスプロバイダー クレームベース セキュリティを使用した ID 連携 (フェデレーション)と SSO の実現 • 利用者は事前に 「認証機関」で認証を済ませている • 「サービスプロバイダー」側のアプリケーションは 「認証機関」が発行し たトークンをベースにアクセス権を決定する(再認証は行わない) ② 本人証明 ③Token 提示SecuritySecurity TokenToken UsersUsers ④ID と ID を対応付ける 利用者 サービスプロバイダー は 認証機関 を信頼している ④ トーク ン解析 / ア クセス権決 定 ④ トーク ン解析 / ア クセス権決 定
  16. 16. 16 IdP/CP RP/SP ID 連携(フェデレーション)の基本構成 利用者 RP/SP は CP/IdP を信頼している セキュリティ トークン サービス セキュリティ トークン サービス • 認証機関( IdP/CP )とサービスプロバイダー( RP/SP )は トークンを処理 するためのサービスを持っている(セキュリティトークンサービス) • トークンは「セキュリティ トークン サービス( STS )」によって発行される • トークンに格納するクレームは「クレームストア」に格納されている クレーム ストア SecuritySecurity TokenToken IdP : Identity Provider CP : Claim Provider RP : Relying Party SP : Service Provider
  17. 17. 17 SSO を実現するための構成要素 認証サーバー •ユーザーを認証する •AD FS 2.0 サービスを認証する STS( セキュリティトークンサービス ) •AD 認証されたユーザーに対してセキュリティトークンを発 行する •アプリケーションにセキュリティトークンを渡す クレームストア •セキュリティトークンに組み込むユーザー属性が格納され ている AD DS AD FS 2.0 AD DS/ldap SQL Server WS-Federation/WS-Trust に対応したアプリケーション※ WIF は (現時点では) SAML 2.0 に対応していない WIF
  18. 18. 18 基本的な構成 IdP/CP AD DS クレームストア AD FS 2.0 RP/SP Application 信頼 AD FS 2.0 IdP : Identity Provider CP : Claims Provider RP : Relying Party SP : Service Provider 企業 A 企業 B • それぞれの企業に STS を設置 • STS 間でフェデレーション信頼を構築 ②Token 発 行 ③ Token 発 行① 認 証 WIF AD DS ④ ア ク セ ス クレーム ストア
  19. 19. 19 基本的な構成~簡易版 IdP/CP AD DS クレームストア RP/SP Application 信頼 企業 A • 同一企業内であれば STS は 1 台で構築可能 ②Token 発 行 ③ ア ク セ ス ① 認 証 WIF AD FS 2.0 1 台のサーバーで構築
  20. 20. 20 RP/SP …アプリケーションがクラウドだったら IdP/CP AD DS クレームストア AD FS 2.0 企業 A • クラウドアプリでも考え方は変わらない ApplicationApplication ②Token 発 行 ③ ア ク セ ス ① 認 証 WIF 1 台のサーバーで構築
  21. 21. 21 AD FS 2.0 関連コンポーネントの配置と役割 intranet DMZ AD FS loadbalance AD DS 認証 STS 構成 DB 構成 DB AD FS PROXY loadbalance R-PROXY STS : Security Token Services R-PROXY : Reverse Proxy Internet クレーム ストア cluster AD DS or SQL Server or ldap services
  22. 22. 22 これから作成する環境これから作成する環境
  23. 23. 23 システム構成図 AD DS AD FS 2.0 SQL 2008 R2 Azure SDK AD FS 2.0 DNS Application VS 2010 WIF SDK Azure Tools NLB システムの特徴 •AD FS 2 台構成( NLB を使用) •構成 DB として SQL Server を使用 基本構成情報 •ドメイン名 : tf.com •管理者 : administrator •管理者パスワード: P@ssw0rd tf20101102-01 tf20101102-02 tf20101102-03 tf20101102-VS IIS IIS IIS tfadfs ApplicationApplication
  24. 24. 24 手順概要 1. Windows Server 2008 R2 のインストールと構成 2. Active Directory のインストールと構成 3. SQL Server のインストール 4. IIS のインストール 5. Windows Azure サブスクライブ 6. NLB のインストールと構成 7. AD FS 2.0 展開の準備 8. AD FS 2.0 のインストールと初期構成 9. アプリケーションの開発 10. Windows Azure 上にアプリケーションを展開 11. クレームルールのカスタマイズ 済 済 済 済 済 解 説 構 築
  25. 25. 25 AD FS 2.0AD FS 2.0 のセットアップのセットアップ a. WinSv 2008 R2 のセットアップ b. Active Directory のセットアップ c. SQL Server のセットアップ d. IIS のインストールと構成 f. NLB のインストールと設定 g. AD FS 2.0 用 証明書の準備 h. IIS の SSL を有効化 i. AD FS 2.0 のインストール j. AD FS 2.0 初期構成の準備 ⑪ AD FS 2.0 の初期構成
  26. 26. 26 ⑤NLB のインストールと設定 AD FS 2.0AD FS 2.0 のセットアップのセットアップ
  27. 27. 27 NLB の仕組み NLB NLB heartbeat heartbeat NLBクラスター 名 前 解 決 名 前 解 決 応答 host1 host2 NLB : Network Load Balance • OS 標準機能として提供 • 全てのポートをロードバランス対象にすることができる • マルチホームの場合、対象となるアダプターを選択可能 • アダプターが持っている元のアドレスは保持される NICNIC NICNIC NICNIC NICNIC
  28. 28. 28 NLB 機能の追加 [ 機能 ]-[ ネットワーク負荷分散 ] ※NLB を使用するすべてのホストで実施する
  29. 29. 29 NLB の設定( 1 台目のホスト)① [ 管理ツール ] ー [ ネットワーク負荷分散マネージャー ] 負荷分散クラスターに 追加したいネットワー クアダプターを選択 負荷分散クラスターに 追加したいネットワー クアダプターを選択
  30. 30. 30 NLB の設定( 1 台目のホスト)② 共有するアドレ スを追加 共有するアドレ スを追加
  31. 31. 31 NLB の設定( 1 台目のホスト)③ クライアントは この情報を使用 してアクセスす る クライアントは この情報を使用 してアクセスす る 再起動しましょう
  32. 32. 32 NLB の設定( 2 台目のホスト) 以降、 1 台目と同じ 追加したいホス トを指定 追加したいホス トを指定
  33. 33. 33 DNS に NLB クラスターのホスト名を追加 tfadfs.tf.com 192.168.200.10
  34. 34. 34 完成形
  35. 35. 35 完成後のネットワーク構成 tf20101102-01 (192.168.100.1) NLB NLB heartbeat heartbeat tfadfs.tf.com 名 前 解 決 名 前 解 決 tf20101102-02 (192.168.100.2) tfadfs.tf.com(192.168.200.10)
  36. 36. 36 ⑥ AD FS 2.0 用 証明書の準備 AD FS 2.0 のセットアップ
  37. 37. 37 AD FS 2.0 に必要な証明書 • サービス通信証明書( SSL に使用) • AD FS の通信を暗号化するために使用 • 既定では IIS の SSL 用証明書が使われる • サブジェクトがフェデレーションサービス名と一致していること ※サーバーファーム構成では注意が必要 • トークン署名証明書 • AD FS が発行するトークンの署名 • 公開メタデータの署名 • RP から送信されるアーティファクト解決要求の署名 • 初期構成時に SHA1 を使用して自動生成される • トークン暗号化解除証明書 • AD FS が受け取ったトークンの暗号化を解除するために使用 • IIS の SSL 証明書が既定の暗号化解除証明書として使用される 今回は自己署名証明書を使用します
  38. 38. 38 IIS を使用した自己署名証明書の作成 サブジェクト(主 体)がホスト名 サブジェクト(主 体)がホスト名
  39. 39. 39 NLB 環境で ユーザーから見えるサーバーは tf20101102-01 (192.168.100.1) NLB NLB heartbeat heartbeat tfadfs.tf.com 名 前 解 決 名 前 解 決 tf20101102-02 (192.168.100.2) tfadfs.tf.com(192.168.200.10) こいつ
  40. 40. 40 自己署名証明書を作成するツール .NET Framework SDK •makecert.exe ← サブジェクトを指定できる •pvk2pfx.exe makecert .CER .PVK pvk2pfx .PFX
  41. 41. 41 自己署名証明書の作成 1. Visual Studio をインストールしたマシンにログオン 2. [ スタート ]-[ すべてのプログラム ]-[Microsoft Visual Studio 2010]-[Visual Studio Tools]-[Visual Studio コマンドプロンプト ] を起動 3. 証明書( .cer )ファイルとプライベートキーファイル( .pvk )ファイルを作成 4. .pvk と .cer から .pfx ファイルを作成する makecert -r -pe -n "CN=tfadfs.tf.com" -sky exchange “tfadfs.tf.com.cer" -sv “tfadfs.tf.com.pvk" makecert -r -pe -n "CN=tfadfs.tf.com" -sky exchange “tfadfs.tf.com.cer" -sv “tfadfs.tf.com.pvk" pvk2pfx -pvk “tfadfs.tf.com.pvk“ -spc “tfadfs.tf.com.cer“ -pfx “tfadfs.tf.com.pfx“ -pi < パスワード > pvk2pfx -pvk “tfadfs.tf.com.pvk“ -spc “tfadfs.tf.com.cer“ -pfx “tfadfs.tf.com.pfx“ -pi < パスワード >
  42. 42. 42 ⑧ IIS の SSL を有効化 AD FS 2.0 のセットアップ
  43. 43. 43 NLB クラスタ用証明書はすべてのサーバーに tfadfs.tf.com tf20101102-02 tfadfs.tf.com.pfx tf20101102-01. tf.com.pfx tf20101102-02. tf.com.pfx tf20101102-01 NLB NLB クラスターの証明書 サーバー証明書 サーバー証明書 今回は 必要ない 今回は 必要ない
  44. 44. 44 証明書( .pfx )をインポートする .pfx ファイル.pfx ファイル
  45. 45. 45 [Default Web Site] の SSL を有効にする
  46. 46. 46 接続テスト https://tfadfs.tf.com/
  47. 47. 47 自己署名証明書の取り込み
  48. 48. 48

×