序文
公開日: 2004年9月6日 | 最終更新日: 2004年9月6日
トピック
このガイドについて
対象読者
このガイドの利用方法
このガイドの構成
システム要件
サンプル ファイルのインストール
サポート
このガイドについて
このガイドは、Microsoft® .NET Framework のセキュリティ入門やセキュリティの補足として書かれたものではありません。Microsoft .NET Framework のセキュリティについては、MSDN® に収録されている NET Framework Software Development Kit (SDK) を参照してください。このガイドでは、マニュアルに記載されていない事項を取り上げるほか、推奨事項や実績のある方法をシナリオ形式でご紹介します。マイクロソフト プロダクト チームの現場や顧客対応での経験と知識から得られた情報、推奨事項、およびベスト プラクティスを満載することで、できる限り実際の状況に即した情報をお届けします。
.NET Web アプリケーションの構築には、さまざまなテクノロジが使用されます。アプリケーション レベルでの効率的な認証および認定の戦略を打ち出すには、それぞれの製品やテクノロジ分野での各種セキュリティ機能の調整方法と、それらのセキュリティ機能を使って効率的かつ重層的なセキュリティ戦略を実現する方法を理解していることが必要です。このガイドでは、分散 ASP.NET アプリケーションの各層におけるセキュリティ管理と ID 管理に重点を置いて説明します。
特に、認証、認定、およびセキュリティ保護された通信について重点的に説明します。セキュリティには幅広い概念が含まれていますが、調査によれば、認証と認定を早い段階で設計に取り入れておくと、アプリケーションにおける脆弱性を低く抑えられることがわかっています。セキュリティ保護された通信は、分散アプリケーションのセキュリティを強化し、アプリケーションとの間やアプリケーション層の間でやり取りされる資格情報などの機密データを保護する際に不可欠な要素です。
対象読者
このガイドは、ミドルウェアの構築を計画している開発者や設計者、または次のテクノロジを使用して現在 .NET Web アプリケーションの開発に携わっている開発者を対象としています。
-
ASP.NET
-
Web サービス
-
Enterprise Services
-
.NET Remoting
-
ADO.NET
セキュリティ保護された .NET Web アプリケーションを設計、構築する際にこのガイドを十分に活用するには、.NET 開発における技法とテクノロジに関する知識と経験を持ち合わせていることが必要です。また、分散アプリケーション アーキテクチャに関する知識も必要です。.NET Web アプリケーション ソリューションをすでに実装済みの場合には、構築したアプリケーションのアーキテクチャと展開パターンを把握している必要もあります。
このガイドの利用方法
このガイドは、モジュール形式で作成されています。そのため、必要なモジュールを選択して参照することができます。たとえば、特定のテクノロジにより実現される詳細なセキュリティ機能について知りたい場合は、このガイドのパート III (モジュール 8 ~ 12) に直接進み、ASP.NET、Enterprise Services、Web サービス、.NET Remoting、およびデータ アクセスの詳細な内容を参照できます。
ただし、最初はパート I (モジュール 1 ~ 4) から読むことをお勧めします。ここには、セキュリティ モデルの説明と、利用できる主要なテクノロジおよびセキュリティ サービスを判断する際に役立つ情報が記載されています。アプリケーション開発者は、必ずモジュール 3 に目を通してください。このモジュールには、Web アプリケーションの各層にわたる認証と認定の設計に関する重要な情報が記載されています。パート I には、パート II 以降の内容を十分に理解するために必要となる基礎的な情報が記載されています。
パート II (モジュール 5 ~ 7) のイントラネット、エクストラネット、およびインターネットに関するモジュールでは、特定のアプリケーション シナリオにおけるセキュリティ保護について説明しています。アプリケーションで採用されている (または今後採用する予定の) アーキテクチャと展開パターンを理解している場合は、このパートを読むことで、関連するセキュリティ問題と、特定のシナリオにおけるセキュリティ保護に必要な基本構成手順を把握できます。
最後のパート IV にある追加情報と参考資料は、特定のテクノロジ分野の理解に役立ちます。また、このパートには、できるだけ短期間で実用的なセキュリティ ソリューションを開発できるよう、作業方法をまとめた文書も含まれています。
このガイドの構成
このガイドは、4 つのパートに分かれています。論理的な区分けを使用することで、より簡単に内容を理解できるようになっています。
パート I: セキュリティ モデル
パート I には、パート II 以降の内容を理解するための基礎的な情報が記載されています。パート I で紹介される概念、原則、およびテクノロジを理解することで、後続のモジュールを十分に理解できるようになります。パート I には、以下のモジュールが含まれます。
パート II: アプリケーション シナリオ
大部分のアプリケーションは、イントラネット、エクストラネット、またはインターネット アプリケーションに分類されます。このパートでは、一般的なアプリケーション シナリオを、このカテゴリごとに 1 つずつ紹介します。各シナリオの主要な特徴を説明した上で、セキュリティ上の潜在的な脅威について分析します。
次に、各アプリケーション シナリオについて、最適な認証、認定、およびセキュリティ保護された通信戦略を構成し、実装する方法を紹介します。各シナリオには、詳細な分析、認識すべき注意点、およびよくある質問とその回答 (FAQ) についての節も含まれます。パート II には、以下のモジュールが含まれます。
パート III: 各層の保護
このパートでは、セキュリティ保護された .NET 接続型 Web アプリケーションに関連する個々の層およびテクノロジについての詳細情報を紹介します。パート III には、以下のモジュールが含まれます。
各モジュールでは、特定のテクノロジに適用されるセキュリティ アーキテクチャを簡単に説明します。各テクノロジにおける認証および認定の戦略について説明すると共に、構成可能なセキュリティ オプション、プログラムによるセキュリティ オプション、特定の戦略の採用時期を決める際に実行すべき推奨事項も記載します。
また、各テクノロジにとって最適な認証、認定、およびセキュリティ保護された通信のオプションを選択し、実装するための手順と情報のほか、特定のテクノロジに固有の追加情報も示します。各モジュールの最後には、推奨事項の要約が記載されています。
パート IV: 参照
このパートでは、ここまでに説明された技術、戦略、およびセキュリティ ソリューションについて理解を深めるための追加情報を紹介します。ここでは、特定のセキュリティ ソリューションを実装するための詳細な作業手順を記載します。このパートには、以下の内容が含まれます。
システム要件
このガイドは、.NET Framework を使用して、Windows® 2000 で動作する安全な ASP.NET アプリケーションを設計、構築する際に役立ちます。このガイドは .NET Framework Version 1 (Service Pack 2 適用) を対象としていますが、ここで説明された概念やコードは次バージョンの .NET Framework にも適用されます。このガイドには、次バージョンで提供される新しいセキュリティ機能や、マイクロソフトの次世代 Windows サーバー オペレーティング システム Windows Server 2003 に搭載される新機能についての予備知識も記載されています。
このガイドを使用するには、Windows XP Professional または Windows 2000 Server SP3 を実行するコンピュータが最低 1 台必要です。また、Visual Studio® .NET、.NET Framework SP2、および SQL Server 2000 SP2 も必要です。
さらに、ソリューションによっては、Windows 2000 Server SP3、Windows 2000 Advanced Server SP3、または Windows 2000 DataCenter Server SP3 を実行するコンピュータがもう 1 台必要になる場合もあります。
サンプル ファイルのインストール
サンプル ファイルは、ガイドの Web サイト (http://www.microsoft.com/mspress/books/6501.aspx) (英語) からダウンロードできます。サンプル ファイルをダウンロードするには、この Web ページの右側にある [More Information] メニューの [Companion Content] リンクをクリックします。[Companion Content] ページが開き、サンプル ファイルのダウンロード リンクが表示されます。
サポート
このガイドおよび「Companion Content」の内容は、正確性に最大限の注意を払って記載されています。これらの内容についてのご質問やご意見は、secguide@microsoft.com (英語) までメールでお寄せください。