0
我想提出一個ASP.NET網站,並正在使用Forms Authentication
;我正在使用所有安全部件的自定義提供程序(優秀的TinyProviders基於xml的數據提供程序)。如何在ASP.NET保護用戶數據表單驗證
目前,用戶數據存儲(稱爲users.xml中的XML文件)包含完全加密的數據:
<?xml version="1.0"?>
<ArrayOfXmlUser xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<XmlUser>
<UserKey>a34cc5b6-a0b9-4a5e-b055-951w799a8607</UserKey>
<UserName>Bill</UserName>
<Password>billspassword123</Password>
<PasswordSalt />
<Email>[email protected]</Email>
<PasswordQuestion />
<PasswordAnswer />
<CreationDate>2013-03-14T21:46:36.7990912+00:00</CreationDate>
<LastActivityDate>2013-03-14T21:47:50.3483942+00:00</LastActivityDate>
<LastLoginDate>2013-03-14T21:47:50.3483942+00:00</LastLoginDate>
<LastPasswordChangeDate>2013-03-14T21:46:36.7990912+00:00</LastPasswordChangeDate>
<LastLockoutDate>9999-12-31T23:59:59.9999999</LastLockoutDate>
<IsApproved>true</IsApproved>
<IsLockedOut>false</IsLockedOut>
<FailedPasswordAttemptCount>0</FailedPasswordAttemptCount>
</XmlUser>
</ArrayOfXmlUser>
我怎麼可以在網站配置爲執行以下操作:
- 存儲密碼散列(而不是純文本)
- 加密用戶文件中的所有(或至多電子郵件和名稱)數據
我期待,因爲我使用TinyProvider的二進制分發版從我Web.config
做到這一點。
這裏是我的Web.config
至今:
<?xml version="1.0" encoding="utf-8"?>
<authentication mode="Forms">
<forms loginUrl="~/Account/Login.aspx" timeout="2880" />
</authentication>
<profile enabled="true" defaultProvider="XmlProfileProvider">
<providers>
<clear/>
<add name="XmlProfileProvider"
applicationName="SampleWebsite"
type="Artem.Web.Security.XmlProfileProvider"/>
</providers>
</profile>
<membership defaultProvider="XmlMembershipProvider">
<providers>
<clear/>
<add name="XmlMembershipProvider"
applicationName="SampleWebsite"
type="Artem.Web.Security.XmlMembershipProvider"
minRequiredPasswordLength="1"
minRequiredNonAlphanumericCharacters="0"
requiresQuestionAndAnswer="false"
requiresUniqueEmail="false"
passwordFormat="Clear"/>
</providers>
</membership>
<roleManager enabled="true" cacheRolesInCookie="false" defaultProvider="XmlRoleProvider">
<providers>
<clear/>
<add name="XmlRoleProvider"
applicationName="SampleWebsite"
type="Artem.Web.Security.XmlRoleProvider"/>
</providers>
</roleManager>
感謝哈希提示 - 我聽說過,但不知道在哪裏把它。感謝您提供的信息,我想我會編輯提供者 - 因爲它是開源的。 – James 2013-03-14 22:29:05