7

既存の Web サービスを WCF サービスに置き換えます。移行の最初のステップとして、年内にクライアントがアップグレードされるまで、BasicHttpBinding でエンドポイントを公開します。

Windows サービスを使用して新しい WCF サービスをホストする計画です (サービスはイントラネット内からのみ呼び出されるため、HTTP は実際には必要ありません)。段階。

ただし、Context.Request.UserHostName を使用してホスト名を取得している現在の Web サービス コードを見て、WCF サービスで呼び出し元のホスト名を取得するのに問題があります。発信者のユーザー名と IP アドレスを取得できましたが、環境内のすべての関連するアクセス許可/セキュリティ サービスは、IP ではなくホスト名を使用するため、サービス内でホスト名を取得する方法はありますか?

PS私はclientCredentialTypeをWindowsに設定して、セキュリティモードをTransportCredentialOnlyに設定しました

4

1 に答える 1

10

IISでホストしていないため、ASP.NET互換モードHttpContextを使用して、ASP.NETプロセスに通常存在するアクセスを取得することはできません。

代わりに、名前空間クラスのGetHostEntryメソッドを使用して、取得するIPアドレスのエイリアス(DNS名)を含むインスタンスを取得できます。DnsSystem.NetIPHostEntry

于 2009-02-19T17:10:33.900 に答える