WindowsIdentity クラス

定義

Windows ユーザーを表します。

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 ISerializable
    interface IDeserializationCallback
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
継承
WindowsIdentity
継承
WindowsIdentity
属性
実装

次の例は、 クラスのメンバー WindowsIdentity の使用を示しています。 アンマネージド Win32 LogonUser 関数の呼び出しを通じて Windows アカウント トークンを取得し、そのトークンを使用して別のユーザーを偽装する方法を示す例については、 クラスを WindowsImpersonationContext 参照してください。

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

注釈

メソッドを GetCurrent 呼び出して、現在の WindowsIdentity ユーザーを表す オブジェクトを作成します。

重要

この型は IDisposable インターフェイスを実装します。 型の使用が完了したら、直接的または間接的に型を破棄する必要があります。 直接的に型を破棄するには、try/catch ブロック内で Dispose メソッドを呼び出します。 間接的に型を破棄するには、using (C# の場合) または Using (Visual Basic 言語) などの言語構成要素を使用します。 詳細については、IDisposable インターフェイスに関するトピック内の「IDisposable を実装するオブジェクトの使用」セクションを参照してください。

コンストラクター

WindowsIdentity(IntPtr)

指定した Windows アカウント トークンによって表されるユーザーを表す、WindowsIdentity クラスの新しいインスタンスを初期化します。

WindowsIdentity(IntPtr, String)

指定した Windows アカウント トークンと指定した認証の種類によって表されるユーザーを表す、WindowsIdentity クラスの新しいインスタンスを初期化します。

WindowsIdentity(IntPtr, String, WindowsAccountType)

指定した Windows アカウント トークン、指定した認証の種類、および指定した Windows アカウントの種類によって表されるユーザーを表す、WindowsIdentity クラスの新しいインスタンスを初期化します。

WindowsIdentity(IntPtr, String, WindowsAccountType, Boolean)

指定した Windows アカウント トークン、指定した認証の種類、指定した Windows アカウントの種類、および指定した認証ステータスによって表されるユーザーを表す、WindowsIdentity クラスの新しいインスタンスを初期化します。

WindowsIdentity(SerializationInfo, StreamingContext)
古い.

SerializationInfo ストリーム内の情報で表されるユーザーを表す WindowsIdentity クラスの新しいインスタンスを初期化します。

WindowsIdentity(String)

指定した UPN (User Principal Name) で表されるユーザーを表す WindowsIdentity クラスの新しいインスタンスを初期化します。

WindowsIdentity(String, String)

指定した UPN (User Principal Name) と指定した認証の種類で表されるユーザーを表す WindowsIdentity クラスの新しいインスタンスを初期化します。

WindowsIdentity(WindowsIdentity)

指定した WindowsIdentity オブジェクトを使用して、WindowsIdentity クラスの新しいインスタンスを初期化します。

フィールド

DefaultIssuer

既定の ClaimsIdentity 発行元の名前を識別します。

DefaultNameClaimType

既定の名前クレームの種類、Name

(継承元 ClaimsIdentity)
DefaultRoleClaimType

既定のロール クレームの種類、Role

(継承元 ClaimsIdentity)

プロパティ

AccessToken

この SafeAccessTokenHandle インスタンスのこの WindowsIdentity を取得します。

Actor

デリゲート権限が付与された呼び出しパーティの ID を取得または設定します。

(継承元 ClaimsIdentity)
AuthenticationType

ユーザーを識別するために使用する認証の種類を取得します。

BootstrapContext

このクレーム ID を作成するために使用されたトークンを取得または設定します。

(継承元 ClaimsIdentity)
Claims

この Windows ID によって表されるユーザーのすべてのクレームを取得します。

CustomSerializationData

派生型によって提供される追加データが含まれています。 通常、WriteTo(BinaryWriter, Byte[]) の呼び出し時に設定されます。

(継承元 ClaimsIdentity)
DeviceClaims

WindowsDeviceClaim プロパティのキーを持つクレームを取得します。

Groups

現在の Windows ユーザーが属しているグループを取得します。

ImpersonationLevel

ユーザーの偽装レベルを取得します。

IsAnonymous

システムによってユーザー アカウントが匿名アカウントとして識別されているかどうかを示す値を取得します。

IsAuthenticated

ユーザーが Windows により認証されているかどうかを示す値を取得します。

IsGuest

システムによってユーザー アカウントが Guest アカウントとして識別されているかどうかを示す値を取得します。

IsSystem

システムによってユーザー アカウントが System アカウントとして識別されているかどうかを示す値を取得します。

Label

このクレーム識別子のラベルを取得または設定します。

(継承元 ClaimsIdentity)
Name

ユーザーの Windows ログオン名を取得します。

NameClaimType

このクレーム ID の Name プロパティにどのクレームが値を提供するかを判断するために使用されるクレームの種類を取得します。

(継承元 ClaimsIdentity)
Owner

トークン所有者のセキュリティ識別子 (SID) を取得します。

RoleClaimType

このクレーム ID のクレームのうちで .NET のロールとして解釈されるクレームの種類を取得します。

(継承元 ClaimsIdentity)
Token

ユーザーの Windows アカウント トークンを取得します。

User

ユーザーのセキュリティ識別子 (SID) を取得します。

UserClaims

WindowsUserClaim プロパティのキーを持つクレームを取得します。

メソッド

AddClaim(Claim)

このクレーム ID に単一のクレームを追加します。

(継承元 ClaimsIdentity)
AddClaims(IEnumerable<Claim>)

このクレーム ID にクレームの一覧を追加します。

(継承元 ClaimsIdentity)
Clone()

現在のインスタンスのコピーである新しいオブジェクトを作成します。

CreateClaim(BinaryReader)

カスタム Claim を作成する拡張ポイントを派生型に提供します。

(継承元 ClaimsIdentity)
Dispose()

WindowsIdentity によって使用されているすべてのリソースを解放します。

Dispose(Boolean)

WindowsIdentity によって使用されているアンマネージド リソースを解放し、オプションでマネージド リソースも解放します。

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
Finalize()

現在のインスタンスに保持されているリソースを解放します。

FindAll(Predicate<Claim>)

指定した述語に一致するすべてのクレームを取得します。

(継承元 ClaimsIdentity)
FindAll(String)

指定されたクレーム型のすべてのクレームを取得します。

(継承元 ClaimsIdentity)
FindFirst(Predicate<Claim>)

指定した述語に一致する最初のクレームを取得します。

(継承元 ClaimsIdentity)
FindFirst(String)

指定したクレームの種類の最初のクレームを取得します。

(継承元 ClaimsIdentity)
GetAnonymous()

匿名ユーザーを表すために、コード内で sentinel 値として使用できる WindowsIdentity オブジェクトを返します。 プロパティ値は、Windows オペレーティング システムが使用する組み込み匿名 ID を表しません。

GetCurrent()

現在の Windows ユーザーを表す WindowsIdentity オブジェクトを返します。

GetCurrent(Boolean)

ifImpersonating パラメーターの値に応じてスレッドまたはプロセスの Windows ID を表す WindowsIdentity オブジェクトを返します。

GetCurrent(TokenAccessLevels)

目的のトークン アクセス レベルを指定して現在の Windows ユーザーを表す WindowsIdentity オブジェクトを返します。

GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetObjectData(SerializationInfo, StreamingContext)

SerializationInfo オブジェクトに、現在の ClaimsIdentity オブジェクトをシリアル化するために必要なデータを格納します。

(継承元 ClaimsIdentity)
GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
HasClaim(Predicate<Claim>)

指定した述語に一致するクレーム ID がこのクレーム ID に含まれるかどうかを判断します。

(継承元 ClaimsIdentity)
HasClaim(String, String)

指定したクレームの種類と値を持つクレームがこのクレーム ID に含まれるかどうかを判断します。

(継承元 ClaimsIdentity)
Impersonate()

WindowsIdentity オブジェクトによって表されるユーザーを偽装します。

Impersonate(IntPtr)

指定したユーザー トークンによって表されるユーザーを偽装します。

MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
RemoveClaim(Claim)

クレーム ID からクレームを削除します。

(継承元 ClaimsIdentity)
RunImpersonated(SafeAccessTokenHandle, Action)

指定したアクションを、偽装した Windows ID として実行します。 偽装したメソッド呼び出しを使用して WindowsImpersonationContext で関数を実行するのではなく、RunImpersonated(SafeAccessTokenHandle, Action) を使用して関数をパラメーターとして直接指定することができます。

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

指定した関数を、偽装した Windows ID として実行します。 偽装したメソッド呼び出しを使用して WindowsImpersonationContext で関数を実行するのではなく、RunImpersonated(SafeAccessTokenHandle, Action) を使用して関数をパラメーターとして直接指定することができます。

RunImpersonatedAsync(SafeAccessTokenHandle, Func<Task>)

指定した非同期アクションを、偽装された Windows ID として実行します。

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

指定した非同期アクションを、偽装された Windows ID として実行します。

ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)
TryRemoveClaim(Claim)

クレーム ID からクレームを削除します。

(継承元 ClaimsIdentity)
WriteTo(BinaryWriter)

BinaryWriter を使用してシリアル化します。

(継承元 ClaimsIdentity)
WriteTo(BinaryWriter, Byte[])

BinaryWriter を使用してシリアル化します。

(継承元 ClaimsIdentity)

明示的なインターフェイスの実装

IDeserializationCallback.OnDeserialization(Object)

ISerializable インターフェイスを実装し、逆シリアル化が完了したときに逆シリアル化イベントによってコールバックされます。

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

SerializationInfo オブジェクトに、この実行コンテキストのインスタンスを再作成するのに必要な論理コンテキスト情報を設定します。

適用対象