InfoCard の概観 -- MSDN Magazine, 2006 年 4 月
SECURITY BRIEFS
Keith Brown
翻訳元: Security Briefs: A First Look at InfoCard (英語)
目次
- ID とは
- InfoCard の精神
- InfoCard: ID メタシステム
- InfoCard を使用したデジタル ID の確立
- メッセージ フロー
- 法則の確認
- 複数のサイトで自分の評判を共有
- 自己発行型カード
- すぐに使い始める
Web は、ときに厄介なことがあります。Web サイトを訪問するたびに見飽きた同じフォームに記入するのが面倒だと感じるのは、私一人ではないはずです。私もコンピュータ マニアの例に漏れず、長年の間に数多くのツールを取得してこの問題に対処してきました。Web 上の数百もの異なる ID を使いこなすためにパスワード マネージャを作成さえしたことがあります。私にとって、毎回同じように入力しなければならないのは、単に面倒というだけですが、私の母親のような人にっては非常にわかりにくく、そのわかりにくさが、たとえば全部に同じパスワードを使用するなど、セキュリティの脆弱性の原因となっています。
このように Web 上で何度も ID の入力が必要なのは面倒なだけでなく、Web の可能性も大きく制限しています。この記事では、Web 上での ID を統合する力になることを心から願っている、1 つのシステムについて説明します。それは InfoCard というシステムで、Windows Vista に含まれる予定です。
これを書いている時点で、プレリリース版の InfoCard は Web サービスでのみ使用可能なため、ここでは、純粋に Web サービスの領域に限ってお話します。しかし将来的には、ブラウザベースの Web アプリケーションでも使用できる予定です。具体例としては、おなじみの Thawte と eBay を使用しました。これらは完全に架空の例であって、Thawte や eBay が InfoCard を導入するかどうかは、それらの会社の完全な自由です。
1. ID とは
ところで、ID とは何でしょうか。この質問は、技術的に非常に広い意味を持ちます (哲学的含意は気にしないでください)。Web 上で、ユーザーはどのように識別されているのでしょうか。部門、会社、組織などはどのように識別する必要があるのでしょうか。
たとえば、次のような例で説明しましょう。私の名前は Keith Brown です。デンバー郊外在住で、Web サイト経由で連絡できます。ロックとスケートボードが好きです。これで登録します。そして、それに何らかの利益があると思えば、登録した詳細の多くを、信頼できる Web サイトで共有したいと思います。私が自分についてわかっている情報はこれがすべてです。しかし、他の人々が私に関する情報を持っていることもあります。
eBay で、私は、買い手としても売り手としてもすばらしい評価を得ています。Slashdot で私の投稿は "insightful (洞察に富む)" にランクされています。また他のいくつかのコミュニティの安定したメンバーです。このような評判は価値がありますが、現状では宝の持ち腐れです。新しいコミュニティに参加するとき、私が正直で知的でおおらかなメンバーであることを証明する方法はありません。eBay や Slashdot での ID (と私が苦労して築いた評判) を共有する共通の方法が存在しないために、サイトの 1 つ 1 つで、ゼロから評判を築いていくしかないのです。もちろん "eBay にいた Keith だ" と名乗ることは可能です。けれど、誰がそれを信じるでしょうか。
自分が誰なのか、山のように言葉を連ねたところで、あなたは信じますか。事実を述べているのか、単に口だけなのか。それは誰の発言で、その人物や組織をどの程度信頼しているかによって違ってきます。たとえば、eBay で私と物を売買しようとする場合、私の支払い記録を見れば、これまで迅速に支払ってきたことを容易に確認できます。日ごろから eBay で売買していれば、おそらくフィードバック システムでそれなりの信頼を得ているはずです。これが自分が得た評価です。
InfoCard が採用している 1 つのアプローチは、特定の ID に関する主張の真実性について、一切の想定を行わないという方法です。私や eBay が私自身について主張したことを信じるかどうかは、各ユーザーの判断にゆだねられています。"断定する" などの強い言い回しではなく "主張する" という単語を使うのはそのためです。
実際、このアプローチが、InfoCard にとっての ID とは何かの基になります。つまり、デジタル ID とは、1 人のデジタル主体 (ユーザー) が自分または別のデジタル主体について行った一連の主張だと定義されるわけです。これは、Kim Cameron が彼の ID ブログ www.identityblog.com (英語) で提唱した定義です。Kim は、InfoCard に携わるマイクロソフトのアーキテクトで、現在の ID の概念に多くの重要な貢献を行ってきました。
ああ、そしてもう 1 つ、私の話の結末はわかりきっていると考えている読者の皆様。現在、ID が数百にも上るという問題は、それらを 1 つの ID に統合して、それをどこででも使用するだけでは解決されません。それによって解決される問題よりも、発生する問題の方が多いくらいです。InfoCard では、必要なだけ、いくつでもアイデンティティを持つことができます。将来的に考えれば、国から与えられた ID があり、銀行から与えられた ID があり、高く評価された定着メンバーとして Web コミュニティから与えられた ID があります。通常、自分で発行した ID もいくつかあり、中には、嘘の情報もあるでしょう。読者の方はともかく、少なくとも私は、Web サイトから個人情報を尋ねられ、本当のことを言いたくないときは、嘘の情報を提供します。私の住所は、1313 Mockingbird Lane, Anytown, USA などではありません。しかし Web サイト側はその情報で十分であり、私のリスクも減少します。InfoCard でも、これは可能です。
ページのトップへ
バルクメールと金持ちにする方法
2. InfoCard の精神
Kim Cameron は、特定の文脈で特定の ID システムが成功するか失敗するかを決定付ける一連の客観的な法則が存在すると主張してきました。組織が ID システムをどのように位置付けようと、この法則に反していれば、そのシステムは何らかの形で失敗する可能性が高いのです。失敗は、セキュリティ侵害という形をとり、ID 窃盗などの危害を許すこともあります。または、使いにくいために、人々に受け入れられない場合も考えられます。InfoCard アーキテクトは、その理由はともかく、これらの法則に適切に準拠しなければ、成功はないと考えています。
それでは、InfoCard が創出する環境のイメージをつかんでいただくため、7 つの法則について簡単に説明します。"成功する ID システムのための 7 つの法則" に、私の言葉で 7 つの法則を簡略に説明しましたが、「ID の諸法則 (英語)」から全文を参照することもできます。
ページのトップへ
3. InfoCard: ID メタシステム
InfoCard は、さまざまな作業に対応します。少数の WS-* プロトコルを統合して、ID 情報の安全な交換を可能にします。GUI では、複数のデジタル ID がそれぞれカードとして表示され、その中からユーザーが選択できます。図 1 に、非常に初期の "ワイヤ フレーム" UI を示します。InfoCard の他の機能については後ほど述べますが、ここではまず InfoCard に常に関与する 3 つの要素をご紹介します。
Figure 1 Digital Identity Made Concrete for Users
第 1 は主体です。主体の例としては、インターネット上で自分をデジタルに表現するユーザーがあります。第 2 は IP (ID プロバイダ)、つまりデジタル ID を発行する組織です。これはちょうど Thawte などの会社のようなもので、ユーザーが自分の会社の Web サイトを識別するのに使用する SSL (secure sockets layer) 証明書を発行します。最後に、検証側当事者 (RP) という、運用をデジタル ID に依存している組織があります。今日、ほとんどの Web サイトや Web サービスでは、簡単な電子メール アドレスから、デジタル証明書やさらに風変わりなものまで、ユーザーが何らかの形式の ID を送信できます。
成功する ID システムのための 5 番目の法則に従って、InfoCard は、少数のガイドラインとプロトコルを確立するメタシステムであり、これによって多くのさまざまな ID システムが円滑に連係して動作します。多くの人々が長い間デジタル ID について考え、これまでにさまざまな多くのテクニックが生まれました。LID (英語)、SXIP (英語)、Liberty Alliance (英語)、および Microsoft Passport (英語) は、その中のほんの少しの例に過ぎません。
ページのトップへ
4. InfoCard を使用したデジタル ID の確立
ここで、この記事を通じて使用する具体例についてお話しましょう。Thawte が InfoCard の ID プロバイダになったとしましょう。Thawte の Web サイトを訪問し、HTTPS 経由で Web Form を使用してデジタル ID を設定し、Thawte がそれを管理します。私は電子メール アドレス、自宅電話番号、住所などを提供します。実際、私は複数の異なる ID を状況によって使い分けています。
私が確立しようとする ID や、サービスの対価によっては、Thawte が ID を発行する前に私の認証を行うことも考えられます。認証は、私の電子メール アドレスを確認するだけのことも、あちこちに電話して私の ID の詳細を確認することもあるでしょう。
Thawte はこのような ID のそれぞれについて InfoCard という XML 文書を私に送信し、私が確立した特定の ID の参照として、この InfoCard が機能します。Thawte が InfoCard を送信する方法を InfoCard によって指定されることはありません。電子メール送信でも、Web サイトからのダウンロードも可能です。InfoCard はいったん受信すると、使用するどのコンピュータにでもインポートできます。InfoCard 自体には、私の ID の詳細が実際に含まれていないことに注意してください。Thawte に渡した電話番号は、InfoCard には入っていません。
InfoCard には、ID の形状を記述したメタデータが含まれているだけです。この情報には、含まれている主張の種類 (電子メール アドレス、電話番号など) と、使用されている ID テクノロジの種類 (Security Assertion Markup Language 1.1 (SAML) など) が入っています。また発行者 (Thawte) と Thawte が私の ID を検索し、各主張の値を取得するために使用する一意の識別子も入っています。したがって、私のデジタル アイデンティティが、Thawte の高度にセキュリティ保護されたサーバーに安全に記録されており、自分のコンピュータにインポートした InfoCard は、それらのアイデンティティを持っていることを忘れないための方法にすぎません。InfoCard は、デジタル ID を使用し、管理するための手段です。
私の企業 Web サイトは、Active Directory Federation Services (ADFS) を使用して ID プロバイダとして動作しています。そこから別の ID にサインアップできます。この Web サイトは、Kerberos を使用して私を認証し、InfoCard を発行します。私は、この InfoCard を使用して、インターネット上のパートナーとのやり取りに使用する自分の企業 ID にアクセスできます。このカードを自分のコンピュータにインポートします。カードは、いったん手に入れたら、それらが有効な限り使用できます。Thawte の ID は 1 年間有効で (または料金を支払えば、永久に保持できます)、私の企業 ID は、そこに勤務する限り有効です。
ページのトップへ
アイダホ州のコンピュータのlinuxポストフォールズ
5. メッセージ フロー
InfoCard トランザクションの仕組みを大まかに理解するために、関係者間のメッセージ フローの例で説明します。ここでは基本的な流れをわかりやすくするため、たとえばメッセージのセキュリティ保護や、使用するプロトコルなど、詳細の多くを省略してお話しします。
eBay に InfoCard をサポートする Web サービス (検証側当事者) があるとします。私は eBay オークション マネージャを起動しました。これは特定の日にオークションに参加した複数の品目を管理するためのリッチ クライアント アプリケーションです。このアプリケーションは、オークション品目を管理するためにデジタル ID を eBay に提示する必要があることを認識していますが、私がどの ID を使用するかは判断できません。そこでまず eBay に対し、どのような形式の資格情報をサポートしているか、どの ID プロバイダを信頼しているか、どのような種類の主張を必要としているかを照会します。eBay が次のように回答します。
Credential type: SAML 1.1 or 2.0 Identity Providers: Entrust, Thawte, Verisign Requested Claims: email address
アプリケーションは、この情報を eBay から受け取り、ラップトップの InfoCard システムに渡します。ポップアップ ダイアログが表示され、eBay が必要とするカードの一覧が表示されます。これには、電子メール アドレスを含む、Thawte に登録したすべての ID が含まれます。会社の ID は含まれていません。なぜなら、eBay は、私の会社を信頼する ID プロバイダとしてリストしなかったからです。このダイアログには、eBay のロゴが目立つように表示されています。これにより、他の防止策とあわせて、私の情報が不正ユーザーに送信されていないことが確認できます。図 1 には、大まかな流れを示しています。品目を eBay で販売するためのカードをクリックすると、InfoCard システムが Thawte に対し、eBay が確認する主張である電子メールアドレスを取得するように要求します。Thawte は、この情報を SAML トークンに入れて返します。
InfoCard によってポップアップが表示され、eBay に開示しようとしている情報 (SAML トークンに入った電子メール アドレス) を正確に表示します。[送信] をクリックして同意すると、InfoCard がトークンを私のアプリケーションに渡し、アプリケーションから eBay に渡されて、オークション品目の管理を開始します。
ここで多くの処理が行われますが、ユーザーの視点からは、やり取りが簡単に理解できます。アプリケーションが eBay に接続すると、提示する ID を選択するように求められます。次に、開示する個人情報を確認するように要求された後で、自分のオークション品目を操作できるようになります。パスワードを入力する手間はありません。見えないところで InfoCard が指定する強力な暗号化機能が動作し、トランザクションの認証を保証します。
ページのトップへ
6. 法則の確認
このトランザクションを ID の法則と比較して検討してみましょう。第 1 の法則は満たしています。ユーザーとして、私は同意を求められ、開示する情報を正確に表示されました。また、検証側当事者のロゴが表示されたため、情報に基づいた意思決定を行うことができました。
2 番目の法則も満たしていました。私の電話番号と住所は Thawte が保持するデジタル ID に含まれていましたが、eBayには送信されませんでした。特定のやり取りに必要な情報、この場合は電子メール アドレスのみが送信されました。そしてこの例では不要でしたが、検証側当事者が、私の個人情報をまったく取得することなく私を識別するために使用できる一意の不透明な識別子を InfoCard によって作成することもできます。これは、PPID (Personal Private Identifier) と呼ばれ、検証側当事者の公開鍵、InfoCard ID、無作為のソルト値の関数として算出されます。検証側当事者は、追跡データをユーザーの個人情報に結合せずにユーザーへの要求を追跡する場合、PPID を要求できます。これは、ユーザーのプライバシーを保護する優れた方法です。
第 3 の法則はどうでしょうか。Web サービスを仕事で使用するときには、企業が発行した ID を使用します。しかし、私は eBay ID に関して、システム管理者を信頼していません。そこで私は、Thawte に自分の社外 ID を管理してもらうことにしました。Thawte が私の ID を不正使用して、それが見つかったら、システム管理者よりはるかに失うものが多いはずです。ここに、私と Thawte、eBay の間に小さな信頼の輪ができました。トランザクションに関与するすべての当事者に、関与する正当な理由があります。
第 4 の法則も満たしています。InfoCard を使用して eBay とやり取りするすべてのユーザーに対して、eBay のロゴが表示されています。これは全方向の ID、つまり標識です。しかし、私と eBay との関係は非公開です。私のラップトップにある InfoCard システムは、Bluetooth 経由で私の電子メール アドレスをブロードキャストしたりしません。たとえ InfoCard が電子メール アドレスを公開しようとしても、その情報は保存されていませんでしたよね。
自分の ID プロバイダと ID テクノロジを選択できたので、第 5 の法則も満たしています。確かに、このシステムが機能するためには、ID プロバイダと検証側当事者の間で、少なくとも共通のテクノロジがサポートされている必要がありますが、InfoCard によって、使用する資格情報 (SAML その他) の種類が制限されることはまったくありません。5 番目の法則は、まったく選択の自由の問題であり、InfoCard はこれを満たしていると自信を持って言えます。
どのくらいそれがアメリカで手紙を郵送する費用がかかります
第 6 の法則は、ユーザー インターフェイスとユーザーの脳との間のチャネルのセキュリティ保護です。InfoCard では、ユーザーに証明書を表示してユーザーを混乱させるのではなく、ユーザーがエンティティの関与を認識できるように、ロゴタイプ (RFC 3709) の証明書を使用してわかりやすい画像を示します。また目に見えないところで、他の対策もとられています。たとえば、InfoCard UI 全体が、実際には別のセキュリティが強化されたデスクトップでホストされています (Ctrl+Alt+Del キーを押したときに WinLogon が使用するのと似たデスクトップ)。悪意のあるユーザーが、他社のロゴに似たロゴを使用して証明書を登録することを防止するかどうかは、ID プロバイダにかかっています。しかし、それこそが ID プロバイダの提供するサービスであり、参加企業はそのために料金を支払っているのです。
最後に、第 7 の法則は、ユーザーに具体的なカードを表示することで満足されています。またカードによって使用される資格情報の種類に関係なく、ユーザー エクスペリエンスは同じです。検証側当事者に送信されるすべての主張は、テキスト表現でユーザーに表示されます。これはどのように実現されているのでしょうか。将来出現するすべての種類の資格情報を InfoCard が予想することはとても不可能です。この問題を解決するために、ID プロバイダは、オプションの "表示トークン" を本当のトークンと共に送信できるようになっています。表示トークンには、InfoCard が実際のトークンを解析できない場合でもトークンの内容をユーザーに表示できるように、単純な名前と値のコレクションが含まれています。
ページのトップへ
7. 複数のサイトで自分の評判を共有
先に、複数のコミュニティで自分の評判を共有できることは非常にすばらしいという話をしました。eBay と Slashdot ですばらしい評判を得ていることを証明できれば、それを他のコミュニティで通貨として使用することができるため、ゼロから評判を築く努力が必要なくなります。またいくつかのオンライン コミュニティで同じハンドルを使用できれば、友達がどこでも私を認識できます。このような複数のサイト間でのつながりを作るかどうかは私次第ですが、そのような柔軟性は信じられないほど強力な利点です。
InfoCard ならこれが可能です。eBay が検証側当事者としてだけでなく、ID プロバイダとして活動すると仮定しましょう。この場合、私は、99.8% の好意的なフィードバックを得ている信頼できる売り手であり買い手であるとする InfoCard を eBay から取得できます。これは eBay が私に関して行う主張に過ぎません。しかし先に述べたように、ID とは、1 人のデジタル主体 (ユーザー) が自分または別のデジタル主体について行った一連の主張と定義されます。
評判が重視される Web コミュニティでは、eBay や Slashdot がこのような種類の主張について信頼できる ID プロバイダとして支持されるでしょう。Thawte カードを使用すると、このようなコミュニティのアカウントに登録してすぐに、eBay カードを使用して自分の評価を高めることが可能です。カードは、何枚でもコミュニティに提示できます。
このシステムの短所は、私が提供した情報を検証側当事者が相互に関連付けられるという点ですが、それも最終的には私の選択です。私がコミュニティを信頼していて、より多くの情報を共有したいと思えば、そうすることができます。適切に設計された検証側当事者であれば、情報を識別するために最小限の情報だけを求めます。Thawte の ID の PPID を eBay の評価と共に開示することに、まったく問題を感じません。よからぬことを企むユーザーがいても、それでは大したことはできないでしょう。
ページのトップへ
8. 自己発行型カード
ここの例でお話したインフラストラクチャは、現在、まったく存在しません。InfoCard をサポートする ID プロバイダは、そう多くはありません。現在のバージョンの ADFS もまだ InfoCard をサポートしていません。そこで、InfoCard には、自分に対して InfoCard を発行し、自分で利用できる機能が組み込まれています。実際、図 1 に示されたカードの例は、自己発行型カードです。
この自己発行型カードの仕組みを理解するには、ユーザー名とパスワードを登録する従来の Web サイトを考えてみるとよいでしょう。その Web サイトが自己発行型の InfoCard に対応していたとしたら、自己発行型の InfoCard を使用して登録できます。パスワードはなく、プロンプトに対してカードを選択するだけで、Web サイトによって PPID を記録され、トークンに送信された長期鍵が記録されます。従来のパスワードの代わりに鍵が使用され、訪問するすべてのサイトで一意に識別されます。この鍵は、自己発行型の InfoCard と検証側当事者の公開鍵に対して無作為に生成されたマスター鍵の関数として、自動的に算出されます。これはちょうど、訪問する各 Web サイトに対して、一意のパスワードを選択するのと同じですが、すべてのパスワードを自分で設定して管理する必要はありません。
自己発行型カードを使用すると、InfoCard を簡単に使い始めることができます。Web サービスを持っていて、検証側当事者として使用する場合は、自己発行型カードをテストして手軽に使用を開始できます。しかし、長期的には、サードパーティの ID プロバイダを使用すると、Web 上のさまざまなシステム間で個人情報をユーザーが制限しながら共有できるため、自己発行型よりはるかに強力です。
ページのトップへ
9. すぐに使い始める
InfoCard が利用できるようになるのそう遠くないでしょう。そしてこれは信じられないような可能性に満ちています。公共の Web において、InfoCard は個人や企業によるさまざまな新しい革新への道を開きます。企業は InfoCard を使用して、パートナーとはるかに簡単に接続できるようになります。しかし、読者の皆様のように、魅力的な検証側当事者や ID プロバイダを時間を掛けて構築しようとする革新的な人々なしに、InfoCard の成功はありえません。
InfoCard をすぐに試してみたい方は、Andy Harjanto のブログ blogs.msdn.com/andyhar (英語) を購読してください。Andy は InfoCard チームの一員で、仕様やダウンロードへのリンク blogs.msdn.com/495649.aspx (英語) だけでなく、Windows Communication Foundation (WCF) を使用して検証側当事者や ID プロバイダを構築するためのコード例を提供しています。
これを読んで、InfoCard に興味を持っていただけたら幸いです。次のコラムでは、InfoCard の動作の仕組みを詳細に説明する予定です。どうぞお楽しみに。
ページのトップへ
成功する ID システムのための 7 つの法則
InfoCard の設計と実装 は、次の法則に基づいています。InfoCard のアーキテクトは、これらの法則のどれを無視しても、システムの成功はないと考えています。
- ユーザーによる管理と同意:
ユーザーが自分の情報を管理できる必要があります。他人に自分のどの情報を開示するかを決定できる必要があります。
- 最小限の情報開示:
個人情報を求めるシステムで 100% 安全なシステムはありません。したがって、開示する情報が多くなれば、ID 窃盗などの攻撃に自分をさらすことになります。安定した ID システムは、特定の状況で必要以上の情報を開示せず、その状況に応じて特に設計された識別子を使用します。たとえば、近所の図書館で本を借りるという状況を考えてみましょう。図書館が独自の番号を発行できるときに、自分の社会保障番号を提示する必要はありません。
- 当事者の正当性:
社会サービスを要求する場合に、政府発行の ID カードの提示を求められるのは当然です。しかし、ネットギャンブルを楽しむときには、別の ID を使用します。関係当事者全員が、そのトランザクションに関与する正当な理由が必要です。MSDN サブスクライバ ダウンロードを使用するときは、PayPal アカウントより Microsoft Passport が適切です。
- 開示相手の明確性:
私は自分のプライバシーを大切にしています。不特定多数のユーザーに表示したくはありません。しかしながら、公共的な団体で、発見が容易である必要があり、したがってどこからでも見える標識として活動することを選ぶ団体も数多くあります。Amazon.com は標識です。SSL 証明書によって、その ID を世界中に配信しています。しかし、私が Amazon.com を閲覧するときは、そのサイト上での私の行動を記録するのに、非公開の識別子が使用されることを期待します。安定した ID システムは、全方向の ID (Amazon.com などの標識) と一方向の ID (私と Amazon.com との非公開の関係) の両方をサポートする必要があります。
- 複数のオペレータとテクノロジの使用:
すべての状況を 1 つの ID システムで対応することはできません。またすべての状況に 1 つの ID プロバイダで対応することもできません。成功する ID システムであるためには、多くの ID プロバイダとテクノロジが、シームレスに連係して動作できる必要があります。単一の ID システムですべてを管理することはできませんが、システムのシステム (メタシステム) を設置して、ユーザーに対して統一的な抽象的概念を提示することは可能です。
- 人的統合:
エンドユーザーが、認証プロトコルのエンドポイントと考える必要があります。われわれの業界は、数千 Km の銅線を介して伝えられるメッセージのセキュリティ保護については、すばらしい業績を上げてきました。しかしながら、最後の数 m であるコンピュータとユーザーの間で、ほとんどの失敗が起こっています。フィッシングなどのソーシャル エンジニアリング攻撃は、今日使用されている脆弱なユーザー インターフェイスを利用します。安定した ID システムは、このような脅威をできる限り緩和します。
- 一貫したエクスペリエンス:
安定した ID システムは、基盤となるテクノロジや ID プロバイダに関係なく、一貫した抽象的概念をわかりやすくユーザーに提示します。ユーザーは、状況に応じて最も適切な ID を選択できます、それが具体的に感じられることが大切です。デジタル ID がユーザーにとって抽象的に感じられないようにしてください。自分のポケットの中の図書館カードのように、具体的に感じられる必要があります。
ご意見、ご質問をお待ちしております。brief/p>
Keith Brown は、Microsoft .NET のトレーニング プロバイダである Pluralsight の共同創立者です。Keith は、Pluralsight の Applied .NET Security コースの作成者であり、『The .NET Developer's Guide to Windows Security』(印刷物および Web で提供) をはじめとする書籍の著者でもあります。詳細については、www.pluralsight.com/keith (英語) をご覧ください。
この記事は、MSDN マガジン - 2006 年 4 月からの翻訳です。
QJ: 060413
ページのトップへ
0 コメント:
コメントを投稿