Aracılığıyla paylaş


WindowsIdentity Sınıf

Tanım

Windows kullanıcılarını temsil eder.

public ref class WindowsIdentity : System::Security::Claims::ClaimsIdentity, IDisposable, System::Runtime::Serialization::IDeserializationCallback, System::Runtime::Serialization::ISerializable
public ref class WindowsIdentity : System::Security::Claims::ClaimsIdentity, IDisposable
public ref class WindowsIdentity : System::Runtime::Serialization::IDeserializationCallback, System::Runtime::Serialization::ISerializable, System::Security::Principal::IIdentity
public ref class WindowsIdentity : IDisposable, System::Runtime::Serialization::IDeserializationCallback, System::Runtime::Serialization::ISerializable, System::Security::Principal::IIdentity
public class WindowsIdentity : System.Security.Claims.ClaimsIdentity, IDisposable, System.Runtime.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable
public class WindowsIdentity : System.Security.Claims.ClaimsIdentity, IDisposable
[System.Serializable]
public class WindowsIdentity : System.Runtime.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable, System.Security.Principal.IIdentity
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class WindowsIdentity : IDisposable, System.Runtime.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable, System.Security.Principal.IIdentity
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class WindowsIdentity : System.Security.Claims.ClaimsIdentity, IDisposable, System.Runtime.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable
type WindowsIdentity = class
    inherit ClaimsIdentity
    interface IDisposable
    interface IDeserializationCallback
    interface ISerializable
type WindowsIdentity = class
    inherit ClaimsIdentity
    interface IDisposable
[<System.Serializable>]
type WindowsIdentity = class
    interface IIdentity
    interface ISerializable
    interface IDeserializationCallback
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type WindowsIdentity = class
    interface IIdentity
    interface ISerializable
    interface IDeserializationCallback
    interface IDisposable
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type WindowsIdentity = class
    inherit ClaimsIdentity
    interface ISerializable
    interface IDeserializationCallback
    interface IDisposable
Public Class WindowsIdentity
Inherits ClaimsIdentity
Implements IDeserializationCallback, IDisposable, ISerializable
Public Class WindowsIdentity
Inherits ClaimsIdentity
Implements IDisposable
Public Class WindowsIdentity
Implements IDeserializationCallback, IIdentity, ISerializable
Public Class WindowsIdentity
Implements IDeserializationCallback, IDisposable, IIdentity, ISerializable
Devralma
WindowsIdentity
Devralma
WindowsIdentity
Öznitelikler
Uygulamalar

Örnekler

Aşağıdaki örnekte sınıfın üyelerinin kullanımı gösterilmektedir WindowsIdentity . Yönetilmeyen Win32 LogonUser işlevine yapılan bir çağrı aracılığıyla Windows hesap belirtecinin nasıl alınacağını ve başka bir kullanıcının kimliğine bürünmek için bu belirteci kullanmayı gösteren bir örnek için sınıfına WindowsImpersonationContext bakın.

using namespace System;
using namespace System::Security::Principal;
void IntPtrConstructor( IntPtr logonToken );
void IntPtrStringConstructor( IntPtr logonToken );
void IntPrtStringTypeBoolConstructor( IntPtr logonToken );
void IntPtrStringTypeConstructor( IntPtr logonToken );
void UseProperties( IntPtr logonToken );
IntPtr LogonUser();
void GetAnonymousUser();
void ImpersonateIdentity( IntPtr logonToken );

[STAThread]
int main()
{
   
   // Retrieve the Windows account token for the current user.
   IntPtr logonToken = LogonUser();
   
   // Constructor implementations.
   IntPtrConstructor( logonToken );
   IntPtrStringConstructor( logonToken );
   IntPtrStringTypeConstructor( logonToken );
   IntPrtStringTypeBoolConstructor( logonToken );
   
   // Property implementations.
   UseProperties( logonToken );
   
   // Method implementations.
   GetAnonymousUser();
   ImpersonateIdentity( logonToken );
   Console::WriteLine( "This sample completed successfully; "
   "press Enter to exit." );
   Console::ReadLine();
}


// Create a WindowsIdentity object for the user represented by the
// specified Windows account token.
void IntPtrConstructor( IntPtr logonToken )
{
   
   // Construct a WindowsIdentity object using the input account token.
   WindowsIdentity^ windowsIdentity = gcnew WindowsIdentity( logonToken );
   
   Console::WriteLine( "Created a Windows identity object named {0}.", windowsIdentity->Name );
}

// Create a WindowsIdentity object for the user represented by the
// specified account token and authentication type.
void IntPtrStringConstructor( IntPtr logonToken )
{
   
   // Construct a WindowsIdentity object using the input account token 
   // and the specified authentication type.
   String^ authenticationType = "WindowsAuthentication";
   WindowsIdentity^ windowsIdentity = gcnew WindowsIdentity( logonToken,authenticationType );
   
   Console::WriteLine( "Created a Windows identity object named {0}.", windowsIdentity->Name );
}



// Create a WindowsIdentity object for the user represented by the
// specified account token, authentication type and Windows account
// type.
void IntPtrStringTypeConstructor( IntPtr logonToken )
{
   
   // Construct a WindowsIdentity object using the input account token,
   // and the specified authentication type and Windows account type.
   String^ authenticationType = "WindowsAuthentication";
   WindowsAccountType guestAccount = WindowsAccountType::Guest;
   WindowsIdentity^ windowsIdentity = gcnew WindowsIdentity( logonToken,authenticationType,guestAccount );
   
   Console::WriteLine( "Created a Windows identity object named {0}.", windowsIdentity->Name );
}

// Create a WindowsIdentity object for the user represented by the
// specified account token, authentication type, Windows account type and
// Boolean authentication flag.
void IntPrtStringTypeBoolConstructor( IntPtr logonToken )
{
   
   // Construct a WindowsIdentity object using the input account token,
   // and the specified authentication type, Windows account type, and
   // authentication flag.
   String^ authenticationType = "WindowsAuthentication";
   WindowsAccountType guestAccount = WindowsAccountType::Guest;
   bool isAuthenticated = true;
   WindowsIdentity^ windowsIdentity = gcnew WindowsIdentity( logonToken,authenticationType,guestAccount,isAuthenticated );
   
   Console::WriteLine( "Created a Windows identity object named {0}.", windowsIdentity->Name );
}

// Access the properties of a WindowsIdentity object.
void UseProperties( IntPtr logonToken )
{
   WindowsIdentity^ windowsIdentity = gcnew WindowsIdentity( logonToken );
   String^ propertyDescription = "The windows identity named ";
   
   // Retrieve the Windows logon name from the Windows identity object.
   propertyDescription = String::Concat( propertyDescription, windowsIdentity->Name );
   
   // Verify that the user account is not considered to be an Anonymous
   // account by the system.
   if (  !windowsIdentity->IsAnonymous )
   {
      propertyDescription = String::Concat( propertyDescription, ", is not an Anonymous account" );
   }

   
   // Verify that the user account has been authenticated by Windows.
   if ( windowsIdentity->IsAuthenticated )
   {
      propertyDescription = String::Concat( propertyDescription, ", is authenticated" );
   }
   
   // Verify that the user account is considered to be a System account
   // by the system.
   if ( windowsIdentity->IsSystem )
   {
      propertyDescription = String::Concat( propertyDescription, ", is a System account" );
   }
   
   // Verify that the user account is considered to be a Guest account
   // by the system.
   if ( windowsIdentity->IsGuest )
   {
      propertyDescription = String::Concat( propertyDescription, ", is a Guest account" );
   }
   
   // Retrieve the authentication type for the 
   String^ authenticationType = windowsIdentity->AuthenticationType;
   
   // Append the authenication type to the output message.
   if ( authenticationType != nullptr )
   {
      propertyDescription = String::Format( "{0} and uses {1} authentication type.", propertyDescription, authenticationType );
   }
   
   Console::WriteLine( propertyDescription );
}


// Retrieve the account token from the current WindowsIdentity object
// instead of calling the unmanaged LogonUser method in the advapi32.dll.
IntPtr LogonUser()
{
   
   IntPtr accountToken = WindowsIdentity::GetCurrent()->Token;
   
   return accountToken;
}


// Get the WindowsIdentity object for an Anonymous user.
void GetAnonymousUser()
{
   
   // Retrieve a WindowsIdentity object that represents an anonymous
   // Windows user.
   WindowsIdentity^ windowsIdentity = WindowsIdentity::GetAnonymous();
   
}


// Impersonate a Windows identity.
void ImpersonateIdentity( IntPtr logonToken )
{
   
   // Retrieve the Windows identity using the specified token.
   WindowsIdentity^ windowsIdentity = gcnew WindowsIdentity( logonToken );
   
   // Create a WindowsImpersonationContext object by impersonating the
   // Windows identity.
   WindowsImpersonationContext^ impersonationContext = windowsIdentity->Impersonate();
   Console::WriteLine( "Name of the identity after impersonation: {0}.", WindowsIdentity::GetCurrent()->Name );
   
   // Stop impersonating the user.
   impersonationContext->Undo();
   
   // Check the identity name.
   Console::Write( "Name of the identity after performing an Undo on the" );
   Console::WriteLine( " impersonation: {0}", WindowsIdentity::GetCurrent()->Name );
}
using System;
using System.Security.Principal;

class WindowsIdentityMembers
{
    [STAThread]
    static void Main(string[] args)
    {
        // Retrieve the Windows account token for the current user.
        IntPtr logonToken = LogonUser();

        // Constructor implementations.
        IntPtrConstructor(logonToken);
        IntPtrStringConstructor(logonToken);
        IntPtrStringTypeConstructor(logonToken);
        IntPrtStringTypeBoolConstructor(logonToken);

        // Property implementations.
        UseProperties(logonToken);

        // Method implementations.
        GetAnonymousUser();
        ImpersonateIdentity(logonToken);

        Console.WriteLine("This sample completed successfully; " +
            "press Enter to exit.");
        Console.ReadLine();
    }

    // Create a WindowsIdentity object for the user represented by the
    // specified Windows account token.
    private static void IntPtrConstructor(IntPtr logonToken)
    {
        // Construct a WindowsIdentity object using the input account token.
        WindowsIdentity windowsIdentity = new WindowsIdentity(logonToken);

        Console.WriteLine("Created a Windows identity object named " +
            windowsIdentity.Name + ".");
    }

    // Create a WindowsIdentity object for the user represented by the
    // specified account token and authentication type.
    private static void IntPtrStringConstructor(IntPtr logonToken)
    {
        // Construct a WindowsIdentity object using the input account token 
        // and the specified authentication type.
        string authenticationType = "WindowsAuthentication";
        WindowsIdentity windowsIdentity =
                        new WindowsIdentity(logonToken, authenticationType);

        Console.WriteLine("Created a Windows identity object named " +
            windowsIdentity.Name + ".");
    }

    // Create a WindowsIdentity object for the user represented by the
    // specified account token, authentication type, and Windows account
    // type.
    private static void IntPtrStringTypeConstructor(IntPtr logonToken)
    {
        // Construct a WindowsIdentity object using the input account token,
        // and the specified authentication type, and Windows account type.
        string authenticationType = "WindowsAuthentication";
        WindowsAccountType guestAccount = WindowsAccountType.Guest;
        WindowsIdentity windowsIdentity =
            new WindowsIdentity(logonToken, authenticationType, guestAccount);

        Console.WriteLine("Created a Windows identity object named " +
            windowsIdentity.Name + ".");
    }

    // Create a WindowsIdentity object for the user represented by the
    // specified account token, authentication type, Windows account type, and
    // Boolean authentication flag.
    private static void IntPrtStringTypeBoolConstructor(IntPtr logonToken)
    {
        // Construct a WindowsIdentity object using the input account token,
        // and the specified authentication type, Windows account type, and
        // authentication flag.
        string authenticationType = "WindowsAuthentication";
        WindowsAccountType guestAccount = WindowsAccountType.Guest;
        bool isAuthenticated = true;
        WindowsIdentity windowsIdentity = new WindowsIdentity(
            logonToken, authenticationType, guestAccount, isAuthenticated);

        Console.WriteLine("Created a Windows identity object named " +
            windowsIdentity.Name + ".");
    }
    // Access the properties of a WindowsIdentity object.
    private static void UseProperties(IntPtr logonToken)
    {
        WindowsIdentity windowsIdentity = new WindowsIdentity(logonToken);
        string propertyDescription = "The Windows identity named ";

        // Retrieve the Windows logon name from the Windows identity object.
        propertyDescription += windowsIdentity.Name;

        // Verify that the user account is not considered to be an Anonymous
        // account by the system.
        if (!windowsIdentity.IsAnonymous)
        {
            propertyDescription += " is not an Anonymous account";
        }

        // Verify that the user account has been authenticated by Windows.
        if (windowsIdentity.IsAuthenticated)
        {
            propertyDescription += ", is authenticated";
        }

        // Verify that the user account is considered to be a System account
        // by the system.
        if (windowsIdentity.IsSystem)
        {
            propertyDescription += ", is a System account";
        }
        // Verify that the user account is considered to be a Guest account
        // by the system.
        if (windowsIdentity.IsGuest)
        {
            propertyDescription += ", is a Guest account";
        }

        // Retrieve the authentication type for the 
        String authenticationType = windowsIdentity.AuthenticationType;

        // Append the authenication type to the output message.
        if (authenticationType != null)
        {
            propertyDescription += (" and uses " + authenticationType);
            propertyDescription += (" authentication type.");
        }

        Console.WriteLine(propertyDescription);

        // Display the SID for the owner.
        Console.Write("The SID for the owner is : ");
        SecurityIdentifier si = windowsIdentity.Owner;
        Console.WriteLine(si.ToString());
        // Display the SIDs for the groups the current user belongs to.
        Console.WriteLine("Display the SIDs for the groups the current user belongs to.");
        IdentityReferenceCollection irc = windowsIdentity.Groups;
        foreach (IdentityReference ir in irc)
            Console.WriteLine(ir.Value);
        TokenImpersonationLevel token = windowsIdentity.ImpersonationLevel;
        Console.WriteLine("The impersonation level for the current user is : " + token.ToString());
    }

    // Retrieve the account token from the current WindowsIdentity object
    // instead of calling the unmanaged LogonUser method in the advapi32.dll.
    private static IntPtr LogonUser()
    {
        IntPtr accountToken = WindowsIdentity.GetCurrent().Token;
        Console.WriteLine( "Token number is: " + accountToken.ToString());

        return accountToken;
    }

    // Get the WindowsIdentity object for an Anonymous user.
    private static void GetAnonymousUser()
    {
        // Retrieve a WindowsIdentity object that represents an anonymous
        // Windows user.
        WindowsIdentity windowsIdentity = WindowsIdentity.GetAnonymous();
    }

    // Impersonate a Windows identity.
    private static void ImpersonateIdentity(IntPtr logonToken)
    {
        // Retrieve the Windows identity using the specified token.
        WindowsIdentity windowsIdentity = new WindowsIdentity(logonToken);

        // Create a WindowsImpersonationContext object by impersonating the
        // Windows identity.
        WindowsImpersonationContext impersonationContext =
            windowsIdentity.Impersonate();

        Console.WriteLine("Name of the identity after impersonation: "
            + WindowsIdentity.GetCurrent().Name + ".");
        Console.WriteLine(windowsIdentity.ImpersonationLevel);
        // Stop impersonating the user.
        impersonationContext.Undo();

        // Check the identity name.
        Console.Write("Name of the identity after performing an Undo on the");
        Console.WriteLine(" impersonation: " +
            WindowsIdentity.GetCurrent().Name);
    }
}
Imports System.Security.Principal

Module Module1

    Sub Main()

        ' Retrieve the Windows account token for the current user.
        Dim logonToken As IntPtr = LogonUser()

        ' Constructor implementations.
        IntPtrConstructor(logonToken)
        IntPtrStringConstructor(logonToken)
        IntPtrStringTypeConstructor(logonToken)
        IntPrtStringTypeBoolConstructor(logonToken)

        ' Property implementations.
        UseProperties(logonToken)

        ' Method implementations.
        GetAnonymousUser()
        ImpersonateIdentity(logonToken)

        ' Align interface and conclude application.
        Console.WriteLine(vbCrLf + "This sample completed " + _
            "successfully; press Enter to exit.")
        Console.ReadLine()

    End Sub
    
    ' Create a WindowsIdentity object for the user represented by the
    ' specified Windows account token.
    Private Sub IntPtrConstructor(ByVal logonToken As IntPtr)
        ' Construct a WindowsIdentity object using the input account token.
        Dim windowsIdentity As New WindowsIdentity(logonToken)

        WriteLine("Created a Windows identity object named " + _
            windowsIdentity.Name + ".")
    End Sub
    ' Create a WindowsIdentity object for the user represented by the
    ' specified account token and authentication type.
    Private Sub IntPtrStringConstructor(ByVal logonToken As IntPtr)
        ' Construct a WindowsIdentity object using the input account token 
        ' and the specified authentication type
        Dim authenticationType = "WindowsAuthentication"
        Dim windowsIdentity As _
            New WindowsIdentity(logonToken, authenticationType)

        WriteLine("Created a Windows identity object named " + _
            windowsIdentity.Name + ".")
    End Sub

    ' Create a WindowsIdentity object for the user represented by the
    ' specified account token, authentication type, and Windows account
    ' type.
    Private Sub IntPtrStringTypeConstructor(ByVal logonToken As IntPtr)
        ' Construct a WindowsIdentity object using the input account token,
        ' and the specified authentication type and Windows account type.
        Dim authenticationType As String = "WindowsAuthentication"
        Dim guestAccount As WindowsAccountType = WindowsAccountType.Guest
        Dim windowsIdentity As _
            New WindowsIdentity(logonToken, authenticationType, guestAccount)

        WriteLine("Created a Windows identity object named " + _
            windowsIdentity.Name + ".")
    End Sub

    ' Create a WindowsIdentity object for the user represented by the
    ' specified account token, authentication type, Windows account type,
    ' and Boolean authentication flag.
    Private Sub IntPrtStringTypeBoolConstructor(ByVal logonToken As IntPtr)
        ' Construct a WindowsIdentity object using the input account token,
        ' and the specified authentication type, Windows account type, and
        ' authentication flag.
        Dim authenticationType As String = "WindowsAuthentication"
        Dim guestAccount As WindowsAccountType = WindowsAccountType.Guest
        Dim isAuthenticated As Boolean = True
        Dim windowsIdentity As New WindowsIdentity( _
            logonToken, authenticationType, guestAccount, isAuthenticated)

        WriteLine("Created a Windows identity object named " + _
            windowsIdentity.Name + ".")
    End Sub
        
    ' Access the properties of a WindowsIdentity object.
    Private Sub UseProperties(ByVal logonToken As IntPtr)
        Dim windowsIdentity As New WindowsIdentity(logonToken)
        Dim propertyDescription As String = "The Windows identity named "

        ' Retrieve the Windows logon name from the Windows identity object.
        propertyDescription += windowsIdentity.Name

        ' Verify that the user account is not considered to be an Anonymous
        ' account by the system.
        If Not windowsIdentity.IsAnonymous Then
            propertyDescription += " is not an Anonymous account"
        End If

        ' Verify that the user account has been authenticated by Windows.
        If (windowsIdentity.IsAuthenticated) Then
            propertyDescription += ", is authenticated"
        End If

        ' Verify that the user account is considered to be a System account by
        ' the system.
        If (windowsIdentity.IsSystem) Then
            propertyDescription += ", is a System account"
        End If

        ' Verify that the user account is considered to be a Guest account by
        ' the system.
        If (windowsIdentity.IsGuest) Then
            propertyDescription += ", is a Guest account"
        End If
        Dim authenticationType As String = windowsIdentity.AuthenticationType

        ' Append the authenication type to the output message.
        If (Not authenticationType Is Nothing) Then
            propertyDescription += (" and uses " + authenticationType)
            propertyDescription += (" authentication type.")
        End If

        WriteLine(propertyDescription)

        ' Display the SID for the owner.
        Console.Write("The SID for the owner is : ")
        Dim si As SecurityIdentifier
        si = windowsIdentity.Owner
        Console.WriteLine(si.ToString())
        ' Display the SIDs for the groups the current user belongs to.
        Console.WriteLine("Display the SIDs for the groups the current user belongs to.")
        Dim irc As IdentityReferenceCollection
        Dim ir As IdentityReference
        irc = windowsIdentity.Groups
        For Each ir In irc
            Console.WriteLine(ir.Value)
        Next
        Dim token As TokenImpersonationLevel
        token = windowsIdentity.ImpersonationLevel
        Console.WriteLine("The impersonation level for the current user is : " + token.ToString())
    End Sub
    ' Retrieve the account token from the current WindowsIdentity object
    ' instead of calling the unmanaged LogonUser method in the advapi32.dll.
    Private Function LogonUser() As IntPtr
        Dim accountToken As IntPtr = WindowsIdentity.GetCurrent().Token

        Return accountToken
    End Function

    ' Get the WindowsIdentity object for an Anonymous user.
    Private Sub GetAnonymousUser()
        ' Retrieve a WindowsIdentity object that represents an anonymous
        ' Windows user.
        Dim windowsIdentity As WindowsIdentity
        windowsIdentity = windowsIdentity.GetAnonymous()
    End Sub

    ' Impersonate a Windows identity.
    Private Sub ImpersonateIdentity(ByVal logonToken As IntPtr)
        ' Retrieve the Windows identity using the specified token.
        Dim windowsIdentity As New WindowsIdentity(logonToken)

        ' Create a WindowsImpersonationContext object by impersonating the
        ' Windows identity.
        Dim impersonationContext As WindowsImpersonationContext
        impersonationContext = windowsIdentity.Impersonate()

        WriteLine("Name of the identity after impersonation: " + _
            windowsIdentity.GetCurrent().Name + ".")

        ' Stop impersonating the user.
        impersonationContext.Undo()

        ' Check the identity.
        WriteLine("Name of the identity after performing an Undo on the " + _
            "impersonation: " + windowsIdentity.GetCurrent().Name + ".")
    End Sub
    ' Write out message with carriage return to output textbox.
    Private Sub WriteLine(ByVal message As String)
        Console.WriteLine(message + vbCrLf)
    End Sub

End Module

Açıklamalar

GetCurrent Geçerli kullanıcıyı temsil eden bir WindowsIdentity nesne oluşturmak için yöntemini çağırın.

Önemli

Bu tür arabirimini IDisposable uygular. Türünü kullanmayı bitirdiğinizde, doğrudan veya dolaylı olarak atmalısınız. Türü doğrudan atmak için yöntemini bir try/catch blok içinde çağırın.Dispose Bunu dolaylı olarak atmak için (C#'de) veya Using (Visual Basic'te) gibi using bir dil yapısı kullanın. Daha fazla bilgi için arabirim konusunun "IDisposable Uygulayan Bir Nesne Kullanma" bölümüne IDisposable bakın.

Oluşturucular

WindowsIdentity(IntPtr)

Belirtilen Windows hesap belirteci tarafından temsil edilen kullanıcı için sınıfının yeni bir örneğini WindowsIdentity başlatır.

WindowsIdentity(IntPtr, String)

Belirtilen Windows hesap belirteci ve belirtilen kimlik doğrulama türü tarafından temsil edilen kullanıcı için sınıfının yeni bir örneğini WindowsIdentity başlatır.

WindowsIdentity(IntPtr, String, WindowsAccountType)

Belirtilen Windows hesap belirteci, belirtilen kimlik doğrulama türü ve belirtilen Windows hesap türü ile temsil edilen kullanıcı için sınıfının yeni bir örneğini WindowsIdentity başlatır.

WindowsIdentity(IntPtr, String, WindowsAccountType, Boolean)

Belirtilen Windows hesap belirteci, belirtilen kimlik doğrulama türü, belirtilen Windows hesap türü ve belirtilen kimlik doğrulama durumu ile temsil edilen kullanıcı için sınıfının yeni bir örneğini WindowsIdentity başlatır.

WindowsIdentity(SerializationInfo, StreamingContext)
Geçersiz.

Bir akıştaki WindowsIdentity bilgilerle temsil edilen kullanıcı için sınıfının yeni bir SerializationInfo örneğini başlatır.

WindowsIdentity(String)

Belirtilen Kullanıcı Asıl Adı (UPN) tarafından temsil edilen kullanıcı için sınıfının yeni bir örneğini WindowsIdentity başlatır.

WindowsIdentity(String, String)

Belirtilen Kullanıcı Asıl Adı (UPN) ve belirtilen kimlik doğrulama türüyle temsil edilen kullanıcı için sınıfının yeni bir örneğini WindowsIdentity başlatır.

WindowsIdentity(WindowsIdentity)

Belirtilen WindowsIdentity nesneyi kullanarak sınıfının yeni bir örneğini WindowsIdentity başlatır.

Alanlar

DefaultIssuer

Varsayılan ClaimsIdentity verenin adını tanımlar.

DefaultNameClaimType

Varsayılan ad talep türü; Nameöğesini seçin.

(Devralındığı yer: ClaimsIdentity)
DefaultRoleClaimType

Varsayılan rol talep türü; Roleöğesini seçin.

(Devralındığı yer: ClaimsIdentity)

Özellikler

AccessToken

Bu örnek için bunu SafeAccessTokenHandleWindowsIdentity alır.

Actor

Temsilci hakları verilen çağıran tarafın kimliğini alır veya ayarlar.

(Devralındığı yer: ClaimsIdentity)
AuthenticationType

Kullanıcıyı tanımlamak için kullanılan kimlik doğrulama türünü alır.

BootstrapContext

Bu talep kimliğini oluşturmak için kullanılan belirteci alır veya ayarlar.

(Devralındığı yer: ClaimsIdentity)
Claims

Bu Windows kimliğiyle temsil edilen kullanıcı için tüm talepleri alır.

CustomSerializationData

Türetilmiş bir tür tarafından sağlanan ek verileri içerir. genellikle çağrılırken WriteTo(BinaryWriter, Byte[])ayarlanır.

(Devralındığı yer: ClaimsIdentity)
DeviceClaims

Özellik anahtarına WindowsDeviceClaim sahip talepleri alır.

Groups

Geçerli Windows kullanıcısının ait olduğu grupları alır.

ImpersonationLevel

Kullanıcının kimliğe bürünme düzeyini alır.

IsAnonymous

Kullanıcı hesabının sistem tarafından anonim hesap olarak tanımlanıp tanımlanmadığını gösteren bir değer alır.

IsAuthenticated

Kullanıcının Windows tarafından kimliğinin doğrulanıp doğrulanmadığını belirten bir değer alır.

IsGuest

Kullanıcı hesabının sistem tarafından bir hesap olarak tanımlanıp tanımlanmadığını belirten bir Guest değer alır.

IsSystem

Kullanıcı hesabının sistem tarafından bir hesap olarak tanımlanıp tanımlanmadığını belirten bir System değer alır.

Label

Bu talep kimliği için etiketi alır veya ayarlar.

(Devralındığı yer: ClaimsIdentity)
Name

Kullanıcının Windows oturum açma adını alır.

NameClaimType

Bu talep kimliğinin özelliği için değer sağlayan talepleri belirlemek için Name kullanılan talep türünü alır.

(Devralındığı yer: ClaimsIdentity)
Owner

Belirteç sahibi için güvenlik tanımlayıcısını (SID) alır.

RoleClaimType

Bu talep kimliğindeki talepler arasında .NET rolü olarak yorumlanacak talep türünü alır.

(Devralındığı yer: ClaimsIdentity)
Token

Kullanıcı için Windows hesap belirtecini alır.

User

Kullanıcının güvenlik tanımlayıcısını (SID) alır.

UserClaims

Özellik anahtarına WindowsUserClaim sahip talepleri alır.

Yöntemler

AddClaim(Claim)

Bu talep kimliğine tek bir talep ekler.

(Devralındığı yer: ClaimsIdentity)
AddClaims(IEnumerable<Claim>)

Bu talep kimliğine taleplerin listesini ekler.

(Devralındığı yer: ClaimsIdentity)
Clone()

Geçerli örneğin kopyası olan yeni bir nesne oluşturur.

CreateClaim(BinaryReader)

Özel Claimbir oluşturmak için türetilmiş türler için bir genişletilebilirlik noktası sağlar.

(Devralındığı yer: ClaimsIdentity)
Dispose()

WindowsIdentity tarafından kullanılan tüm kaynakları serbest bırakır.

Dispose(Boolean)

WindowsIdentity tarafından kullanılan yönetilmeyen kaynakları serbest bırakır ve yönetilen kaynakları isteğe bağlı olarak serbest bırakır.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
Finalize()

Geçerli örnek tarafından tutulan kaynakları serbest bırakır.

FindAll(Predicate<Claim>)

Belirtilen koşulla eşleşen tüm talepleri alır.

(Devralındığı yer: ClaimsIdentity)
FindAll(String)

Belirtilen talep türüne sahip tüm talepleri alır.

(Devralındığı yer: ClaimsIdentity)
FindFirst(Predicate<Claim>)

Belirtilen koşulla eşleşen ilk talebi alır.

(Devralındığı yer: ClaimsIdentity)
FindFirst(String)

Belirtilen talep türüne sahip ilk talebi alır.

(Devralındığı yer: ClaimsIdentity)
GetAnonymous()

Anonim bir WindowsIdentity kullanıcıyı temsil etmek için kodunuzda sentinel değeri olarak kullanabileceğiniz bir nesne döndürür. Özellik değeri, Windows işletim sistemi tarafından kullanılan yerleşik anonim kimliği temsil etmez.

GetCurrent()

Geçerli Windows kullanıcısını temsil eden bir WindowsIdentity nesne döndürür.

GetCurrent(Boolean)

parametrenin değerine ifImpersonating bağlı olarak iş parçacığı veya işlem için Windows kimliğini temsil eden bir WindowsIdentity nesne döndürür.

GetCurrent(TokenAccessLevels)

Belirtilen istenen belirteç erişim düzeyini kullanarak geçerli Windows kullanıcısını temsil eden bir WindowsIdentity nesne döndürür.

GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetObjectData(SerializationInfo, StreamingContext)

SerializationInfo geçerli ClaimsIdentity nesneyi seri hale getirmek için gereken verilerle doldurur.

(Devralındığı yer: ClaimsIdentity)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
HasClaim(Predicate<Claim>)

Bu talep kimliğinin belirtilen koşulla eşleşen bir talep olup olmadığını belirler.

(Devralındığı yer: ClaimsIdentity)
HasClaim(String, String)

Bu talep kimliğinin belirtilen talep türüne ve değerine sahip bir talep olup olmadığını belirler.

(Devralındığı yer: ClaimsIdentity)
Impersonate()

Nesne tarafından temsil edilen kullanıcının kimliğine bürüner WindowsIdentity .

Impersonate(IntPtr)

Belirtilen kullanıcı belirteci tarafından temsil edilen kullanıcının kimliğine bürüner.

MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
RemoveClaim(Claim)

Talep kimliğinden bir talebi kaldırmaya çalışır.

(Devralındığı yer: ClaimsIdentity)
RunImpersonated(SafeAccessTokenHandle, Action)

Belirtilen eylemi kimliğine bürünülen Windows kimliği olarak çalıştırır. Kimliğine bürünülen yöntem çağrısı kullanmak ve işlevinizi içinde WindowsImpersonationContextçalıştırmak yerine işlevinizi doğrudan parametre olarak kullanabilir RunImpersonated(SafeAccessTokenHandle, Action) ve sağlayabilirsiniz.

RunImpersonated<T>(SafeAccessTokenHandle, Func<T>)

Belirtilen işlevi kimliğine bürünülen Windows kimliği olarak çalıştırır. Kimliğine bürünülen yöntem çağrısı kullanmak ve işlevinizi içinde WindowsImpersonationContextçalıştırmak yerine işlevinizi doğrudan parametre olarak kullanabilir RunImpersonated(SafeAccessTokenHandle, Action) ve sağlayabilirsiniz.

RunImpersonatedAsync(SafeAccessTokenHandle, Func<Task>)

Kimliğine bürünülen Windows kimliği olarak belirtilen zaman uyumsuz eylemi çalıştırır.

RunImpersonatedAsync<T>(SafeAccessTokenHandle, Func<Task<T>>)

Kimliğine bürünülen Windows kimliği olarak belirtilen zaman uyumsuz eylemi çalıştırır.

ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)
TryRemoveClaim(Claim)

Talep kimliğinden bir talebi kaldırmaya çalışır.

(Devralındığı yer: ClaimsIdentity)
WriteTo(BinaryWriter)

kullanarak BinaryWriterseri hale getirmektedir.

(Devralındığı yer: ClaimsIdentity)
WriteTo(BinaryWriter, Byte[])

kullanarak BinaryWriterseri hale getirmektedir.

(Devralındığı yer: ClaimsIdentity)

Belirtik Arabirim Kullanımları

IDeserializationCallback.OnDeserialization(Object)

arabirimini ISerializable uygular ve seri durumdan çıkarma işlemi tamamlandığında seri durumdan çıkarma olayı tarafından geri çağrılır.

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

SerializationInfo Nesneyi, bu yürütme bağlamının bir örneğini yeniden oluşturmak için gereken mantıksal bağlam bilgileriyle ayarlar.

Şunlara uygulanır