FormsIdentity Class
Represents a user identity authenticated using forms authentication. This class cannot be inherited.
Namespace: System.Web.Security
Assembly: System.Web (in System.Web.dll)
The FormsIdentity type exposes the following members.
| Name | Description | |
|---|---|---|
![]() | FormsIdentity(FormsAuthenticationTicket) | Initializes a new instance of the FormsIdentity class. |
![]() | FormsIdentity(FormsIdentity) | Initializes a new instance of the FormsIdentity class based on the specified identity. |
| Name | Description | |
|---|---|---|
![]() | Actor | Gets or sets the identity of the calling party that was granted delegation rights. (Inherited from ClaimsIdentity.) |
![]() | AuthenticationType | Gets the type of authenticated identity. (Overrides ClaimsIdentity.AuthenticationType.) |
![]() | BootstrapContext | Gets or sets the token that was used to create this claims identity. (Inherited from ClaimsIdentity.) |
![]() | Claims | Gets the collection of claims that are associated with this identity. (Overrides ClaimsIdentity.Claims.) |
![]() | IsAuthenticated | Gets a value that indicates whether authentication took place. (Overrides ClaimsIdentity.IsAuthenticated.) |
![]() | Label | Gets or sets the label for this claims identity. (Inherited from ClaimsIdentity.) |
![]() | Name | Gets the user name of the forms identity. (Overrides ClaimsIdentity.Name.) |
![]() | NameClaimType | Gets the claim type that is used to determine which claims provide the value for the Name property of this claims identity. (Inherited from ClaimsIdentity.) |
![]() | RoleClaimType | Gets the claim type that will be interpreted as a .NET Framework role among the claims in this claims identity. (Inherited from ClaimsIdentity.) |
![]() | Ticket | Gets the FormsAuthenticationTicket for the forms-authentication user identity. |
| Name | Description | |
|---|---|---|
![]() | AddClaim | Adds a single claim to this claims identity. (Inherited from ClaimsIdentity.) |
![]() | AddClaims | Adds a list of claims to this claims identity. (Inherited from ClaimsIdentity.) |
![]() | Clone | Gets a copy of the current FormsIdentity instance. (Overrides ClaimsIdentity.Clone().) |
![]() | Equals(Object) | Determines whether the specified object is equal to the current object. (Inherited from Object.) |
![]() | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) |
![]() | FindAll(Predicate<Claim>) | Retrieves all of the claims that are matched by the specified predicate. (Inherited from ClaimsIdentity.) |
![]() | FindAll(String) | Retrieves all of the claims that have the specified claim type. (Inherited from ClaimsIdentity.) |
![]() | FindFirst(Predicate<Claim>) | Retrieves the first claim that is matched by the specified predicate. (Inherited from ClaimsIdentity.) |
![]() | FindFirst(String) | Retrieves the first claim with the specified claim type. (Inherited from ClaimsIdentity.) |
![]() | GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) |
![]() | GetObjectData | Populates the SerializationInfo with data needed to serialize the current ClaimsIdentity object. (Inherited from ClaimsIdentity.) |
![]() | GetType | Gets the Type of the current instance. (Inherited from Object.) |
![]() | HasClaim(Predicate<Claim>) | Determines whether this claims identity has a claim that is matched by the specified predicate. (Inherited from ClaimsIdentity.) |
![]() | HasClaim(String, String) | Determines whether this claims identity has a claim with the specified claim type and value. (Inherited from ClaimsIdentity.) |
![]() | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) |
![]() | RemoveClaim | Attempts to remove a claim from the claims identity. (Inherited from ClaimsIdentity.) |
![]() | ToString | Returns a string that represents the current object. (Inherited from Object.) |
![]() | TryRemoveClaim | Attempts to remove a claim from the claims identity. (Inherited from ClaimsIdentity.) |
The FormsIdentity class is used by the FormsAuthenticationModule when a user is authenticated with forms authentication. An instance of the FormsIdentity class is created using the FormsAuthenticationTicket that is decrypted from the forms-authentication cookie or from the URL. The new instance of the FormsIdentity class is used to construct a new GenericPrincipal object that is set as the value of the User property for the current HttpContext.
The following code example generates a FormsAuthenticationTicket and then uses it to create an instance of the FormsIdentity class, based on whether the user supplies the correct user name and password on the form.
<%@ Page Language="C#" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <%@ Import Namespace="System.Globalization" %> <%@ Import Namespace="System.Web.Security" %> <script runat="server"> protected void Login_Click(object sender, EventArgs e) { bool isAuthenticated = false; if (string.Compare(UserNameTextBox.Text, "UserName", true, CultureInfo.InvariantCulture) == 0) { if (string.Compare(PasswordTextBox.Text, "Password", true, CultureInfo.InvariantCulture) == 0) { isAuthenticated = true; } } else isAuthenticated = false; // Create the formsIdentity for the user. CreateformsIdentity(UserNameTextBox.Text, isAuthenticated); } private void CreateformsIdentity(string userName, bool isAuthenticated) { FormsIdentity formsID; FormsAuthenticationTicket authenticationTicket; if (isAuthenticated) { // If authentication passed, create a ticket // as a Manager that expires in 15 minutes. authenticationTicket = new FormsAuthenticationTicket(1, userName, DateTime.Now, DateTime.Now.AddMinutes(15), false, "Manager"); } else { // If authentication failed, create a ticket // as a guest that expired 5 minutes ago. authenticationTicket = new FormsAuthenticationTicket(1, userName, DateTime.Now, DateTime.Now.Subtract(new TimeSpan(0, 5, 0)), false, "Guest"); } // Create form identity from FormsAuthenticationTicket. formsID = new FormsIdentity(authenticationTicket); Response.Clear(); Response.Write("Authentication Type: " + formsID.AuthenticationType + "<BR>"); // Get FormsAuthenticationTicket from the FormIdentity FormsAuthenticationTicket ticket = formsID.Ticket; if (ticket.Expired) { Response.Write("Authentication failed, so the role is set to " + ticket.UserData); } else { Response.Write("Authentication succeeded, so the role is set to " + ticket.UserData); } } </script> <html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>WebForm1</title> </head> <body> <form id="Form1" method="post" runat="server"> <asp:Label id="UserIdLabel" runat="server" style="left: 144px; position: absolute; top: 160px"> User-ID:</asp:Label> <asp:Label id="PasswordLabel" runat="server" style="left: 144px; position: absolute; top: 200px"> Password:</asp:Label> <asp:TextBox id="UserNameTextBox" runat="server" style="left: 232px; position: absolute; top: 160px; width:182px; height:22px"></asp:TextBox> <asp:TextBox id="PasswordTextBox" runat="server" style="left: 232px; position: absolute; top: 200px; width:181px; height:22px" TextMode="Password"> </asp:TextBox> <asp:Button id="Login" runat="server" Text="Login" style="left: 232px; position: absolute; top: 232px; width:100px" OnClick="Login_Click"></asp:Button> </form> </body> </html>
Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
