5

私のサービスの実装では、次のものがあります。

[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Required)]

私の .config ファイルには次のものがあります。

<serviceHostingEnvironment aspNetCompatibilityEnabled="true" />

と:

  <system.web.extensions>
    <スクリプト>
      <ウェブサービス>
        <authenticationService enabled="true" requireSSL = "false"/>
      </ウェブサービス>
    </スクリプト>
  </system.web.extensions>

と:

<認証モード="フォーム" />

私のサービスの「ログイン」メソッドには、次のものがあります。

FormsAuthentication.SetAuthCookie(request.UserName, false);

ただし、チェックすると:

HttpContext.Current.User.Identity.Name

空文字列です。私は何が欠けていますか?

4

3 に答える 3

1

代わりに ServiceContext.User.Identity を使用してみてください。

于 2011-08-28T09:24:49.973 に答える
1

フォーム認証は、ユーザーにログイン フォームへの入力を求める場合に使用されます。

サービスの場合は、別の認証メカニズムを使用することをお勧めします。

于 2009-06-22T20:09:30.713 に答える
0

後続のリクエストで Identity.Name をチェックしていると思いますか?

web.config に要素はありますか?

また、ログイン応答から Cookie を取得し、後続の要求で再送信することを確認していますか?

于 2011-02-16T21:56:59.400 に答える