Welcome to TechNet Blogs Sign in | Join | Help

Shigeya Tanabe's blog

田辺茂也 (IT Pro エバンジェリスト)

News

  • 連絡先


    コミュニティにおけるマイクロソフト社員による発言やコメントは、マイクロソフトの正式な見解またはコメントではありません。

    お知らせ

    ブックマーク


    Clicky

“Zermatt” – クレーム (Claim) 対応アプリケーションのためのフレームワーク

ユーザー認証・承認(認可)のプログラミングモデルである、「クレーム (Claim)」を利用した Web アプリケーション、Web サービス (WCF) を作りやすくするためのフレームワーク “Zermatt” (コードネーム) のベータ版が公開されました。クレームは ID とともに提示されるユーザーの属性情報のことを言います。

Microsoft Code Name “Zermatt” (英語)
https://connect.microsoft.com/site/sitehome.aspx?SiteID=642

上記 connect サイトから、サンプルプログラムを含む ”Zermatt” ベータ版と、ホワイトペーパーがダウンロードできます。

現在、Web アプリケーションや Web サービス (WCF) (以下アプリケーション) における承認は、ロール (役割) ベースの実装が多いかと思います。また認証もアプリケーション内で実装することが多いのではないでしょうか。クレームベースのモデルでは、インフラによるシングルサインオンを活用し、よりアプリケーションごとの独自の実装を減らそうという目標があります。

具体的には、認証についてはインフラにアウトソースし、認証済みのユーザーが、必要な属性情報をアプリケーションに伝えるという仕組みです。属性情報はセキュリティトークンにカプセル化され、HTTP の POST データや Cookie などで運ばれます。アプリケーション側では、デジタル署名済みの正当なトークンであれば、認証済みのユーザーとして扱い、属性情報=クレームを取り出して、属性に応じて承認すればよいことになります。この仕組みにより、アプリケーション側では認証やユーザーの追加削除などの管理は一切不要になります。また属性もユーザー側から提供されますので、アプリケーションからディレクトリに問い合わせたりする必要もなくなります。さらに、組織の変更や役職の異動などにも自動的に対応できることになります。つまり、アプリケーションで関心があるのは、承認のためのユーザーの属性であり、その情報の取り扱いだけに専念できるのがクレームベースの利点です。

image

“Zermatt” は .NET Framework 3.5 に対する追加クラスになっており、IIdentity や IPrincipal の実装として IClaimIdentity, IClaimPrincipal を追加するなど、既存のモデルを活かしながら拡張しています。ホワイトペーパーにサンプルコードがありますので、雰囲気を知るためにも、まずはホワイトペーパーをご参照ください。また、”Zermatt” をインストールすると、サンプルコードも多数入っていますので併せてご参照ください。

Posted: Wednesday, July 09, 2008 6:43 PM by Shigeya Tanabe

Comments

松崎 剛 ブログ (Tsuyoshi Matsuzaki Blog) said:

こんにちは。 Windows CardSpace に代表されるクレームベースのアプリケーション開発で、マネージカードなどカードの発行機能の作成部分、ASP.NET からの使用部分など、部分的な箇所について、非常に敷居の高い開発

# July 10, 2008 1:31 AM

Shigeya Tanabe's blog said:

クレームベースのアイデンティティ技術である、コードネーム “Geneva” の最新ベータとなる Beta 2 がリリースされました。 Forefront Team Blog: Microsoft code-name

# May 12, 2009 4:42 AM

Shigeya Tanabe said:

Zermatt は "Geneva" Framework に名称が変わりました。(それでもまだコードネームですが。)

# May 14, 2009 2:00 AM
Anonymous comments are disabled
Page view tracker