diff options
author | David Christiansen <coding@davedoes.net> | 2016-06-06 13:53:24 +0100 |
---|---|---|
committer | David Christiansen <coding@davedoes.net> | 2016-06-06 16:10:25 +0100 |
commit | 442909c55b4b7943ad1a426072c74a0b0a4fdf95 (patch) | |
tree | 6fb18f8baa3e69bc053a8f8e63690f6ec60c6208 /src/OpenID/OpenIdProviderWebForms/Code/ReadOnlyXmlMembershipProvider.cs | |
parent | 2ed563499ad1fbafd13d5903fb79b6bf28f0e654 (diff) | |
download | DotNetOpenAuth.Samples-442909c55b4b7943ad1a426072c74a0b0a4fdf95.zip DotNetOpenAuth.Samples-442909c55b4b7943ad1a426072c74a0b0a4fdf95.tar.gz DotNetOpenAuth.Samples-442909c55b4b7943ad1a426072c74a0b0a4fdf95.tar.bz2 |
Framework update to 4.5.2
DNOA Nuget update
Diffstat (limited to 'src/OpenID/OpenIdProviderWebForms/Code/ReadOnlyXmlMembershipProvider.cs')
-rw-r--r-- | src/OpenID/OpenIdProviderWebForms/Code/ReadOnlyXmlMembershipProvider.cs | 270 |
1 files changed, 0 insertions, 270 deletions
diff --git a/src/OpenID/OpenIdProviderWebForms/Code/ReadOnlyXmlMembershipProvider.cs b/src/OpenID/OpenIdProviderWebForms/Code/ReadOnlyXmlMembershipProvider.cs deleted file mode 100644 index 54db5c0..0000000 --- a/src/OpenID/OpenIdProviderWebForms/Code/ReadOnlyXmlMembershipProvider.cs +++ /dev/null @@ -1,270 +0,0 @@ -namespace OpenIdProviderWebForms.Code { - using System; - using System.Collections.Generic; - using System.Collections.Specialized; - using System.Configuration.Provider; - using System.Security.Permissions; - using System.Web; - using System.Web.Hosting; - using System.Web.Security; - using System.Xml; - - public class ReadOnlyXmlMembershipProvider : MembershipProvider { - private Dictionary<string, MembershipUser> users; - private string xmlFileName; - - // MembershipProvider Properties - public override string ApplicationName { - get { throw new NotSupportedException(); } - set { throw new NotSupportedException(); } - } - - public override bool EnablePasswordRetrieval { - get { return false; } - } - - public override bool EnablePasswordReset { - get { return false; } - } - - public override int MaxInvalidPasswordAttempts { - get { throw new NotSupportedException(); } - } - - public override int MinRequiredNonAlphanumericCharacters { - get { throw new NotSupportedException(); } - } - - public override int MinRequiredPasswordLength { - get { throw new NotSupportedException(); } - } - - public override int PasswordAttemptWindow { - get { throw new NotSupportedException(); } - } - - public override MembershipPasswordFormat PasswordFormat { - get { throw new NotSupportedException(); } - } - - public override string PasswordStrengthRegularExpression { - get { throw new NotSupportedException(); } - } - - public override bool RequiresQuestionAndAnswer { - get { throw new NotSupportedException(); } - } - - public override bool RequiresUniqueEmail { - get { throw new NotSupportedException(); } - } - - // MembershipProvider Methods - public override void Initialize(string name, NameValueCollection config) { - // Verify that config isn't null - if (config == null) { - throw new ArgumentNullException("config"); - } - - // Assign the provider a default name if it doesn't have one - if (string.IsNullOrEmpty(name)) { - name = "ReadOnlyXmlMembershipProvider"; - } - - // Add a default "description" attribute to config if the - // attribute doesn't exist or is empty - if (string.IsNullOrEmpty(config["description"])) { - config.Remove("description"); - config.Add("description", "Read-only XML membership provider"); - } - - // Call the base class's Initialize method - base.Initialize(name, config); - - // Initialize _XmlFileName and make sure the path - // is app-relative - string path = config["xmlFileName"]; - - if (string.IsNullOrEmpty(path)) { - path = "~/App_Data/Users.xml"; - } - - if (!VirtualPathUtility.IsAppRelative(path)) { - throw new ArgumentException("xmlFileName must be app-relative"); - } - - string fullyQualifiedPath = VirtualPathUtility.Combine( - VirtualPathUtility.AppendTrailingSlash(HttpRuntime.AppDomainAppVirtualPath), - path); - - this.xmlFileName = HostingEnvironment.MapPath(fullyQualifiedPath); - config.Remove("xmlFileName"); - - // Make sure we have permission to read the XML data source and - // throw an exception if we don't - FileIOPermission permission = new FileIOPermission(FileIOPermissionAccess.Read, this.xmlFileName); - permission.Demand(); - - // Throw an exception if unrecognized attributes remain - if (config.Count > 0) { - string attr = config.GetKey(0); - if (!string.IsNullOrEmpty(attr)) { - throw new ProviderException("Unrecognized attribute: " + attr); - } - } - } - - public override bool ValidateUser(string username, string password) { - // Validate input parameters - if (string.IsNullOrEmpty(username) || - string.IsNullOrEmpty(password)) { - return false; - } - - try { - // Make sure the data source has been loaded - this.ReadMembershipDataStore(); - - // Validate the user name and password - MembershipUser user; - if (this.users.TryGetValue(username, out user)) { - if (user.Comment == password) { // Case-sensitive - // NOTE: A read/write membership provider - // would update the user's LastLoginDate here. - // A fully featured provider would also fire - // an AuditMembershipAuthenticationSuccess - // Web event - return true; - } - } - - // NOTE: A fully featured membership provider would - // fire an AuditMembershipAuthenticationFailure - // Web event here - return false; - } catch (Exception) { - return false; - } - } - - public override MembershipUser GetUser(string username, bool userIsOnline) { - // Note: This implementation ignores userIsOnline - - // Validate input parameters - if (string.IsNullOrEmpty(username)) { - return null; - } - - // Make sure the data source has been loaded - this.ReadMembershipDataStore(); - - // Retrieve the user from the data source - MembershipUser user; - if (this.users.TryGetValue(username, out user)) { - return user; - } - - return null; - } - - public override MembershipUserCollection GetAllUsers(int pageIndex, int pageSize, out int totalRecords) { - // Note: This implementation ignores pageIndex and pageSize, - // and it doesn't sort the MembershipUser objects returned - - // Make sure the data source has been loaded - this.ReadMembershipDataStore(); - - MembershipUserCollection users = new MembershipUserCollection(); - - foreach (KeyValuePair<string, MembershipUser> pair in this.users) { - users.Add(pair.Value); - } - - totalRecords = users.Count; - return users; - } - - public override int GetNumberOfUsersOnline() { - throw new NotSupportedException(); - } - - public override bool ChangePassword(string username, string oldPassword, string newPassword) { - throw new NotSupportedException(); - } - - public override bool ChangePasswordQuestionAndAnswer(string username, string password, string newPasswordQuestion, string newPasswordAnswer) { - throw new NotSupportedException(); - } - - public override MembershipUser CreateUser(string username, string password, string email, string passwordQuestion, string passwordAnswer, bool isApproved, object providerUserKey, out MembershipCreateStatus status) { - throw new NotSupportedException(); - } - - public override bool DeleteUser(string username, bool deleteAllRelatedData) { - throw new NotSupportedException(); - } - - public override MembershipUserCollection FindUsersByEmail(string emailToMatch, int pageIndex, int pageSize, out int totalRecords) { - throw new NotSupportedException(); - } - - public override MembershipUserCollection FindUsersByName(string usernameToMatch, int pageIndex, int pageSize, out int totalRecords) { - throw new NotSupportedException(); - } - - public override string GetPassword(string username, string answer) { - throw new NotSupportedException(); - } - - public override MembershipUser GetUser(object providerUserKey, bool userIsOnline) { - throw new NotSupportedException(); - } - - public override string GetUserNameByEmail(string email) { - throw new NotSupportedException(); - } - - public override string ResetPassword(string username, string answer) { - throw new NotSupportedException(); - } - - public override bool UnlockUser(string userName) { - throw new NotSupportedException(); - } - - public override void UpdateUser(MembershipUser user) { - throw new NotSupportedException(); - } - - // Helper method - private void ReadMembershipDataStore() { - lock (this) { - if (this.users == null) { - this.users = new Dictionary<string, MembershipUser>(16, StringComparer.InvariantCultureIgnoreCase); - XmlDocument doc = new XmlDocument(); - doc.Load(this.xmlFileName); - XmlNodeList nodes = doc.GetElementsByTagName("User"); - - foreach (XmlNode node in nodes) { - MembershipUser user = new MembershipUser( - Name, // Provider name - node["UserName"].InnerText, // Username - null, // providerUserKey - null, // Email - string.Empty, // passwordQuestion - node["Password"].InnerText, // Comment - true, // isApproved - false, // isLockedOut - DateTime.Now, // creationDate - DateTime.Now, // lastLoginDate - DateTime.Now, // lastActivityDate - DateTime.Now, // lastPasswordChangedDate - new DateTime(1980, 1, 1)); // lastLockoutDate - - this.users.Add(user.UserName, user); - } - } - } - } - } -}
\ No newline at end of file |