FormsAuthentication Osztály
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Webalkalmazások űrlaphitelesítési szolgáltatásait kezeli. Ez az osztály nem örökölhető.
public ref class FormsAuthentication sealed
public sealed class FormsAuthentication
type FormsAuthentication = class
Public NotInheritable Class FormsAuthentication
- Öröklődés
-
FormsAuthentication
Példák
Az alábbi példakód egy ASP.NET alkalmazás Web.config fájlját mutatja be, amely a ASP.NET tagságszolgáltatóját használja az űrlaphitelesítéshez, és megköveteli az összes felhasználó hitelesítését.
<configuration>
<connectionStrings>
<add name="SqlServices" connectionString="Data Source=MySqlServer;Integrated Security=SSPI;Initial Catalog=aspnetdb;" />
</connectionStrings>
<system.web>
<membership defaultProvider="SqlProvider" userIsOnlineTimeWindow="20">
<providers>
<add name="SqlProvider"
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="SqlServices"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="true"
passwordFormat="Hashed"
applicationName="/" />
</providers>
</membership>
</system.web>
</configuration>
Az alábbi példakód egy űrlaphitelesítést és ASP.NET tagságot használó ASP.NET alkalmazás bejelentkezési oldalát mutatja be.
Important
Ez a példa egy szövegdobozt tartalmaz, amely elfogadja a felhasználói bemenetet, ami potenciális biztonsági fenyegetés. Alapértelmezés szerint ASP.NET weblapok ellenőrzik, hogy a felhasználói bevitel nem tartalmaz-e szkript- vagy HTML-elemeket. További információ: Szkript kihasználása – áttekintés.
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Security" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
public void Login_OnClick(object sender, EventArgs args)
{
if (Membership.ValidateUser(UsernameTextbox.Text, PasswordTextbox.Text))
FormsAuthentication.RedirectFromLoginPage(UsernameTextbox.Text, NotPublicCheckBox.Checked);
else
Msg.Text = "Login failed. Please check your user name and password and try again.";
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Login</title>
</head>
<body>
<form id="form1" runat="server">
<h3>Login</h3>
<asp:Label id="Msg" ForeColor="maroon" runat="server" /><br />
Username: <asp:Textbox id="UsernameTextbox" runat="server" /><br />
Password: <asp:Textbox id="PasswordTextbox" runat="server" TextMode="Password" /><br />
<asp:Button id="LoginButton" Text="Login" OnClick="Login_OnClick" runat="server" />
<asp:CheckBox id="NotPublicCheckBox" runat="server" />
Check here if this is <span style="text-decoration:underline">not</span> a public computer.
</form>
</body>
</html>
<%@ Page Language="VB" %>
<%@ Import Namespace="System.Web.Security" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Public Sub Login_OnClick(sender As Object, args As EventArgs)
If (Membership.ValidateUser(UsernameTextbox.Text, PasswordTextbox.Text)) Then
FormsAuthentication.RedirectFromLoginPage(UsernameTextbox.Text, NotPublicCheckBox.Checked)
Else
Msg.Text = "Login failed. Please check your user name and password and try again."
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Login</title>
</head>
<body>
<form id="form1" runat="server">
<h3>Login</h3>
<asp:Label id="Msg" ForeColor="maroon" runat="server" /><br />
Username: <asp:Textbox id="UsernameTextbox" runat="server" /><br />
Password: <asp:Textbox id="PasswordTextbox" runat="server" TextMode="Password" /><br />
<asp:Button id="LoginButton" Text="Login" OnClick="Login_OnClick" runat="server" />
<asp:CheckBox id="NotPublicCheckBox" runat="server" />
Check here if this is <span style="text-decoration:underline">not</span> a public computer.
</form>
</body>
</html>
Megjegyzések
Az űrlapok hitelesítése lehetővé teszi a felhasználók és jelszavak érvényesítését olyan webalkalmazások esetében, amelyek nem igényelnek Windows authentication. Az űrlaphitelesítéssel a felhasználói adatokat egy külső adatforrásban, például egy Membership adatbázisban vagy egy alkalmazás konfigurációs fájljában tárolja a rendszer. A felhasználó hitelesítése után az űrlaphitelesítés egy hitelesítési jegyet tart fenn egy cookie-ban vagy az URL-címben, hogy a hitelesített felhasználónak ne kelljen hitelesítő adatokat megadnia az egyes kérésekhez.
Az űrlapok hitelesítése a mode konfigurációs elem attribútumának beállításával Forms engedélyezve van. Megkövetelheti, hogy az alkalmazáshoz érkező összes kérés érvényes felhasználói hitelesítési jegyet tartalmazzon, ha az engedélyezési konfigurációs elem használatával megtagadja az ismeretlen felhasználók kérését, ahogyan az az alábbi példában is látható.
<system.web>
<authentication mode="Forms">
<forms loginUrl="login.aspx" />
</authentication>
<authorization>
<deny users="?" />
</authorization>
</system.web>
Az előző példában az alkalmazás részét képező ASP.NET lapra vonatkozó kérésekhez érvényes felhasználónevet kell megadni, amelyet űrlaphitelesítés biztosít. Ha nincs felhasználónév, a rendszer átirányítja a kérést a konfiguráltra LoginUrl.
Az FormsAuthentication osztály hozzáférést biztosít a felhasználók hitelesítését biztosító alkalmazásokban használható metódusokhoz és tulajdonságokhoz. A RedirectToLoginPage metódus átirányítja a böngészőt az alkalmazásba való bejelentkezéshez konfigurált LoginUrl böngészőhöz. A RedirectFromLoginPage metódus visszairányítja a hitelesített felhasználót a kért eredeti védett URL-címre vagy a DefaultUrl. Vannak olyan módszerek is, amelyekkel szükség esetén kezelheti az űrlaphitelesítési jegyeket.
Konstruktorok
| Name | Description |
|---|---|
| FormsAuthentication() |
Inicializálja a FormsAuthentication osztály új példányát. |
Tulajdonságok
| Name | Description |
|---|---|
| CookieDomain |
Lekéri az űrlaphitelesítési cookie tartományának értékét. |
| CookieMode |
Beolvas egy értéket, amely jelzi, hogy az alkalmazás konfigurálva van-e a cookie nélküli űrlapok hitelesítéséhez. |
| CookieSameSite |
Lekéri vagy beállítja a cookie SameSite attribútumának értékét. |
| CookiesSupported |
Olyan értéket kap, amely jelzi, hogy az alkalmazás a cookie nélküli űrlapok hitelesítésének támogatására van-e konfigurálva. |
| DefaultUrl |
Lekéri azt az URL-címet, amelybe az FormsAuthentication osztály átirányít, ha nincs megadva átirányítási URL-cím. |
| EnableCrossAppRedirects |
Beolvas egy értéket, amely jelzi, hogy a hitelesített felhasználók átirányíthatók-e más webalkalmazások URL-címére. |
| FormsCookieName |
Lekéri az űrlaphitelesítési jegy tárolására használt cookie nevét. |
| FormsCookiePath |
Lekéri az űrlap-hitelesítési cookie elérési útját. |
| IsEnabled |
Beolvas egy értéket, amely jelzi, hogy engedélyezve van-e az űrlaphitelesítés. |
| LoginUrl |
Lekéri annak a bejelentkezési oldalnak az URL-címét, amelybe az FormsAuthentication osztály átirányít. |
| RequireSSL |
Lekéri az értéket, amely jelzi, hogy az űrlap-hitelesítési cookie-hoz SSL szükséges-e ahhoz, hogy vissza lehessen-e adni a kiszolgálónak. |
| SlidingExpiration |
Beolvas egy értéket, amely jelzi, hogy engedélyezve van-e a csúszási lejárat. |
| TicketCompatibilityMode |
Olyan értéket kap, amely jelzi, hogy a jegy lejárati dátumához az egyezményes világidőt (UTC) vagy a helyi időt kell-e használni. |
| Timeout |
Lekéri a hitelesítési jegy lejárata előtt eltelt időt. |
Metódusok
| Name | Description |
|---|---|
| Authenticate(String, String) |
Elavult.
Ellenőrzi a felhasználónevet és a jelszót az alkalmazás konfigurációs fájljában tárolt hitelesítő adatokkal szemben. |
| Decrypt(String) |
Létrehoz egy FormsAuthenticationTicket objektumot a metódusnak átadott titkosított űrlap-hitelesítési jegy alapján. |
| EnableFormsAuthentication(NameValueCollection) |
Engedélyezi az űrlapok hitelesítését. |
| Encrypt(FormsAuthenticationTicket) |
Egy HTTP-cookie-ban való használatra alkalmas titkosított űrlap-hitelesítési jegyet tartalmazó sztringet hoz létre. |
| Equals(Object) |
Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal. (Öröklődés forrása Object) |
| GetAuthCookie(String, Boolean, String) |
Létrehoz egy hitelesítési cookie-t egy adott felhasználónévhez. Ez nem állítja be a cookie-t a kimenő válasz részeként. |
| GetAuthCookie(String, Boolean) |
Létrehoz egy hitelesítési cookie-t egy adott felhasználónévhez. Ez nem állítja be a cookie-t a kimenő válasz részeként, így az alkalmazás jobban szabályozhatja a cookie kiadását. |
| GetHashCode() |
Ez az alapértelmezett kivonatoló függvény. (Öröklődés forrása Object) |
| GetRedirectUrl(String, Boolean) |
Az eredeti kérés átirányítási URL-címét adja vissza, amely a bejelentkezési lapra való átirányítást okozta. |
| GetType() |
Lekéri az Type aktuális példányt. (Öröklődés forrása Object) |
| HashPasswordForStoringInConfigFile(String, String) |
Elavult.
A megadott jelszó és kivonatoló algoritmus alapján egy konfigurációs fájlban való tárolásra alkalmas kivonatjelszót hoz létre. |
| Initialize() |
Inicializálja az FormsAuthentication objektumot az alkalmazás konfigurációs beállításai alapján. |
| MemberwiseClone() |
Az aktuális Objectpéldány sekély másolatát hozza létre. (Öröklődés forrása Object) |
| RedirectFromLoginPage(String, Boolean, String) |
Átirányítja a hitelesített felhasználót az eredetileg kért URL-címre vagy az alapértelmezett URL-címre az űrlap-hitelesítési cookie megadott elérési útján. |
| RedirectFromLoginPage(String, Boolean) |
Átirányít egy hitelesített felhasználót az eredetileg kért URL-címre vagy az alapértelmezett URL-címre. |
| RedirectToLoginPage() |
Átirányítja a böngészőt a bejelentkezési URL-címre. |
| RedirectToLoginPage(String) |
Átirányítja a böngészőt a bejelentkezési URL-címre a megadott lekérdezési sztringgel. |
| RenewTicketIfOld(FormsAuthenticationTicket) |
Feltételesen frissíti a probléma dátumát és időpontját, valamint a lejárati dátumot és időt.FormsAuthenticationTicket |
| SetAuthCookie(String, Boolean, String) |
Létrehoz egy hitelesítési jegyet a megadott felhasználónévhez, és hozzáadja azt a válasz cookie-gyűjteményéhez, a megadott cookie-elérési út használatával vagy az URL-cím használatával, ha cookie nélküli hitelesítést használ. |
| SetAuthCookie(String, Boolean) |
Létrehoz egy hitelesítési jegyet a megadott felhasználónévhez, és hozzáadja a válasz cookie-gyűjteményéhez vagy az URL-címhez, ha cookie nélküli hitelesítést használ. |
| SignOut() |
Eltávolítja az űrlap-hitelesítési jegyet a böngészőből. |
| ToString() |
Az aktuális objektumot jelképező sztringet ad vissza. (Öröklődés forrása Object) |