1

ユーザー名やコンピューター名などのクライアントから一意のキーを取得しようとしていますが、wcf 側では次のいずれも機能しません。

HttpContext.Current.Request.LogonUserIdentity.Name // blank
Security.Principal.WindowsIdentity.GetCurrent().Name

セキュリティのために匿名モードを使用していますが、ユーザーはログオンしてはいけません。これどうやってするの ?

ありがとう。

4

2 に答える 2

1

匿名認証モードを使用している場合は、空白の名前が表示されます。モードが示すように、リクエストは一種の....匿名です。

一意の識別子が必要な場合、このシナリオでの最善の策は、最初の実行時に作成され、分離ストレージに保存された Guid を含むカスタム ヘッダーをリクエストに追加することだと思います。

于 2012-06-05T14:30:26.087 に答える
0

一意の IP アドレスを保証できる場合 (可能性は低いですが、可能です):

にアクセスしRequest.ServerVariablesて、消費者の IP アドレスを取得できますか?

一般的なサーバー変数キーのリストを次に示します。

一意の IP アドレスを保証できない場合:

この SL フォーラムの投稿では、コンテキストのために前後に送信される分離ストレージに保持されている GUID を使用することを提案しています。

于 2012-06-05T14:32:27.520 に答える