2

プロジェクトでは、Webサービスの代わりにasp.netmvcコントローラーを使用しています。

クライアントアプリからコントローラーを呼び出すと、認証の問題が発生します。Webサービスを使用する場合、SOAPヘッダーを使用できますが、現在asp.net mvcには、SOAPヘッダーがありません。

助けてください。

私はWebセキュリティについて少し知っています。

4

3 に答える 3

0

いくつかのオプションがあります。

  1. リクエストヘッダーを使用して、セキュリティトークンを含めます。
  2. リクエスト本文で送信するメッセージにセキュリティトークンを含めます。
  3. アプリケーションでFormsAuthenticationなどを使用している場合は、コンシューマーにログインアクションを呼び出すように依頼してから、Forms Auth Cookieを取得し、そのCookieを後続の呼び出しに含めることができます。
于 2012-05-22T05:40:36.270 に答える
0

httpサービスにアクセスするときにこれを行う通常の方法は、次の形式で認証ヘッダーに渡すことです(フィドラーからの要求を行う場合)

Authorization: Basic user123:pass123

user123:pass123文字列は通常base64でエンコードされているため、サーバー側でデコードし、ユーザーストアと照合して、ユーザーを認証する必要があります。一例はここにあります

于 2012-05-22T05:44:49.557 に答える
0

石鹸を使っていないので。単純なhttpの方法を使用できます。つまり、HttpRequestを開始し、HttpResponseを介して結果を処理します。したがって、Webブラウザからのサインインとして認証アクションをシミュレートする必要があります。

応答からセキュリティトークンまたはCookieを取得する必要があります。そして、それらを次のリクエストに入れます。したがって、コントローラーはリクエストのIDを認識します。

于 2012-05-22T05:44:51.150 に答える