如何使用沒有登錄控件的表單身份驗證。我不想在我的站點中使用asp.net登錄控件。但是我必須實現表單身份驗證並驗證數據庫中的用戶。如何在沒有登錄控制的情況下使用表單認證?
2
A
回答
4
我假設不是使用登錄控件,而是使用幾個文本框(例如用戶名/密碼)和登錄按鈕。該代碼可能是這個樣子:
在你的aspx文件
<asp:Textbox runat="server" ID="Username"/>
<asp:Textbox runat="server" ID="Password"/>
<asp:Button runat="server" ID="Login" OnClick="Login_OnClick"/>
<asp:Label runat="server" ID="Msg" >
而在服務器端:
public void Login_OnClick(object sender, EventArgs args)
{
if (Membership.ValidateUser(Username.Text,Password.Text))
{
FormsAuthentication.RedirectFromLoginPage(Username.Text,
NotPublicCheckBox.Checked);
}
else
Msg.Text = "Login failed.";
}
窗體身份驗證通常由兩個部分組成:
- 調用會員API以驗證/驗證用戶
- 使用FormsAuthentication API登錄(創建AUTH餅乾等)
欲瞭解更多信息看這些文章的用戶:
2
<forms
loginUrl ="~/Login.aspx"
cookieless= "AutoDetect"
slidingExpiration="true"
timeout="10"
protection ="All"
/>
</authentication>
<authorization>
<deny users ="?" />
<allow users="*" />
</authorization>
loginUrl - >使用您的登錄頁面出現,默認爲爲Login.aspx 上的登錄按鈕的點擊或按鈕登錄使用該數據庫從驗證憑據後
HttpCookie authCookie = FormsAuthentication.GetAuthCookie(txtUsername.Text, false);
FormsAuthenticationTicket ticket = FormsAuthentication.Decrypt(authCookie.Value);
FormsAuthenticationTicket newTicket = new FormsAuthenticationTicket(ticket.Version, ticket.Name, ticket.IssueDate, ticket.Expiration, ticket.IsPersistent,"");
authCookie.Value = FormsAuthentication.Encrypt(newTicket);
Response.Cookies.Add(authCookie);
string redirUrl = FormsAuthentication.GetRedirectUrl(txtUsername.Text, false);
Response.Redirect(redirUrl);
在這裏您可以找到有關配置的web.config以滿足您的需求信息, Forms Authentication
相關問題
- 1. 如何在沒有密碼的情況下使用SSH登錄
- 2. 如何在沒有單一登錄的情況下使用Azure AD
- 3. 如何在沒有用戶干預的情況下登錄Facebook?
- 4. 如何在沒有Facebook應用的情況下登錄Facebook?
- 5. 如何在沒有JavaScript的情況下驗證表單?
- 6. Android Facebook SDK,如何在沒有登錄表單的情況下打開會話
- 7. 如何在沒有iframe的情況下使用Google表單?
- 8. 如何在沒有django中的確認框的情況下刷新表單有效後的登錄頁面?
- 9. 頁面可以在沒有登錄驗證的情況下登錄
- 10. 如何使用多於一個證書的情況下登錄
- 11. 如何在沒有Oauth的情況下登錄到腳本?
- 12. 如何在沒有登錄的情況下注冊?
- 13. 如何在沒有提示的情況下登錄?
- 14. 登錄check_path路由如何在沒有默認控制器/操作的情況下工作?
- 15. 如何在沒有事件的情況下控制表單大小擴展
- 16. 如何在沒有登錄對話框頁面的情況下驗證facebook sdk?
- 17. 如何在沒有用戶和登錄的情況下使用JWT?
- 18. 如何在不使用asp控件的情況下對登錄表單進行身份驗證
- 19. 在沒有主機的情況下使用源代碼控制
- 20. 在沒有FXML的情況下使用JavaFX控制器
- 21. 如何在不使用MembershipProvider的情況下使用ASP.NET登錄控件?
- 22. 如何在沒有IB的情況下控制UIButton視圖
- 23. 在沒有密碼的情況下登錄Liferay用戶
- 24. 在沒有用戶登錄的情況下跟蹤喜歡
- 25. 在沒有驗證的情況下提交的表單
- 26. 在沒有表單的情況下設置Symfony2驗證的值
- 27. 如何在啓用cookie的情況下使用tomcat認證?
- 28. 在沒有用戶登錄的情況下彈出谷歌登錄頁面
- 29. 如何在默認情況下禁用IntelliJ IDEA版本控制?
- 30. 如何在沒有單元模板的情況下使用DataGridComboBoxColumn?
它有幫助,我提供的鏈接將有助於我的想法。 – freebird 2012-04-11 06:04:21
謝謝你的回覆... – 2012-04-11 06:05:41
回覆並不重要,如果它可以幫助你的事業,那是重要的。我們在這裏互相幫助。謝謝 – freebird 2012-04-11 06:07:25