現在オフラインです。再接続するためにインターネットの接続を待っています

SSL の終了と ASP.NET

重要: このサポート技術情報 (以下「KB」) は、翻訳者による翻訳の代わりに、マイクロソフト機械翻訳システムによって翻訳されたものです。マイクロソフトは、お客様に、マイクロソフトが提供している全ての KB を日本語でご利用いただけるように、翻訳者による翻訳 KB に加え機械翻訳 KB も提供しています。しかしながら、機械翻訳の品質は翻訳者による翻訳ほど十分ではありません。誤訳や、文法、言葉使い、その他、たとえば日本語を母国語としない方が日本語を話すときに間違えるようなミスを含んでいる可能性があります。マイクロソフトは、機械翻訳の品質、及び KB の内容の誤訳やお客様が KB を利用されたことによって生じた直接または間接的な問題や損害については、いかなる責任も負わないものとします。マイクロソフトは、機械翻訳システムの改善を継続的に行っています。

英語版 KB:910444
サポート期間が終了した「サポート技術情報」資料に関する免責事項
この資料は、マイクロソフトでサポートされていない製品について記述したものです。そのため、この資料は現状ベースで提供されており、今後更新されることはありません。
ASP.NET サポート音声列

SSL の終了と ASP.NET

ニーズは、この列をカスタマイズする 関心のあるトピックに関するアイデアを送信する招待したいし、「サポート技術情報」(Knowledge Base) の記事将来的にや音声のサポート列表示したい問題に対処します。 フィードバック フォーム Ask For It を使用してアイデアを送信できます。 また、この列の下部にあるフォームへのリンクの
ASP.NET サポート音声列へようこそ! 自分の名前が Jerry Orman です。 5 年間、マイクロソフトとされているしてほとんどの Microsoft や Microsoft SharePoint 製品テクノロジなどの Web 関連テクノロジに重点自分の時間を費やしてきました。 昨年のサポート エンジニアは、Microsoft ASP.NET の使用を費やしました。 今月は、して SSL の終了と ASP.NET について説明します。 特に、サーバーの構成に起因する問題に集中します。 ここでは、アプリケーションで SSL 終了でこの構成の副作用をいくつかを確認するします。

SSL の終了は、構成をコードを実行する Web サーバーが送信および over HTTP、トラフィックを受信あり、暗号化をデータ復号化、Web サーバーとクライアント間でデバイスがあります。 この構成では、クライアントが送信と HTTPS トラフィックを受信します。 終了の SSL 構成が、次のような。
クライアント <-HTTPS-> SSL デバイス <-HTTP-> Web サーバー
今すぐでは移動にこの設定では、Microsoft ASP.NET 2. 0 で生じる 2 つ以上の問題、問題を回避する方法。

問題 1 : Microsoft Age of Mythology のゲーム中に、マウス ポインタのグラフィックに異常が発生することがあります

ASP.NET 2. 0 の メニュー コントロール内でメニュー項目をポイントしたとき、次のエラー メッセージ表示こと。
このページにはセキュリティで保護およびセキュリティで保護されていないの両方のアイテムが含まれています。 セキュリティで保護されていない項目を表示するよろしいですか?
アプリケーションをセキュリティで保護されたで、SSL プロトコルを使用して、HTTP に絶対パスをレンダリングは任意のコントロール追加していないなってアドレス。 これはどういうこのメッセージでしょうか。

それは、問題は、 Menu コントロールを iFrame オブジェクトを使用して、フライアウト メニューを作成するにはいくつかの JavaScript を出力することです。 フレームの開始 URL を提供する必要があります。 スクリプトが使用しないようにする、不要なラウンド トリップを SSL 以外のシナリオは、サーバーにするには、 に関する: 空白 URL の。 ただし、ブラウザー考慮この、セキュリティで保護されていないアドレス上記エラーが発生するようにします。 Microsoft Windows SharePoint Services の面でこの問題の詳細についてはをクリックして以下「サポート技術情報」(Microsoft Knowledge Base) 資料を参照。
837850Windows SharePoint Services またはマイクロソフトから SharePoint Team Services でドキュメント ライブラリ内のエクスプローラー ビューをクリックすると「このページはセキュリティで保護およびセキュリティで保護されていないの両方のアイテムを含む」メッセージが表示されます。
明示的に言及 SSL 以外のシナリオのため、 Menu コントロールの出力を JavaScript Web サーバーが SSL デバイスの代わりに、HTTPS トラフィックを受信する場合 iFrame オブジェクトのソースをページの HTTPS アドレスに、サーバー上で設定するコード行に追加します。 これは、別の要求を開始するが、エラー メッセージを防止します。 このコードを Menu コントロールを含むページに追加して、エラー メッセージをように、JavaScript の強制的できますこの種類の環境に展開している場合、
 <script runat="server">   protected override void Render(HtmlTextWriter writer)    {        Page.ClientScript.RegisterStartupScript(typeof(Page), "MenuHttpsWorkaround",         Menu1.ClientID + "_Data.iframeUrl='https://myserver/someblankpage.htm';", true);        base.Render(writer);   }</script> 
理想的には、 MasterPage クラスまたは ユーザー コントロール クラスで、メニューがし、このコード 1 回だけを追加でした。

問題 2

あります <forms> の requireSSL 属性がある場合 要素が true に設定、サーバー応答繰り返しリダイレクトで FormsAuthentication ログイン ページにします。 これは、 FormsAuthenticationModule メソッド requireSSL 属性の処理方法で、変更によってが原因です。 True requireSSL 属性を設定する FormsAuthenticationModule このメソッドは設定、 セキュリティで保護された 属性を持つ Cookie を作成します。 (この現象は、.NET Framework 1. 1 の場合と同じ) です。 セキュリティで保護された 属性を使用して、クライアントはのみ、Cookie サーバーに渡す、クライアントが SSL を使っている場合。 この部分が、クライアントが SSL を使用して実際にいるため、です。 匿名ユーザーにアクセスできないする SecurePage.aspx ページとについて説明します。 SSL プロトコルと、 requireSSL 属性、最終的 SecurePage.aspx する最初の要求で次のトラフィック。
-> クライアントが SecurePage.aspx の GET 要求を出します。

<-サーバーは、ログイン ページに、HTTP 302 (リダイレクト) で応答します。

-> クライアントが Login.aspx の GET 要求を出します。

<-サーバーが [OK] を 200 には応答します。 ログイン ページがクライアントに表示されます。

-> クライアントが、POST 要求を Login.aspx にします。

<-サーバーが、302 (リダイレクト) と SecurePage.aspx に応答します。 セットの Cookie ヘッダーはと共に送られます、クライアントに セキュリティで保護された 属性。

-> クライアントが SecurePage.aspx に GET 要求を出します。 Cookie は、クライアントは SSL を使ってので渡されます。

<-サーバーは、ログイン ページに戻る、302 (リダイレクト) で応答します。

FormsAuthenticationModule クラスで変更されたため、リダイレクト最後の要求に表示されます。 追加のチェックは、ユーザーが、非 SSL 要求経由で、セキュリティで保護された Cookie を渡しているかどうかを決定する ASP.NET 2. 0 で追加されました。 ASP.NET 2. 0 は、 Request.IsSecure 属性が true に設定されて場合、または、 FormsAuthentication.RequireSSL プロパティが false に設定されて場合、 FormsAuthenticationTicket クラスを返します。
  • FormsAuthentication.RequireSSL プロパティは、 requireSSL 属性が構成ファイルで false に設定された場合に false に設定されます。
  • Web サーバーが SSL トラフィックを受信する場合、 Request.IsSecure 属性は true に設定されます。
あるため、このシナリオでは、Web サーバーが SSL トラフィックを受け取らない、 requireSSL 属性が true に設定されて、両方のチェック false を返します。 その結果、 FormsAuthenticationTicket クラスは返されませんされ、Cookie は、 Request.Cookies コレクションから削除します。

この時点で、ユーザーが行っている要求が匿名、サーバーがユーザーの資格情報をまだ検証されないため、します。 要求が ASP.NET パイプラインを通過するよう UrlAuthorizationModule クラスは、ユーザーがページへのアクセスを持ってかどうかを確認します。 UrlAuthorizationModule クラスは、匿名ユーザーには SecurePage.aspx ページへのアクセスがあるないため、401 を返しますエラー メッセージ ("Access Denied")、その結果をログイン ページに、リダイレクトします。

この現象を避けるためをまず削除する必要 requireSSL 属性の <forms> から、構成ファイル内のタグ。 プログラムで、 FormsAuthentication セキュリティで保護された 属性を設定する必要があるし、Cookie。 次のコードは、 FormsAuthentication Cookie と セッション Cookie
void Application_EndRequest(object sender, EventArgs e){     if (Response.Cookies.Count > 0)     {          foreach (string s in Response.Cookies.AllKeys)          {               if (s == FormsAuthentication.FormsCookieName || s.ToLower() == "asp.net_sessionid")               {                    Response.Cookies[s].Secure = true;               }          }     }}
関連情報
Menu コントロールの詳細については、ご覧次マイクロソフト開発者向けネットワーク (MSDN) 下さい。 FormsAuthentication.RequireSSL プロパティの requireSSL 属性の詳細については、次の MSDN Web サイトを参照してください。 HttpRequest.IsSecureConnection プロパティの IsSecure 属性の詳細については、次の MSDN Web サイトを参照してください。 FormsAuthenticationModule クラスの詳細についてには次 MSDN Web サイトを参照してください。 UrlAuthorizationModule クラスの詳細についてには次 MSDN Web サイトを参照してください。

お役この情報便利な SSL の終了と Microsoft ASP.NET を使用している場合です。 サポート音声列はを忘れないでください! 常に、自由に列を将来的に対処するトピックまたはフォーム Ask For It を使用して、技術のアイデアを送信します。

警告: この記事は自動翻訳されています

プロパティ

文書番号:910444 - 最終更新日: 11/22/2007 03:46:00 - リビジョン: 1.3

Microsoft ASP.NET 2.0

  • kbhowto kbasp kbmt KB910444 KbMtja
フィードバック