GenericPrincipal Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Representerar ett allmänt huvudnamn.
public ref class GenericPrincipal : System::Security::Claims::ClaimsPrincipal
public ref class GenericPrincipal : System::Security::Principal::IPrincipal
public class GenericPrincipal : System.Security.Claims.ClaimsPrincipal
[System.Serializable]
public class GenericPrincipal : System.Security.Principal.IPrincipal
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class GenericPrincipal : System.Security.Principal.IPrincipal
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class GenericPrincipal : System.Security.Claims.ClaimsPrincipal
type GenericPrincipal = class
inherit ClaimsPrincipal
[<System.Serializable>]
type GenericPrincipal = class
interface IPrincipal
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type GenericPrincipal = class
interface IPrincipal
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type GenericPrincipal = class
inherit ClaimsPrincipal
Public Class GenericPrincipal
Inherits ClaimsPrincipal
Public Class GenericPrincipal
Implements IPrincipal
- Arv
- Arv
-
GenericPrincipal
- Härledda
- Attribut
- Implementeringar
Exempel
I följande exempel visas användningen av medlemmar i GenericPrincipal klassen.
using namespace System;
using namespace System::Security::Principal;
ref class GenericPrincipalMembers
{
public:
[STAThread]
static void Main()
{
// Retrieve a GenericPrincipal that is based on the current user's
// WindowsIdentity.
GenericPrincipal^ genericPrincipal = GetGenericPrincipal();
// Retrieve the generic identity of the GenericPrincipal object.
GenericIdentity^ principalIdentity =
dynamic_cast<GenericIdentity^>(genericPrincipal->Identity);
// Display the identity name and authentication type.
if ( principalIdentity->IsAuthenticated )
{
Console::WriteLine( principalIdentity->Name );
Console::WriteLine( L"Type:{0}",
principalIdentity->AuthenticationType );
}
// Verify that the generic principal has been assigned the
// NetworkUser role.
if ( genericPrincipal->IsInRole( L"NetworkUser" ) )
{
Console::WriteLine( L"User belongs to the NetworkUser role." );
}
Console::WriteLine( L"The sample completed successfully; "
L"press Enter to continue." );
Console::ReadLine();
}
private:
// Create a generic principal based on values from the current
// WindowsIdentity.
static GenericPrincipal^ GetGenericPrincipal()
{
// Use values from the current WindowsIdentity to construct
// a set of GenericPrincipal roles.
WindowsIdentity^ windowsIdentity = WindowsIdentity::GetCurrent();
array<String^>^roles = gcnew array<String^>(10);
if ( windowsIdentity->IsAuthenticated )
{
// Add custom NetworkUser role.
roles[ 0 ] = L"NetworkUser";
}
if ( windowsIdentity->IsGuest )
{
// Add custom GuestUser role.
roles[ 1 ] = L"GuestUser";
}
if ( windowsIdentity->IsSystem )
{
// Add custom SystemUser role.
roles[ 2 ] = L"SystemUser";
}
// Construct a GenericIdentity object based on the current Windows
// identity name and authentication type.
String^ authenticationType = windowsIdentity->AuthenticationType;
String^ userName = windowsIdentity->Name;
GenericIdentity^ genericIdentity = gcnew GenericIdentity(
userName,authenticationType );
// Construct a GenericPrincipal object based on the generic identity
// and custom roles for the user.
GenericPrincipal^ genericPrincipal = gcnew GenericPrincipal(
genericIdentity,roles );
return genericPrincipal;
}
};
int main()
{
GenericPrincipalMembers::Main();
}
using System;
using System.Security.Principal;
class GenericPrincipalMembers
{
[STAThread]
static void Main(string[] args)
{
// Retrieve a GenericPrincipal that is based on the current user's
// WindowsIdentity.
GenericPrincipal genericPrincipal = GetGenericPrincipal();
// Retrieve the generic identity of the GenericPrincipal object.
GenericIdentity principalIdentity =
(GenericIdentity)genericPrincipal.Identity;
// Display the identity name and authentication type.
if (principalIdentity.IsAuthenticated)
{
Console.WriteLine(principalIdentity.Name);
Console.WriteLine("Type:"+principalIdentity.AuthenticationType);
}
// Verify that the generic principal has been assigned the
// NetworkUser role.
if (genericPrincipal.IsInRole("NetworkUser"))
{
Console.WriteLine("User belongs to the NetworkUser role.");
}
Console.WriteLine("The sample completed successfully; " +
"press Enter to continue.");
Console.ReadLine();
}
// Create a generic principal based on values from the current
// WindowsIdentity.
private static GenericPrincipal GetGenericPrincipal()
{
// Use values from the current WindowsIdentity to construct
// a set of GenericPrincipal roles.
WindowsIdentity windowsIdentity = WindowsIdentity.GetCurrent();
string[] roles = new string[10];
if (windowsIdentity.IsAuthenticated)
{
// Add custom NetworkUser role.
roles[0] = "NetworkUser";
}
if (windowsIdentity.IsGuest)
{
// Add custom GuestUser role.
roles[1] = "GuestUser";
}
if (windowsIdentity.IsSystem)
{
// Add custom SystemUser role.
roles[2] = "SystemUser";
}
// Construct a GenericIdentity object based on the current Windows
// identity name and authentication type.
string authenticationType = windowsIdentity.AuthenticationType;
string userName = windowsIdentity.Name;
GenericIdentity genericIdentity =
new GenericIdentity(userName, authenticationType);
// Construct a GenericPrincipal object based on the generic identity
// and custom roles for the user.
GenericPrincipal genericPrincipal =
new GenericPrincipal(genericIdentity, roles);
return genericPrincipal;
}
}
Imports System.Security.Principal
Public Class Form1
Inherits System.Windows.Forms.Form
' Event handler for Run button.
Private Sub Button1_Click( _
ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click
tbxOutput.Cursor = Cursors.WaitCursor
tbxOutput.Text = ""
' Retrieve a GenericPrincipal that is based on the current user's
' WindowsIdentity.
Dim genericPrincipal As GenericPrincipal = GetGenericPrincipal()
' Retrieve the generic identity of the GenericPrincipal object.
Dim principalIdentity As GenericIdentity = _
CType(genericPrincipal.Identity, GenericIdentity)
' Display identity name and authentication type.
If (principalIdentity.IsAuthenticated) Then
WriteLine(principalIdentity.Name)
WriteLine("Type:" + principalIdentity.AuthenticationType)
End If
' Verify that the generic principal has been assigned the
' NetworkUser role.
If (genericPrincipal.IsInRole("NetworkUser")) Then
WriteLine("User belongs to the NetworkUser role.")
End If
WriteLine("This sample completed successfully; " + _
" press Exit to continue.")
tbxOutput.Cursor = Cursors.Default
End Sub
' Create generic principal based on values from the current
' WindowsIdentity.
Private Function GetGenericPrincipal() As GenericPrincipal
' Use values from the current WindowsIdentity to construct
' a set of GenericPrincipal roles.
Dim roles(10) As String
Dim windowsIdentity As WindowsIdentity = windowsIdentity.GetCurrent()
If (windowsIdentity.IsAuthenticated) Then
' Add custom NetworkUser role.
roles(0) = "NetworkUser"
End If
If (windowsIdentity.IsGuest) Then
' Add custom GuestUser role.
roles(1) = "GuestUser"
End If
If (windowsIdentity.IsSystem) Then
' Add custom SystemUser role.
roles(2) = "SystemUser"
End If
' Construct a GenericIdentity object based on the current Windows
' identity name and authentication type.
Dim authenticationType As String = windowsIdentity.AuthenticationType
Dim userName As String = windowsIdentity.Name
Dim genericIdentity = _
New GenericIdentity(userName, authenticationType)
' Construct a GenericPrincipal object based on the generic identity
' and custom roles for the user.
Dim genericPrincipal As New GenericPrincipal(genericIdentity, roles)
Return genericPrincipal
End Function
' Write out message with linefeed and carriage return.
Private Sub WriteLine(ByVal message As String)
tbxOutput.AppendText(message + vbCrLf)
End Sub
' Event handler for Exit button.
Private Sub Button2_Click( _
ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button2.Click
Application.Exit()
End Sub
#Region " Windows Form Designer generated code "
Public Sub New()
MyBase.New()
'This call is required by the Windows Form Designer.
InitializeComponent()
'Add any initialization after the InitializeComponent() call
End Sub
'Form overrides dispose to clean up the component list.
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
If disposing Then
If Not (components Is Nothing) Then
components.Dispose()
End If
End If
MyBase.Dispose(disposing)
End Sub
'Required by the Windows Form Designer
Private components As System.ComponentModel.IContainer
'NOTE: The following procedure is required by the Windows Form Designer
'It can be modified using the Windows Form Designer.
'Do not modify it using the code editor.
Friend WithEvents Panel2 As System.Windows.Forms.Panel
Friend WithEvents Panel1 As System.Windows.Forms.Panel
Friend WithEvents Button1 As System.Windows.Forms.Button
Friend WithEvents Button2 As System.Windows.Forms.Button
Friend WithEvents tbxOutput As System.Windows.Forms.RichTextBox
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
Me.Panel2 = New System.Windows.Forms.Panel
Me.Button1 = New System.Windows.Forms.Button
Me.Button2 = New System.Windows.Forms.Button
Me.Panel1 = New System.Windows.Forms.Panel
Me.tbxOutput = New System.Windows.Forms.RichTextBox
Me.Panel2.SuspendLayout()
Me.Panel1.SuspendLayout()
Me.SuspendLayout()
'
'Panel2
'
Me.Panel2.Controls.Add(Me.Button1)
Me.Panel2.Controls.Add(Me.Button2)
Me.Panel2.Dock = System.Windows.Forms.DockStyle.Bottom
Me.Panel2.DockPadding.All = 20
Me.Panel2.Location = New System.Drawing.Point(0, 320)
Me.Panel2.Name = "Panel2"
Me.Panel2.Size = New System.Drawing.Size(616, 64)
Me.Panel2.TabIndex = 1
'
'Button1
'
Me.Button1.Dock = System.Windows.Forms.DockStyle.Right
Me.Button1.Font = New System.Drawing.Font( _
"Microsoft Sans Serif", _
9.0!, _
System.Drawing.FontStyle.Regular, _
System.Drawing.GraphicsUnit.Point, _
CType(0, Byte))
Me.Button1.Location = New System.Drawing.Point(446, 20)
Me.Button1.Name = "Button1"
Me.Button1.Size = New System.Drawing.Size(75, 24)
Me.Button1.TabIndex = 2
Me.Button1.Text = "&Run"
'
'Button2
'
Me.Button2.Dock = System.Windows.Forms.DockStyle.Right
Me.Button2.Font = New System.Drawing.Font( _
"Microsoft Sans Serif", _
9.0!, _
System.Drawing.FontStyle.Regular, _
System.Drawing.GraphicsUnit.Point, _
CType(0, Byte))
Me.Button2.Location = New System.Drawing.Point(521, 20)
Me.Button2.Name = "Button2"
Me.Button2.Size = New System.Drawing.Size(75, 24)
Me.Button2.TabIndex = 3
Me.Button2.Text = "E&xit"
'
'Panel1
'
Me.Panel1.Controls.Add(Me.tbxOutput)
Me.Panel1.Dock = System.Windows.Forms.DockStyle.Fill
Me.Panel1.DockPadding.All = 20
Me.Panel1.Location = New System.Drawing.Point(0, 0)
Me.Panel1.Name = "Panel1"
Me.Panel1.Size = New System.Drawing.Size(616, 320)
Me.Panel1.TabIndex = 2
'
'tbxOutput
'
Me.tbxOutput.AccessibleDescription = _
"Displays output from application."
Me.tbxOutput.AccessibleName = "Output textbox."
Me.tbxOutput.Dock = System.Windows.Forms.DockStyle.Fill
Me.tbxOutput.Location = New System.Drawing.Point(20, 20)
Me.tbxOutput.Name = "tbxOutput"
Me.tbxOutput.Size = New System.Drawing.Size(576, 280)
Me.tbxOutput.TabIndex = 1
Me.tbxOutput.Text = "Click the Run button to run the application."
'
'Form1
'
Me.AutoScaleBaseSize = New System.Drawing.Size(6, 15)
Me.ClientSize = New System.Drawing.Size(616, 384)
Me.Controls.Add(Me.Panel1)
Me.Controls.Add(Me.Panel2)
Me.Name = "Form1"
Me.Text = "GenericPrincipal"
Me.Panel2.ResumeLayout(False)
Me.Panel1.ResumeLayout(False)
Me.ResumeLayout(False)
End Sub
#End Region
End Class
Kommentarer
Den här klassen representerar den aktuella användarens roller.
Konstruktorer
| Name | Description |
|---|---|
| GenericPrincipal(IIdentity, String[]) |
Initierar en ny instans av GenericPrincipal klassen från en användaridentitet och en matris med rollnamn som användaren som representeras av den identiteten tillhör. |
Egenskaper
| Name | Description |
|---|---|
| Claims |
Hämtar en samling som innehåller alla anspråk från alla anspråksidentiteter som är associerade med anspråksobjektet. (Ärvd från ClaimsPrincipal) |
| CustomSerializationData |
Innehåller ytterligare data som tillhandahålls av en härledd typ. Anges vanligtvis när du anropar WriteTo(BinaryWriter, Byte[]). (Ärvd från ClaimsPrincipal) |
| Identities |
Hämtar en samling som innehåller alla anspråksidentiteter som är associerade med anspråksobjektet. (Ärvd från ClaimsPrincipal) |
| Identity |
Hämtar användaren GenericIdentity som representeras av den aktuella GenericPrincipal. |
Metoder
| Name | Description |
|---|---|
| AddIdentities(IEnumerable<ClaimsIdentity>) |
Lägger till de angivna anspråksidentiteterna i anspråksobjektet. (Ärvd från ClaimsPrincipal) |
| AddIdentity(ClaimsIdentity) |
Lägger till den angivna anspråksidentiteten i anspråksobjektet. (Ärvd från ClaimsPrincipal) |
| Clone() |
Returnerar en kopia av den här instansen. (Ärvd från ClaimsPrincipal) |
| CreateClaimsIdentity(BinaryReader) |
Skapar en ny anspråksidentitet. (Ärvd från ClaimsPrincipal) |
| Equals(Object) |
Avgör om det angivna objektet är lika med det aktuella objektet. (Ärvd från Object) |
| FindAll(Predicate<Claim>) |
Hämtar alla anspråk som matchas av det angivna predikatet. (Ärvd från ClaimsPrincipal) |
| FindAll(String) |
Hämtar alla eller de anspråk som har den angivna anspråkstypen. (Ärvd från ClaimsPrincipal) |
| FindFirst(Predicate<Claim>) |
Hämtar det första anspråket som matchas av det angivna predikatet. (Ärvd från ClaimsPrincipal) |
| FindFirst(String) |
Hämtar det första anspråket med den angivna anspråkstypen. (Ärvd från ClaimsPrincipal) |
| GetHashCode() |
Fungerar som standard-hash-funktion. (Ärvd från Object) |
| GetObjectData(SerializationInfo, StreamingContext) |
Fyller i SerializationInfo med data som behövs för att serialisera det aktuella ClaimsPrincipal objektet. (Ärvd från ClaimsPrincipal) |
| GetType() |
Hämtar den aktuella instansen Type . (Ärvd från Object) |
| HasClaim(Predicate<Claim>) |
Avgör om någon av anspråksidentiteterna som är associerade med det här anspråksobjektet innehåller ett anspråk som matchas av det angivna predikatet. (Ärvd från ClaimsPrincipal) |
| HasClaim(String, String) |
Avgör om någon av anspråksidentiteterna som är associerade med det här anspråksobjektet innehåller ett anspråk med den angivna anspråkstypen och värdet. (Ärvd från ClaimsPrincipal) |
| IsInRole(String) |
Avgör om den aktuella GenericPrincipal tillhör den angivna rollen. |
| MemberwiseClone() |
Skapar en ytlig kopia av den aktuella Object. (Ärvd från Object) |
| ToString() |
Returnerar en sträng som representerar det aktuella objektet. (Ärvd från Object) |
| WriteTo(BinaryWriter, Byte[]) |
Serialiserar med hjälp av en BinaryWriter. (Ärvd från ClaimsPrincipal) |
| WriteTo(BinaryWriter) |
Serialiserar med hjälp av en BinaryWriter. (Ärvd från ClaimsPrincipal) |