C# Class GestUAB.Security.RavenDbMembershipProvider

Specialized MembershipProvider that uses a file (Users.config) to store its data. Passwords for the users are always stored as a salted hash (see: http://msdn.microsoft.com/msdnmag/issues/03/08/SecurityBriefs/)
Inheritance: Nancy.Security.MembershipProvider
Afficher le fichier Open project: GestUAB/GestUAB

Méthodes publiques

Méthode Description
ChangePassword ( string username, string oldPassword, string newPassword ) : bool

Processes a request to update the password for a membership user.

ChangePasswordQuestionAndAnswer ( string username, string password, string newPasswordQuestion, string newPasswordAnswer ) : bool

Processes a request to update the password question and answer for a membership user.

ConfirmAccount ( string accountConfirmationToken ) : bool

Activates a pending membership account.

ConfirmAccount ( string userName, string accountConfirmationToken ) : bool

Indicates whether the user account is confirmed.

CreateAccount ( string userName, string password ) : string

Creates a new user account using the specified user name and password.

CreateAccount ( string userName, string password, bool requireConfirmationToken = false ) : string

Creates the account.

CreateUser ( string username, string password, string email, string passwordQuestion, string passwordAnswer, bool isApproved, System.Guid providerUserKey, MembershipCreateStatus &status ) : MembershipUser

Adds a new membership user to the data source.

DeleteUser ( string username, bool deleteAllRelatedData ) : bool

Removes a user from the membership data source.

FindUsersByEmail ( string emailToMatch, int pageIndex, int pageSize, int &totalRecords ) : IEnumerable

Gets a collection of membership users where the e-mail address contains the specified e-mail address to match.

FindUsersByName ( string usernameToMatch, int pageIndex, int pageSize, int &totalRecords ) : IEnumerable

Gets a collection of membership users where the user name contains the specified user name to match.

GetAllUsers ( int pageIndex, int pageSize, int &totalRecords ) : IEnumerable

Gets a collection of all the users in the data source in pages of data.

GetNumberOfUsersOnline ( ) : int

Gets the number of users currently accessing the application.

GetPassword ( string username, string answer ) : string

Gets the password for the specified user name from the data source.

GetUser ( System.Guid userId, bool userIsOnline ) : MembershipUser

Gets information from the data source for a user based on the unique identifier for the membership user. Provides an option to update the last-activity date/time stamp for the user.

GetUser ( string username, bool userIsOnline ) : MembershipUser

Gets information from the data source for a user. Provides an option to update the last-activity date/time stamp for the user.

GetUserFromIdentifier ( System.Guid identifier, Nancy.NancyContext context ) : IUserIdentity
GetUserNameByEmail ( string email ) : string

Gets the user name associated with the specified e-mail address.

RavenDbMembershipProvider ( IDocumentStore documentStore ) : System
ResetPassword ( string userName, string answer ) : string

Resets a user's password to a new, automatically generated password.

UnlockUser ( string userName ) : bool

Clears a lock so that the membership user can be validated.

UpdateUser ( MembershipUser user ) : void

Updates information about a user in the data source.

ValidateUser ( string username, string password ) : Guid?

Verifies that the specified user name and password exist in the data source.

ValidateUserNameAndEmail ( string userName, string email, bool &userNameIsOk, bool &emailIsOk, System.Guid excludeKey ) : void

Validates the username.

Private Methods

Méthode Description
CreateMembershipFromInternalUser ( MembershipUser user ) : MembershipUser

Creates the membership from internal user.

HashPassword ( string password, string passwordFormat ) : string
TransformPassword ( string password, string &salt ) : string

Transforms the password.

ValidatePassword ( string password ) : bool

Validates the password.

ValidateUserInternal ( UserSecurityInfo user, string password ) : bool

Validates the user internal.

ValidateUserName1 ( string userName, string email, System.Guid excludeKey ) : bool

Validates the username.

Method Details

ChangePassword() public méthode

Processes a request to update the password for a membership user.
public ChangePassword ( string username, string oldPassword, string newPassword ) : bool
username string The user to update the password for.
oldPassword string The current password for the specified user.
newPassword string The new password for the specified user.
Résultat bool

ChangePasswordQuestionAndAnswer() public méthode

Processes a request to update the password question and answer for a membership user.
public ChangePasswordQuestionAndAnswer ( string username, string password, string newPasswordQuestion, string newPasswordAnswer ) : bool
username string The user to change the password question and answer for.
password string The password for the specified user.
newPasswordQuestion string The new password question for the specified user.
newPasswordAnswer string The new password answer for the specified user.
Résultat bool

ConfirmAccount() public méthode

Activates a pending membership account.
public ConfirmAccount ( string accountConfirmationToken ) : bool
accountConfirmationToken string /// A confirmation token to pass to the authentication provider. ///
Résultat bool

ConfirmAccount() public méthode

Indicates whether the user account is confirmed.
public ConfirmAccount ( string userName, string accountConfirmationToken ) : bool
userName string /// The username. ///
accountConfirmationToken string /// The account confirmation. ///
Résultat bool

CreateAccount() public méthode

Creates a new user account using the specified user name and password.
public CreateAccount ( string userName, string password ) : string
userName string
password string
Résultat string

CreateAccount() public méthode

Creates the account.
public CreateAccount ( string userName, string password, bool requireConfirmationToken = false ) : string
userName string /// The user name. ///
password string /// The password. ///
requireConfirmationToken bool /// (Optional) true to specify that the user account must be confirmed; otherwise, false. The default is false. ///
Résultat string

CreateUser() public méthode

Adds a new membership user to the data source.
public CreateUser ( string username, string password, string email, string passwordQuestion, string passwordAnswer, bool isApproved, System.Guid providerUserKey, MembershipCreateStatus &status ) : MembershipUser
username string The user name for the new user.
password string The password for the new user.
email string The e-mail address for the new user.
passwordQuestion string The password question for the new user.
passwordAnswer string The password answer for the new user
isApproved bool Whether or not the new user is approved to be validated.
providerUserKey System.Guid The unique identifier from the membership data source for the user.
status MembershipCreateStatus A enumeration value indicating whether the user was created successfully.
Résultat Nancy.Security.MembershipUser

DeleteUser() public méthode

Removes a user from the membership data source.
public DeleteUser ( string username, bool deleteAllRelatedData ) : bool
username string The name of the user to delete.
deleteAllRelatedData bool true to delete data related to the user from the database; false to leave data related to the user in the database.
Résultat bool

FindUsersByEmail() public méthode

Gets a collection of membership users where the e-mail address contains the specified e-mail address to match.
public FindUsersByEmail ( string emailToMatch, int pageIndex, int pageSize, int &totalRecords ) : IEnumerable
emailToMatch string The e-mail address to search for.
pageIndex int The index of the page of results to return. pageIndex is zero-based.
pageSize int The size of the page of results to return.
totalRecords int The total number of matched users.
Résultat IEnumerable

FindUsersByName() public méthode

Gets a collection of membership users where the user name contains the specified user name to match.
public FindUsersByName ( string usernameToMatch, int pageIndex, int pageSize, int &totalRecords ) : IEnumerable
usernameToMatch string The user name to search for.
pageIndex int The index of the page of results to return. pageIndex is zero-based.
pageSize int The size of the page of results to return.
totalRecords int The total number of matched users.
Résultat IEnumerable

GetAllUsers() public méthode

Gets a collection of all the users in the data source in pages of data.
public GetAllUsers ( int pageIndex, int pageSize, int &totalRecords ) : IEnumerable
pageIndex int The index of the page of results to return. pageIndex is zero-based.
pageSize int The size of the page of results to return.
totalRecords int The total number of matched users.
Résultat IEnumerable

GetNumberOfUsersOnline() public méthode

Gets the number of users currently accessing the application.
public GetNumberOfUsersOnline ( ) : int
Résultat int

GetPassword() public méthode

Gets the password for the specified user name from the data source.
public GetPassword ( string username, string answer ) : string
username string The user to retrieve the password for.
answer string The password answer for the user.
Résultat string

GetUser() public méthode

Gets information from the data source for a user based on the unique identifier for the membership user. Provides an option to update the last-activity date/time stamp for the user.
public GetUser ( System.Guid userId, bool userIsOnline ) : MembershipUser
userId System.Guid
userIsOnline bool true to update the last-activity date/time stamp for the user; false to return /// user information without updating the last-activity date/time stamp for the user.
Résultat Nancy.Security.MembershipUser

GetUser() public méthode

Gets information from the data source for a user. Provides an option to update the last-activity date/time stamp for the user.
public GetUser ( string username, bool userIsOnline ) : MembershipUser
username string The name of the user to get information for.
userIsOnline bool true to update the last-activity date/time stamp for the user; false to return /// user information without updating the last-activity date/time stamp for the user.
Résultat Nancy.Security.MembershipUser

GetUserFromIdentifier() public méthode

public GetUserFromIdentifier ( System.Guid identifier, Nancy.NancyContext context ) : IUserIdentity
identifier System.Guid
context Nancy.NancyContext
Résultat IUserIdentity

GetUserNameByEmail() public méthode

Gets the user name associated with the specified e-mail address.
public GetUserNameByEmail ( string email ) : string
email string The e-mail address to search for.
Résultat string

RavenDbMembershipProvider() public méthode

public RavenDbMembershipProvider ( IDocumentStore documentStore ) : System
documentStore IDocumentStore
Résultat System

ResetPassword() public méthode

Resets a user's password to a new, automatically generated password.
public ResetPassword ( string userName, string answer ) : string
userName string
answer string The password answer for the specified user.
Résultat string

UnlockUser() public méthode

Clears a lock so that the membership user can be validated.
public UnlockUser ( string userName ) : bool
userName string The membership user to clear the lock status for.
Résultat bool

UpdateUser() public méthode

Updates information about a user in the data source.
public UpdateUser ( MembershipUser user ) : void
user Nancy.Security.MembershipUser A object that represents the /// user to update and the updated information for the user.
Résultat void

ValidateUser() public méthode

Verifies that the specified user name and password exist in the data source.
public ValidateUser ( string username, string password ) : Guid?
username string The name of the user to validate.
password string The password for the specified user.
Résultat Guid?

ValidateUserNameAndEmail() public méthode

Validates the username.
public ValidateUserNameAndEmail ( string userName, string email, bool &userNameIsOk, bool &emailIsOk, System.Guid excludeKey ) : void
userName string Name of the user.
email string The email.
userNameIsOk bool
emailIsOk bool
excludeKey System.Guid The exclude key.
Résultat void