ラベル Tech Fielders の投稿を表示しています。 すべての投稿を表示
ラベル Tech Fielders の投稿を表示しています。 すべての投稿を表示

2011年3月16日水曜日

プロトコルとトークン形式

先週金曜日(3/11)にMS安納さんと「AppFabric ACS V2 で構築するSSO」セミナをやったのですが、その時にお話しした内容を少々。
(事情があり資料は公開しません)

私のセッションでは
・アイデンティティにまつわる言葉の定義
・プロトコルとフォーマット(トークン形式)
・各種情報へのポインタ
についてお話をしました。

その中で一番混乱しやすい「プロトコルとフォーマット」の話を軽く触れておきたいと思います。(現にMSDNフォーラムや先日のMVP Global Summitでもみなさんが一番わかりにくい、と話をしていましたし)
また、セッション内で本当は見せようと思っていたデモを公開します。

セッション内では以下の様に説明をしました。


プロトコルアイデンティティ情報を受け渡す方法
トークンアイデンティティ情報を表現する方法



例えば
・プロトコル
 ws-federation、SAMLなど
・トークン
 SAML、SWT、JWTなど
です。

実は上記の例の中のSAMLがこのプロトコルとトークンを混乱させる一番の原因になっているのでは?と思っています。SAMLはプロトコルであり、トークン形式でもあるためです。
例えばws-federationプロトコルはSAMLトークンを使うことも可能ですし、もちろんSAMLプロトコルはSAMLトークンを利用します。
※そういう意味でプロトコルのSAMLをトークンのSAMLと区別するためにSAMLPと呼んだりします。


では、それぞれの例を見ていきます。

まずはプロトコルですが、以下がSAMLプロトコルの流れの例です。(SAMLのやり取りはプロファイルという形で他にもやり取りの方法が規定されています。またこのやり取りはws-federationでも同じ流れです)










実際には各フローのそれぞれのメッセージの形式がプロトコルとして規定されています。


次にトークンです。こちらもSAMLトークンの例を示します。

















こんな感じで発行元、署名、属性情報がXML形式で入っています。



Azure上にACSv2と連携する簡単なデモを作成しているのでこちらを触ってもらえば実際の動きと発行されたトークンを見ることができます。

1.以下のURLにアクセス
  http://stvc-demo.cloudapp.net/default.aspx

2.ACSv2のサインイン画面にたどり着くので好きな認証元(IdP)をクリック




















3.例えばFacebookをクリックするとFacebookの認証画面へリダイレクトされるのでログイン
















4.無事にログインするとアプリケーションに戻り、ポストされたトークンが表示される(以前紹介したSecurity Token Visualizer Controlを利用)

















#Azureの特別導入プランのXSインスタンスを使っているのでしばらくは公開しておきますが、ACS側の仕様の変更などもあると思いますのでそのうち消します。。。

2011年2月20日日曜日

AppFabric ACSののセミナに登壇予定

少し先(3/11)になりますが以下のセミナでしゃべります。
登録ページにはまだタイトル未定となっていますが、本当に未定ですww

Windows Azure AppFabric ACS で構築するシングルサインオンシステム
https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032477539&Culture=ja-JP


内容的には安納さんのblogにも紹介されているようにアイデンティティにまつわる用語や標準の整理をさせていただく予定。

もちろん安納さんのパートも必聴です。AppFabric関連の話ってService Busにフォーカスがあたりがちなので、なかなかAccess Control Serviceに絞った話は聴けません。TechEdでもこんなにマニアックなセッションはなかったと思います。


資料は全く未着手なので、そろそろ作り始めようかと。。来週はまるまるシアトルなので。

2010年4月8日木曜日

早わかり!クレイムベースのアイデンティティ&アクセス管理

先日マイクロソフトのPatterns&PracticesチームからリリースされたA Guide to Claims-based Identity and Access Controlを読み進めているのですが、ある意味シンプルなんだけどある意味とっつきにくい「クレームベースのアイデンティティ&アクセス管理」をとてもわかりやすく説明した例があったので紹介します。

以前Tech Fieldersコラムにフェデレーションの話を書いた時は入国審査を例にクレームベースのセキュリティについて説明しましたが、この今回紹介する例の方がより正確でシンプルで良いと思いました。

舞台は同じく空港なのですが、以下のようなメタファを用いています。

用語メタファ
セキュリティトークン搭乗券
クレーム名前、便名、座席ランク
STS(セキュリティトークンサービス)チケットカウンター
RP(アプリケーション)搭乗カウンター


これらを使って見事に認証、トークンの発行、トークンの確認とクレームによる認可を表現しています。















(1)利用者がチケットカウンター(STS)で認証される
   →パスポートの顔写真と本人の顔の一致をもって「認証」する
(2)チケットカウンターが搭乗券(セキュリティトークン)を発行する
   →搭乗券の中には利用者の名前、便名、座席ランク(トークン)が書かれている
   →チケットカウンターが発行したことを証明するために磁気テープで署名されている
(3)利用者が搭乗券(セキュリティトークン)を搭乗カウンター(RP)に提示する
   →搭乗カウンターは提示された搭乗券が磁気テープ(署名)を見て正しいものかを確認する(信頼された発行元かどうかの確認)
   →搭乗券の中の便名、座席ランクを見て利用者を案内(認可)する


私はこの例はかなりしっくりきました。
みなさんはいかがでしょうか?

2010年2月27日土曜日

参加してきました「Tech Fielders の集い 特別編 - おかげさまで Active Directory 10周年 セミナー 」

今週はTechDaysもありましたし、本日のAD10周年イベントもあり盛りだくさんでした。

細かい情報はあとからTechFieldersのサイトに載ると思うので、印象に残った点だけ軽く振り返ってみますが、twitterのハッシュタグ#ad10thを見ていて感じたのは、「フェデレーション/ADFS」と「PowerShell」に対する反応の多さが印象的でした。
PowerShellはともかく、これまでフェデレーションって何に使うの?という反応ばかりでしたが、やはりここにきてクラウド連携と関連してみなさんの興味も急上昇、、という感じなのだと思います。

※安納さんのblogでもご紹介いただきましたが、フェデレーションについてTechFieldersのサイトにコラムを書いているので、ご興味があれば見てやってください。

さて、各セッションについてもざっと流してみます。

■Active Directory 10年の歩み/MCS待鳥さん、柿沼さん
・設計の移り変わり
 ADを取り巻く環境(NW、HWスペックや価格)の変化に伴いサイト構成(分散配置から集中配置へ)やDCのサイジング(OSの64bit化に伴う保持オブジェクト数の増加など)が変わってきた、というお話。

・ADの使いこなし例
 3つの例を挙げていました。

 1.Excelで簡単アカウント管理&監査
   VBA+ADSIでオブジェクトの管理台帳を!という使い方です。昔私も作りました。ID管理製品を入れるほどの規模ではない企業の場合これで十分なんだと思います。

 2.パスワード変更情報を取り出す
   PCNSを使ってDCへのパスワード変更をフックする例です。意外とみなさんPasswordChangeNotify()関数をご存知ないようで、twitterのTLには感嘆の声が上がっていました。そう言えば以前パスワードフック関連のポストをしたのですが、いまだにアクセス数が上位です。

 3.見えないサーバで個人情報管理
   IPSecを使って簡易的な検疫をしましょう、というお話。簡単に実装できるのでやってみてもよいかもしれません。

■Active Directory 提案のツボ/SE山崎さん
Windows Server使い倒し塾でおなじみの山崎さんのセッションです。既に今日の資料がポストされているので、詳しくはそちらを見てください。

山崎さんもやはりADの今後、というところではADFS2.0とAzure連携というお話をしておられました。

■Active Directory/Group Policyよくある質問/サポートチーム北川さん
ある意味、今回のセミナの目玉の一つだったのではないでしょうか?
普段は切羽詰まった状態でメールや電話でしかお話できない製品サポートチームのリアルな話でした。

よくある障害の事例として、
 1.DCへアクセスできないケース
   名前解決ができない
   ネットワーク上へアクセスできない
   NATしている(SMBがNAT非対応)
 2.sysvolへSMB通信が失敗するケース
   DFS異常など
 3.低速リンクの検出により一部のポリシーがあたらないケース
   ICMPで検出しているので、ICMPがブロックされていると低速リンクとみなされる
が紹介されたり、一部のDCの破損が起きた場合の復旧手順などが紹介されました。

こちらもしばらくしたらblogに本日の情報をアップしてくださるということなので、細かくはそちらに期待です。

■Active Directoryトラブル解決のツボ/ADSIサポートチーム渡部さん
こちらも上記と同じく濃いセッションです。
いつもお世話になっているADSI/ILMサポートチームの「お父さん」こと渡部さんのセッションです。

こちらは製品というよりもADSIやWMIなどの開発がらみも含めた微妙な領域のサポート部隊なので、プログラミングに依存する問題、環境・構成に依存する問題の切り分け~解決までのアプローチについて紹介していました。ある意味もっとも専門性が要求される部隊なのかも知れません。

細かいアプローチについてはblogへの掲載を期待するとして、紹介されていた事例は以下の通りでした。
 1.ADSIで大量のオブジェクトを操作するとエラーがでるケース
   →リソース(ポート)の枯渇の可能性を疑う(netstatで確認)
 2.ADsOpenObject(OpenDsObject)が特定のDCに対して失敗する
   →名前解決の可能性が高い
   →DSQueryで対象のDCのオブジェクト参照を試す
   →直接IPアドレスを指定する
 3.ASP.NETアプリケーションがADを参照しようとすると認証エラーになる
   →NTLM認証はダブルホップ認証ができないので、KerberosでWindows統合認証を構成する必要がある。(ダブルホップ:ブラウザ→IIS→DCという2段階で認証が行われる構成)

■パネルディスカッション/MVPを含む5人の濃い方々・・
話が盛りだくさんでまとめきれませんが、一言で言うと「ここに歴史あり」という感じでしょうか?
NT5.0と言われていた時代からかかわってこられた方々ばかりで、Active Directoryの成長を実際に支えてこられた方々の生の話でしたので、とても面白かったです。

特に印象に残ったのは、
・Active Directoryは10年間基本設計が変わっていないという点が素晴らしい
・今後認証基盤だけではなくアイデンティティ情報のレポジトリとしても活用されていくのではないか?
という2点でした。

既に登壇されたMVP国井さんがblogに本日の様子をアップしているのでそちらも合わせてご覧ください。

■Active Directoryを広めよう!/プロダクトマネージャ岡本さん
製品マーケティングの視点でActive Directoryを紹介していました。

国内の企業の規模別のActive Directory導入率など、普段は見られない貴重なデータを見ることができ、とても参考になりました。
できれば今後はActive Directoryの各コンポーネント別(DS、RMS、CS、LDS、FS)でも集計が取れると面白いかと思ったりしました。

また、今後の各種イベントの情報や、6月26日に出版される新しい書籍「Active Directory ID管理ガイド」の紹介もありました。(以前出ていたActive Directory ID自動管理ガイドの改定版?)




■そして懇親会!
イベント自体すごい人数が参加していましたので、懇親会もかなりの人数が参加されていたのではないでしょうか?

目玉はこのケーキでした。













他にもこんなお土産をいただきました。




















限定の帯付きの「ひと目でわかるActive Directory(2008R2対応)」















限定200個のメダル



まぁ何にせよ大盛況でしたし、とても役に立ちました。
関係者の皆さんは大変だったと思います。本当にお疲れさまでした!