FormsIdentity Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Vertegenwoordigt een gebruikersidentiteit die is geverifieerd met behulp van formulierverificatie. Deze klasse kan niet worden overgenomen.
public ref class FormsIdentity sealed : System::Security::Principal::IIdentity
public ref class FormsIdentity : System::Security::Principal::IIdentity
public ref class FormsIdentity : System::Security::Claims::ClaimsIdentity
[System.Serializable]
public sealed class FormsIdentity : System.Security.Principal.IIdentity
[System.Serializable]
public class FormsIdentity : System.Security.Principal.IIdentity
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(false)]
public class FormsIdentity : System.Security.Claims.ClaimsIdentity
[<System.Serializable>]
type FormsIdentity = class
interface IIdentity
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(false)>]
type FormsIdentity = class
inherit ClaimsIdentity
Public NotInheritable Class FormsIdentity
Implements IIdentity
Public Class FormsIdentity
Implements IIdentity
Public Class FormsIdentity
Inherits ClaimsIdentity
- Overname
-
FormsIdentity
- Overname
- Kenmerken
- Implementeringen
Voorbeelden
In het volgende codevoorbeeld wordt een FormsAuthenticationTicket exemplaar van de klasse gegenereerd en vervolgens gebruikt om een exemplaar van de FormsIdentity klasse te maken, op basis van of de gebruiker de juiste gebruikersnaam en het juiste wachtwoord op het formulier opgeeft.
<%@ 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>
<%@ Page Language="vb" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<%@ Import Namespace="System.Globalization" %>
<script runat="server">
Private Sub Login_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Login.Click
' For the example, the user name must be "UserName" and the password
' must be "Password" for authentication to succeed.
Dim isAuthenticated As Boolean
If String.Compare(UserNameTextBox.Text, "UserName", True, _
CultureInfo.InvariantCulture) = 0 Then
If String.Compare(PasswordTextBox.Text, "Password", True, _
CultureInfo.InvariantCulture) = 0 Then
isAuthenticated = True
End If
Else
isAuthenticated = False
End If
' Create the FormsIdentity for the user.
CreateFormsIdentity(UserNameTextBox.Text, isAuthenticated)
End Sub
Private Sub CreateFormsIdentity(ByVal userName As String, _
ByVal isAuthenticated As Boolean)
Dim formsId As System.Web.Security.FormsIdentity
Dim authenticationTicket As _
System.Web.Security.FormsAuthenticationTicket
If isAuthenticated Then
' 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")
End If
' Create form identity from FormsAuthenticationTicket.
formsId = New FormsIdentity(authenticationTicket)
Response.Clear()
Response.Write("Authenticate Type: " & _
formsId.AuthenticationType & "<BR>")
' Get FormsAuthenticationTicket from the FormIdentity
Dim ticket As FormsAuthenticationTicket = formsId.Ticket()
If ticket.Expired Then
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)
End If
End Sub
</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"></asp:Button>
</form>
</body>
</html>
Opmerkingen
De FormsIdentity klasse wordt gebruikt door het FormsAuthenticationModule moment waarop een gebruiker wordt geverifieerd met formulierverificatie. Er wordt een exemplaar van de FormsIdentity klasse gemaakt met behulp van de FormsAuthenticationTicket gegevens die worden ontsleuteld vanuit de cookie voor formulierverificatie of vanuit de URL. Het nieuwe exemplaar van de FormsIdentity klasse wordt gebruikt om een nieuw GenericPrincipal object te maken dat is ingesteld als de waarde van de User eigenschap voor de huidige HttpContext.
Constructors
| Name | Description |
|---|---|
| FormsIdentity(FormsAuthenticationTicket) |
Initialiseert een nieuw exemplaar van de FormsIdentity klasse. |
| FormsIdentity(FormsIdentity) |
Initialiseert een nieuw exemplaar van de FormsIdentity klasse op basis van de opgegeven identiteit. |
Velden
| Name | Description |
|---|---|
| DefaultIssuer |
De standaarduitgever; "LOKALE AUTORITEIT". (Overgenomen van ClaimsIdentity) |
| DefaultNameClaimType |
Het claimtype standaardnaam; Name. (Overgenomen van ClaimsIdentity) |
| DefaultRoleClaimType |
Het claimtype standaardrol; Role. (Overgenomen van ClaimsIdentity) |
Eigenschappen
| Name | Description |
|---|---|
| Actor |
Hiermee wordt de identiteit opgehaald of ingesteld van de aanroepende partij waaraan delegeringsrechten zijn verleend. (Overgenomen van ClaimsIdentity) |
| AuthenticationType |
Hiermee haalt u het type geverifieerde identiteit op. |
| BootstrapContext |
Hiermee wordt het token opgehaald of ingesteld dat is gebruikt om deze claimidentiteit te maken. (Overgenomen van ClaimsIdentity) |
| Claims |
Hiermee haalt u de verzameling claims op die aan deze identiteit zijn gekoppeld. |
| CustomSerializationData |
Bevat eventuele aanvullende gegevens die worden geleverd door een afgeleid type. Meestal ingesteld bij het aanroepen WriteTo(BinaryWriter, Byte[]). (Overgenomen van ClaimsIdentity) |
| IsAuthenticated |
Hiermee wordt een waarde opgehaald die aangeeft of verificatie heeft plaatsgevonden. |
| Label |
Hiermee wordt het label voor deze claimidentiteit ophaalt of ingesteld. (Overgenomen van ClaimsIdentity) |
| Name |
Hiermee haalt u de gebruikersnaam van de formulieridentiteit op. |
| NameClaimType |
Hiermee wordt het claimtype opgehaald dat wordt gebruikt om te bepalen welke claims de waarde voor de Name eigenschap van deze claimidentiteit bieden. (Overgenomen van ClaimsIdentity) |
| RoleClaimType |
Hiermee wordt het claimtype opgehaald dat wordt geïnterpreteerd als een .NET rol van de claims in deze claimidentiteit. (Overgenomen van ClaimsIdentity) |
| Ticket |
Hiermee haalt u de FormsAuthenticationTicket identiteit van de gebruiker voor formulierverificatie op. |
Methoden
| Name | Description |
|---|---|
| AddClaim(Claim) |
Voegt één claim toe aan deze claimidentiteit. (Overgenomen van ClaimsIdentity) |
| AddClaims(IEnumerable<Claim>) |
Hiermee voegt u een lijst met claims toe aan deze claimidentiteit. (Overgenomen van ClaimsIdentity) |
| Clone() |
Hiermee haalt u een kopie van het huidige FormsIdentity exemplaar op. |
| CreateClaim(BinaryReader) |
Biedt een uitbreidbaarheidspunt voor afgeleide typen om een aangepaste Claimte maken. (Overgenomen van ClaimsIdentity) |
| Equals(Object) |
Bepaalt of het opgegeven object gelijk is aan het huidige object. (Overgenomen van Object) |
| FindAll(Predicate<Claim>) |
Hiermee worden alle claims opgehaald die overeenkomen met het opgegeven predicaat. (Overgenomen van ClaimsIdentity) |
| FindAll(String) |
Hiermee worden alle claims opgehaald met het opgegeven claimtype. (Overgenomen van ClaimsIdentity) |
| FindFirst(Predicate<Claim>) |
Haalt de eerste claim op die overeenkomt met het opgegeven predicaat. (Overgenomen van ClaimsIdentity) |
| FindFirst(String) |
Haalt de eerste claim op met het opgegeven claimtype. (Overgenomen van ClaimsIdentity) |
| GetHashCode() |
Fungeert als de standaardhashfunctie. (Overgenomen van Object) |
| GetObjectData(SerializationInfo, StreamingContext) |
Hiermee worden de SerializationInfo gegevens gevuld die nodig zijn om het huidige ClaimsIdentity object te serialiseren. (Overgenomen van ClaimsIdentity) |
| GetType() |
Hiermee haalt u de Type huidige instantie op. (Overgenomen van Object) |
| HasClaim(Predicate<Claim>) |
Bepaalt of deze claimidentiteit een claim heeft die overeenkomt met het opgegeven predicaat. (Overgenomen van ClaimsIdentity) |
| HasClaim(String, String) |
Bepaalt of deze claimidentiteit een claim heeft met het opgegeven claimtype en de opgegeven waarde. (Overgenomen van ClaimsIdentity) |
| MemberwiseClone() |
Hiermee maakt u een ondiepe kopie van de huidige Object. (Overgenomen van Object) |
| RemoveClaim(Claim) |
Probeert een claim te verwijderen uit de claimidentiteit. (Overgenomen van ClaimsIdentity) |
| ToString() |
Retourneert een tekenreeks die het huidige object vertegenwoordigt. (Overgenomen van Object) |
| TryRemoveClaim(Claim) |
Probeert een claim te verwijderen uit de claimidentiteit. (Overgenomen van ClaimsIdentity) |
| WriteTo(BinaryWriter, Byte[]) |
Serialiseert met behulp van een BinaryWriter. (Overgenomen van ClaimsIdentity) |
| WriteTo(BinaryWriter) |
Serialiseert met behulp van een BinaryWriter. (Overgenomen van ClaimsIdentity) |