2012-08-23 1 views
7

私はMembershipProviderクラスについて学習してきたと私はMembership.ValidateUser()メソッドは、ユーザーがログインするために使用されることになったと思っていた。

しかし、私はちょうど学びましたFormsAuthentication.Authenticate()があること。

ValidateUser()の目的は何ですか?Membership以内ですか?

答えて

10

要するに、認証Cookieを一定期間保存しなくても、ユーザーが誰であるかを単純に検証したい場合があります。

+0

FormsAuthentication.Authenticate()のオーバーライドでMembershipProvider.ValidateUser()を使用する必要がありますか? – Luke

+0

@Coulton、 'Authenticate()'メソッドは本質的にこの文脈で同じことをします。したがって、オーバーライドする必要はありません。 'ValidateUser()'メソッドを使うと、理論的にはプロバイダが複数ある場合はプロバイダを選択することができます。 'Authenticate()'メソッドはあなたのweb.configで設定されたものを使用します。 –

+1

Authenticate()が廃止されていることを[ここ](http://msdn.microsoft.com/en-us/library/system.web.security.formsauthentication.authenticate.aspx)に気付きました。代わりに、Membership.ValidateUserなどのメンバーシップAPIを使用することもできます。詳細については、http://go.microsoft.com/fwlink/?LinkId = 252463を参照してください。だから、私はMembership.ValidateUser()を使用し、そのメソッド内で自分のフォーム認証を行う必要があります – Luke

1

渡されたユーザー名とパスワードがデータベースに存在し、一致する場合にのみデータソース(データベース)をチェックし、一致する場合はtrueを返しますCheck MSDN。一致しない場合はfalseを返します。

public static bool ValidateUser(string username, string password)