問題タブ [wsfederationhttpbinding]
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.
c# - .NetwsFederationHttpBindingおよびSAML2.0
OK wsFederationHttpBindingを使用してSAML実装を作成しましたが、soap:Bodyを暗号化したくありません。
ここで指定されているようにhttp://msdn.microsoft.com/en-us/library/system.servicemodel.wsfederationhttpsecuritymode.aspx
「メッセージセキュリティモード」は、
デフォルトでは、本文は暗号化されて署名されています。
ボディの暗号化をオフにするにはどうすればよいですか?
wcf - MEX 経由で WsFederationHttpBinding エンドポイントの STS バインディングを自動生成できますか
WsFederationHttpBinding エンドポイントをプログラムで公開する WCF サービスがあります。次に、Visual Studio を使用して、サービス参照ダイアログを使用してクライアント側のエンドポイントを作成したいと考えています。クライアントは正しいエンドポイントとバインディングを生成しますが、STS のクライアント構成でバインディングを手動で作成し、フェデレーション サービス バインディングの issuer 要素に接続する必要があります。STS バインディングがクライアントで自動的に生成されるようにサーバー側バインディングを作成する方法はありますか?
これは基本的に、コードでバインディングを生成する方法です。
Visual Studio でこれへのプロキシを生成したときに、stsBinding が構成に含まれていないか、接続されていません。これを実現する方法はありますか、それとも MEX で許可されていませんか?
performance - Ws2007FederationHttpBinding - 268435456 バイトのマネージ メモリ バッファの割り当てに失敗しました。使用可能なメモリの量が少ない可能性があります
ws2007FederationHttpBinding バインディングを介して公開された WCF サービスがあります。このサービスで 100MB のワード ドキュメントにアクセスしようとすると、「268435456 バイトのマネージ メモリ バッファの割り当てに失敗しました。使用可能なメモリの量が少ない可能性があります。」というエラーが表示さ れます。
サーバー側の構成
wcf - SAML トークンで WCF を消費し、フェデレーション バインディングを使用する際のタグ要件
セキュリティ上の理由から、すべてのアプリがこのトークンを取得する必要があるため、組織内に SAML トークンを提供する STS サービスがあります。SAML トークンを受け入れ、要求を処理する前に同じことを検証する WCF サービスを構築しています。
これまでのところ、Federationbinding をセットアップしました [ただし、私のサービスはファイアウォール内の内部/イントラネット アプリのみを提供するため、意図した要件は不明です。SOAP UI を使用して WCF をヒットし、デバッグ中に応答を取得することができました。しかし、奇妙なことに、セキュリティ タグの下で SAML をマスクする必要がありました。それ以外の場合は機能しません。これに対する回避策があるか、またはこれが意図された使用であるのか疑問に思っています。Java クライアントが私の WCF サービスを消費するためです。
SOAP UI から動作するサンプル リクエスト:
タグの下に SAML アサーションが含まれていることがわかります。これを削除すると、サービスが機能しなくなり、セキュリティ メッセージ ヘッダーが存在しないというエラーが表示されます。
.net - HTTPS を使用した WCF WS2007FederationHttpBinding
HTTPS プロキシの背後にある WCF API に接続しようとすると、次のエラーが発生します。
'CN=hostname' という名前のサーバー証明書は、その拇印 ('X') がエンドポイント ID で指定されたもの ('Y') と一致しないため、ID 検証に失敗しました。その結果、現在の HTTPS リクエストは失敗しました。クライアントで使用されるエンドポイント ID またはサーバーで使用される証明書を更新してください。
X はプロキシが使用する証明書の拇印、Y はサービスが使用する証明書の拇印です。
問題は、STS からトークンを取得できたのに、その後 Web サービス呼び出しを実行できないことです。
ローカル SSL プロキシを使用して PC で問題を再現しました。プロキシで使用される証明書は PC で信頼されています。HTTP を使用する場合はすべて問題ありません。
数日間解決策を検索したところ、問題に近いがもう適用できないこの KB 記事に気付きました (サンプルとサーバーを .Net 4.5 で実行しています): https://support.microsoft.com/ en-us/kb/2564823
私は何が欠けていますか?
コードは次のとおりです。