0

RESTFulwcfサービスでHMACMD5認証を使用しています。署名の一部は、要求されたリソースまたはクライアントの要求の完全なURLに基​​づいています。

次に、サービスの署名を検証しようとします。要求されたURLは署名の一部であるため、それを取得する必要があります。次の方法で元のURLを取得しようとしています。

WebOperationContext.Current.IncomingRequest.UriTemplateMatch.ToString();
WebOperationContext.Current.IncomingRequest.UriTemplateMatch.RequestUri.OriginalString;

これは常に機能するとは限りません。これは、同じドメインでSSLを使用するテストサーバーでのテスト段階にすぎないため、ドメインの問題である可能性があると思います。

たとえば、私が送信するとき

_https://www.mytestingserver.com/GetResourcse/xxx/xxx

私は実際に書いています

_https:// MYTESTSERVER-DMZ / xxx / xxx

私のサービスへのログインに。

これをテストするにはどうすればよいですか。さらに重要なのは、書き換え後にクライアントが署名で使用したものと、署名に含まれていないものを常に取得できるようにするにはどうすればよいですか。

incomingRequestContext.UriTemplateMatch.RequestUri.OriginalString;

私はほとんどすべてをログに記録し始め、これをWebサーバーで取得しようとしましたWebOperationContextOperationContext

どんな助けでも大歓迎です。ありがとう、

4

1 に答える 1

0

ご参考までに

私はこの記事を横切ることができます:

WCFRESTサービスでのHttpContextへのアクセスの許可

これは機能しますが、基礎となるプロトコルを変更せずに、より良い方法があるかもしれません。

于 2012-07-31T18:37:43.993 に答える