問題タブ [wcf-sessions]

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 投票する
2 に答える
2092 参照

ajax - wsHttpBindingを使用するときにInstanceContextMode.PerSessionがPerCallのように動作するのはなぜですか?

私はSOAP1.2を使用してAJAXクライアントによって消費されるWCFサービスを持っています

Web.config:

私が読んだ<security mode="None"/>ことから、「wsHttpBinding」バインディングで公開されたサービスは、WS-*ファミリーのWebサービス仕様のWS-Securityを実装しているため、使用する必要があります。バインディングはセキュリティを使用するため、AJAXはセキュリティコンテキストをサポートしていないため、リクエストは拒否されます。

私のWCFサービスの動作は次のように定義されていInstanceContextMode.PerSessionます:

しかし、私がそれを消費すると、サービスはPerCallとして動作し、すべての呼び出しは現在のインスタンスを使用する代わりに新しいWCFインスタンスを開始します。

wsHttpBindingを使用するときにInstanceContextMode.PerSessionがPerCallのように動作するのはなぜですか?

私に何ができる?

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

wcf - WCF セッションは特定のユーザーに固有のものではありません

WCF 関数

プロキシー

私の問題は、複数のクライアントがサービスにアクセスしているときに、各クライアントが最後に設定されたセッションにアクセスすることです。セッションはブラウザー要求ベースではなく、クライアントを認識しません。どのクライアントがどのリクエストを送信したか。それらを各クライアントに固有のものにするにはどうすればよいですか。各クライアントが独自のセッションを持つ必要があることを意味します。

助けてください

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

wcf - WCF で SessionMode として "Allowed" を使用するのはいつですか?

WCF サービス コントラクトで SessionMode 値として "Allowed" を使用するシナリオを教えてください。

0 投票する
0 に答える
125 参照

c# - メッセージ セキュリティまたはトランスポート セキュリティで動作しないセッション

Linux マシンからクライアントと通信できる WCF サービスをセットアップしようとしています。各クライアントの状態を維持しているので、クライアントを追跡できるように、サービスはセッションをサポートできる必要があります。

クライアントは、サービスがホストされているネットワーク以外のネットワークから着信するため、カスタムの UserNamePasswordValidator と ServiceAuthorization マネージャーを使用してクライアントを認証しています。

Security.Message.ClientCredentialType = MessageCredentialType.Windows を使用すると、Windows マシンからサービスに接続でき、WCF セッションが確立されます。ここまではすべて正常に動作します。

ただし、Linux から接続するクライアントで動作させる必要があると最初に述べたように、SecurityMode.TransportWithMessageCredential と SecurityMode.Message を使用しようとしました。WCF から、証明書を使用して通信を暗号化するように求められたので、それを実行しました。ただし、セッションを機能させることができません。クライアントからの呼び出しごとに、ServiceSecurityContext.Current.AuthorizationContext.Id が変更されます。

MessageCredentialType.Windows を使用せずに WCF セッションで動作するようにするには、次のコードで何を変更する必要があるか教えてください。

要するに、SecurityMode.TransportWithMessageCredential または SecurityMode.Message を使用すると、WCF セッションが機能しないということです。

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

wcf - セッション ID は、WCF の単一インスタンス コンテキスト モードの異なるクライアントで同じになりますか?

セッション ID は、WCF のシングル インスタンス コンテキスト モードで異なるクライアントに対して同じになりますか?

詳しく説明してください。

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

wcf - セッションごとに 1 回だけ WCF で ClaimsAuthenticationManager.Authenticate を呼び出す

wcf サービス用にカスタム ClaimsAuthenticationManager をセットアップします。メソッド ClaimsAuthenticationManager.Authenticate がすべての wcf 呼び出しに対して実行されることがわかりました。代わりに、不必要なオーバーヘッドを避けるために、セッションごとに 1 回実行したいと考えています。

マイクロソフトによると:

クレーム認証マネージャーは通常、次の例外を除いて、セッションごとに 1 回呼び出されます

ソース: https://msdn.microsoft.com/en-us/library/ee748487.aspx

私のカスタム バインディングはトランスポート セキュリティを使用しないため、呼び出しごとに ClaimsAuthenticationManager.Authenticate が実行される理由がわかりません。

代わりに、このメソッドをセッションごとに 1 回呼び出すために満たす必要がある追加の要件があるかどうかは誰にもわかりませんか? ご提案いただきありがとうございます。

wcf バインディング構成:

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

c# - WCF 独自の EndpointBehavior 読み取りクライアント セッション

メソッドが実装されたIClientMessageInspectorインターフェイスがあります。このメソッドでは、クライアントに設定されたオブジェクトBeforeSendRequest()を取得したいと考えています。Session何かのようなもの。

この質問と非常によく似たものが必要だと思います。