問題タブ [transport-security]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
1991 参照

c# - トランスポート セキュリティは、インターネットを介した WCF サービスにとって不適切な方法ですか?

インターネット経由でアクセスできる WCF サービスがあります。クライアントを認証するためのユーザー名資格情報を使用した wsHttpBinding バインディングとメッセージ セキュリティ モードがあります。msdn は、トランスポート セキュリティのようなポイント ツー ポイント セキュリティではなくエンド ツー エンド セキュリティを提供するため、インターネット シナリオにはメッセージ セキュリティを使用する必要があると述べています。

インターネット上の wcf サービスにトランスポート セキュリティを使用するとどうなりますか? それは悪い習慣ですか?私のデータが悪意のあるユーザーに見られる可能性はありますか?

0 投票する
1 に答える
196 参照

wcf - SSL およびスレッド情報を使用した WCF トランスポート セキュリティ

上記のトピックについて質問があります。WCF サービスがあり、トランスポート セキュリティ モデルを使用しています。しかし、理解できないスレッド状態に関連するメカニズムがいくつかあります。サービスのコンストラクターで Thread.CurrentPrincipal を設定しようとしましたが、サービスの呼び出されたメソッドの開始時に Thread.CurrentPrincipal が null になりました... WCF トランスポート セキュリティを使用している場合に発生する可能性があることを読みました。

理由は WCF トランスポート セキュリティにありますか?それとも、この動作には他の理由がありますか?

前もって感謝します!説明に混乱がありましたら申し訳ありません。

0 投票する
3 に答える
8699 参照

wcf - 証明書認証によるトランスポート セキュリティ

Web サービス localhost/MyService/MyService.svc にアクセスすると、次のエラーが発生します。

サービス「SslRequireCert」の SSL 設定が、IIS の「Ssl、SslNegotiateCert」の設定と一致しません。

http://msdn.microsoft.com/en-us/library/ms731074.aspxで指定されている web.config の例に従っています。

ここに私のwcfサーバーのweb.configがあります:

IIS を次のように構成しました。

  • 自己署名証明書を使用して追加された https バインディング
  • SSL 設定で、SSL を要求し、クライアント証明書を受け入れるにチェックを入れます。
  • 自己署名証明書がローカル コンピューターの信頼されたルート CA に追加されました。

.asmx サービス定義を参照して実行できますが、.svc で上記のエラーが発生します。

0 投票する
4 に答える
8782 参照

wcf - HTTPSを介したクライアント証明書を介したWCF要求の認証

私はこの1週間、このブラストされたWCFサービスの構成に苦労してきましたが、ドキュメントにもかかわらず、私がやろうとしていることは不可能だと思うようになり始めています。

簡単に言うと、WCFサービスにクライアント証明書(サーバーが証明書ストアに持つ)を要求し、System.ServiceModel.ServiceSecurityContextを使用してそのIDにアクセスするようにしたいのです。さらに、これはトランスポートセキュリティを使用する必要があります。

これが私のサーバー構成です:

これが私のクライアント設定です:

httpでsecuritymode='None'の場合、コードはすべて完全に機能しますが、もちろん、認証はなく、System.ServiceModel.ServiceSecurityContextには何もありません。これらすべての要素で数十のバリエーションを試しましたが、必然的に、「既存の接続がリモートホストによって強制的に閉じられました」という例外をスローするリクエストが発生します。

自己署名証明書「Cyber​​dyneIndustries」を使用しています。この証明書のCA証明書を信頼できるCAストアに追加しました。証明書を表示すると、証明書がチェックアウトされます。私はhttp名前空間管理の地獄を通り抜け、それらの問題も解決しました。WCFはこれを実際にはサポートしていないようです...私が間違っていると言ってください。

TIA。

0 投票する
1 に答える
443 参照

java - Transport Security と Message Authentication over SSL の違いは何ですか?

Transport SecurityMetro WSITとの違いは何Message Authentication over SSLですか?

トランスポート セキュリティ:

トランスポート セキュリティ メカニズムは、認証と機密性のために SSL を使用して、トランスポート中にアプリケーションを保護します。

SSL 経由のメッセージ認証:

Message Authentication over SSL メカニズムは、暗号で保護された ID または認証トークンをメッセージに添付し、SSL を使用して機密性を保護します。

0 投票する
1 に答える
10344 参照

asp.net - Classicasp「メッセージのセキュリティを確認するときにエラーが発生しました。」iis7トランスポートレベルのセキュリティ

II7では、WCF/asp.netベースのAPIをホストします。従来のaspアプリケーションのユーザーがAPIに接続できるようにするには、「トランスポート」と呼ばれるバージョンを公開する必要がありました。このトランスポートバージョンもasp.netで記述されており、同じアセンブリを指しています。従来のaspが認証できるように、セキュリティレイヤーだけが異なります。メッセージベースのセキュリティとは対照的に、トランスポートレベルのセキュリティが使用されます。

ブラウザを使用してサービス参照をロードする場合、svcutil.exe...WDSLページをロードできます。

テストaspページを使用してこの参照からWebメソッドを呼び出すと、次のように返されます。

Webサービスの呼び出しを終了しました。ステータス=内部サーバーエラーResponseText=a:InvalidSecurityメッセージのセキュリティを確認するときにエラーが発生しました。

これは、認証が失敗していることを示しています。asp.netまたはアプリケーションのWCFストームを使用してテストし、通常のAPIに接続すると、すべてが正常に機能します。

APIは最近移行されました。何かが正しく設定されていないように見えますが、何を説明するのか途方に暮れています。

svcutil.exe ... WDSLサービスリファレンスを参照できます。ブラウザで選択すると、期待されるXML応答が得られます。

使用されるユーザー名とパスワードは、メッセージベースのセキュリティを使用してAPIの非クラシックasppublicaitonを使用する場合に機能します。

トランスポートレベルのセキュリティ障害の検出と設定に関して、問題の診断に役立つトラブルシューティングのヒントを投稿することは可能でしょうか?

ありがとうスコット

次の更新を追加するために編集:

デフォルトのアプリプールと新しいアプリプールを使用しようとしましたが、同じ問題が解決しません。

テストページのエラー:ResponseText = a:InvalidSecurityメッセージのセキュリティを確認するときにエラーが発生しました。

IISログには次の情報が表示されます。v3/transport/ testclassicasptransportwcfservice.asp(200 0 0)(つまり、iis 200)/V3/Transport/DeviceService.svc/DeviceService(500 0 0)(つまり、iisエラー500)

注:TRANSPORTおよびV3で定義された仮想ディレクトリ。V3は、認証に従来のaspとは対照的に、.netを使用して問題なく動作します。

イベントログ:次のエラーのため、アプリケーションプール'トランスポート'のテンプレート永続キャッシュの初期化に失敗しました:アプリケーションプールのディスクキャッシュサブディレクトリを作成できませんでした。データには追加のエラーコードが含まれている場合があります。

この参照は修正を示唆しているように見えますが、「appcmd」のDIRパスと参照の多くは存在しません。

_http://theether.net/kb/100127

0 投票する
1 に答える
389 参照

silverlight-4.0 - N 層アプリの WCF と Silverlight 4.0: セキュリティで保護されたサービス呼び出し (SSL なし、メッセージ セキュリティなし、x.509 なし)

私たちのアーキテクチャは単純な N 層モデルであり、IIS7 (DiscountASP でホストされている) にある ASP.Net アプリケーションで構成され、WCF サービスでメソッドを公開します。これらのメソッドは、EF4 を使用して DB と通信します。クライアントは Silverlight 4.0 です。

3 つの重要なポイント:

  • 認証と承認は問題ではありません。サービスへの呼び出しは匿名であり、呼び出し元の身元は気にしません。

  • メソッド呼び出しで転送されるデータは、機密ではありません

  • 誰にも電話をかけられないようにしたいだけです。

間違っている場合は訂正してください。Silverlight
ではサポートされていないため、メッセージ セキュリティはオプションではありません。
トランスポート セキュリティ (HTTPS および x.509/SSL 証明書) も Silverlight では実行できません

したがって、一定レベルのセキュリティを強化するための手順は次のとおりです。

  • 秘密鍵は、XAP の dll の 1 つにハードコードされています。

  • この dll はスクランブルされているため、再設計することはできません。

  • 秘密鍵は、すべてのサービス メソッド呼び出しにパラメーターとして送信されます。

  • 各メソッドの開始時に、秘密鍵を DB にある元の鍵と照合します。

  • サービスから MetaDataExchange エンドポイントを削除します。

この最小限のセットアップと多くの欠陥を考慮すると、おそらく最大の欠陥は、転送が保護されておらず (HTTP)、秘密鍵が公開されていることです。質問は次のとおりです。

悪意のあるユーザーが私たちのシステムに危害を加えたい場合、秘密鍵を抽出し、公開されているメソッドを見つけてそれらを呼び出し始めるために、どれだけの努力が必要でしょうか?

各呼び出しで資格情報の基本的な保護を提供できる他の WCFcombiantion はありますか (HTTPS または証明書なし)?

0 投票する
2 に答える
7791 参照

wcf - WCF 4 - トランスポートとメッセージ セキュリティに X.509 証明書を使用する TransportWithMessageCredential

IIS でホストされる WCF4 サービスを作成しようとしています。これは、メッセージ セキュリティに X.509 証明書を使用し、トランスポート セキュリティに相互認証が必要な SSL を使用します (プロジェクトの仕様では、WS-Security と SSL の使用が必要です。通常、1 つだけが行きますが、気にしないでください)。

TestRootCA を作成し、それを使用してサーバー証明書 (localhost) とクライアント証明書 (TestUser) を発行しました。最初はトランスポート セキュリティのみを確立してテストしたかったので、https を使用するように IIS を構成し、SSL 証明書 (私が作成したローカルホスト証明書) を構成し、クライアントからのクライアント証明書を要求するように IIS を構成しました。次に、サービス web.config を変更し、対応する svcutil.conf を作成して svcutil を実行すると、テスト用の WinForms アプリのクライアント プロキシ クラスと app.config が正常に作成されました。プロキシ クライアントを作成するときに、次のように呼び出して証明書を設定します。

ここまでは順調ですね。しかし、サービスの web.config を (Transport の代わりに) TrasportWithMessageCredential を使用するように変更し、メッセージ セキュリティの clientCredentialType として "Certificate" を指定すると、"Certificate"HTTP 403 - The HTTP request was forbidden with client authentication scheme 'Anonymous'を指定したにもかかわらず、.

私の最終的な web.config は次のようになります。

そして私のクライアント app.conf:

何か案は?

編集:

クライアント証明書の IIS SSL 設定をrequireからacceptに変更することで、なんとか機能させることができました。SSL を使用したトランスポート セキュリティよりも証明書を使用したメッセージ セキュリティを導入すると、クライアントはメッセージの署名に証明書を使用しますが、SSL を介した相互認証には使用しないようです (証明書が割り当てられているにもかかわらず、匿名としてログオンしようとします)。

なぜこれが起こっているのかわからないので、専門家からのコメントが欲しいです:)。

0 投票する
1 に答える
1525 参照

.net - WCF - 基本認証を使用した Soap Web サービス、ssl なし、自己ホスト型

私はこのアプローチが安全でないことを十分に認識していますが、WCF がホストする SOAP Web サービスの基本的な http 認証が正当に必要とされています。これを機能させる方法は本当にありませんか?基本認証を追加するために私が見つけたすべての方法には、トランスポート (https) セキュリティが必要です。

0 投票する
2 に答える
15583 参照

ssl - 一方向SSLは一方向暗号化ですか?

一方向 SSL が使用されている場合 (サーバー証明書認証)、クライアントから送信されたデータは、サーバー証明書の公開鍵を使用して暗号化されます。そのため、クライアントから送信されたデータのプライバシー保護が可能です。私の質問は

  1. これは、サーバーからクライアントに送信される一方向 SSL データが暗号化されず、プレーン テキストとして送信されることを意味しますか?

  2. サーバーからクライアントへの通信とクライアントからサーバーへの通信の両方で、データ/メッセージは署名されていないため、改ざん防止やデータの完全性は保証されません。メッセージ セキュリティ オプションではなく SSL ベースのトランスポート セキュリティを使用しているときに、データの整合性を実現する他の手段はありますか?