WindowsIdentity Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет пользователя Windows.
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 ref class WindowsIdentity : System::Security::Claims::ClaimsIdentity, IDisposable, System::Runtime::Serialization::IDeserializationCallback, System::Runtime::Serialization::ISerializable
[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
[<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
Implements IDeserializationCallback, IIdentity, ISerializable
Public Class WindowsIdentity
Implements IDeserializationCallback, IDisposable, IIdentity, ISerializable
Public Class WindowsIdentity
Inherits ClaimsIdentity
Implements IDeserializationCallback, IDisposable, ISerializable
- Наследование
-
WindowsIdentity
- Наследование
- Атрибуты
- Реализации
Примеры
В следующем примере показано использование элементов WindowsIdentity класса. Пример получения маркера учетной записи Windows с помощью вызова неуправляемой функции Win32 LogonUser и использования этого маркера для олицетворения другого пользователя см. в классе 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 объекта, представляющего текущего пользователя.
Important
Этот тип реализует IDisposable интерфейс. Завершив использование типа, следует избавиться от него напрямую или косвенно. Чтобы удалить тип напрямую, вызовите его Dispose метод в блоке try/catch . Чтобы удалить его косвенно, используйте конструкцию языка, например using (в C#) или Using (в Visual Basic). Дополнительные сведения см. в разделе "Использование объекта, реализующего IDisposable" в IDisposable разделе интерфейса.
Конструкторы
| Имя | Описание |
|---|---|
| WindowsIdentity(IntPtr, String, WindowsAccountType, Boolean) |
Инициализирует новый экземпляр WindowsIdentity класса для пользователя, представленного указанным маркером учетной записи Windows, указанным типом проверки подлинности, указанным типом учетной записи Windows и указанным состоянием проверки подлинности. |
| WindowsIdentity(IntPtr, String, WindowsAccountType) |
Инициализирует новый экземпляр WindowsIdentity класса для пользователя, представленного указанным маркером учетной записи Windows, указанным типом проверки подлинности и указанным типом учетной записи Windows. |
| WindowsIdentity(IntPtr, String) |
Инициализирует новый экземпляр WindowsIdentity класса для пользователя, представленного указанным маркером учетной записи Windows и указанным типом проверки подлинности. |
| WindowsIdentity(IntPtr) |
Инициализирует новый экземпляр WindowsIdentity класса для пользователя, представленного указанным маркером учетной записи Windows. |
| WindowsIdentity(SerializationInfo, StreamingContext) |
Инициализирует новый экземпляр WindowsIdentity класса для пользователя, представленного сведениями в потоке SerializationInfo . |
| WindowsIdentity(String, String) |
Инициализирует новый экземпляр WindowsIdentity класса для пользователя, представленного указанным именем участника-пользователя (UPN) и указанным типом проверки подлинности. |
| WindowsIdentity(String) |
Инициализирует новый экземпляр WindowsIdentity класса для пользователя, представленного указанным именем участника-пользователя (UPN). |
| WindowsIdentity(WindowsIdentity) |
Инициализирует новый экземпляр класса с помощью указанного WindowsIdentityWindowsIdentity объекта. |
Поля
| Имя | Описание |
|---|---|
| DefaultIssuer |
Определяет имя издателя по умолчанию ClaimsIdentity . |
| DefaultNameClaimType |
Тип утверждения имени по умолчанию; Name. (Унаследовано от ClaimsIdentity) |
| DefaultRoleClaimType |
Тип утверждения роли по умолчанию; Role. (Унаследовано от ClaimsIdentity) |
Свойства
| Имя | Описание |
|---|---|
| AccessToken |
Получает это SafeAccessTokenHandle для этого WindowsIdentity экземпляра. |
| Actor |
Получает или задает удостоверение вызывающей стороны, которая была предоставлена права делегирования. (Унаследовано от ClaimsIdentity) |
| AuthenticationType |
Возвращает тип проверки подлинности, используемый для идентификации пользователя. |
| BootstrapContext |
Возвращает или задает маркер, используемый для создания этого удостоверения утверждений. (Унаследовано от ClaimsIdentity) |
| Claims |
Возвращает все утверждения для пользователя, представленного этим удостоверением Windows. |
| CustomSerializationData |
Содержит дополнительные данные, предоставляемые производным типом. Обычно устанавливается при вызове WriteTo(BinaryWriter, Byte[]). (Унаследовано от ClaimsIdentity) |
| DeviceClaims |
Возвращает утверждения, имеющие WindowsDeviceClaim ключ свойства. |
| Groups |
Возвращает группы, к которой принадлежит текущий пользователь Windows. |
| ImpersonationLevel |
Возвращает уровень олицетворения для пользователя. |
| IsAnonymous |
Возвращает значение, указывающее, определена ли учетная запись пользователя как анонимная учетная запись системой. |
| IsAuthenticated |
Возвращает значение, указывающее, прошел ли пользователь проверку подлинности Windows. |
| IsGuest |
Возвращает значение, указывающее, является ли учетная запись пользователя учетной записью учетной Guest записью системы. |
| IsSystem |
Возвращает значение, указывающее, является ли учетная запись пользователя учетной записью учетной System записью системы. |
| Label |
Возвращает или задает метку для этого удостоверения утверждений. (Унаследовано от ClaimsIdentity) |
| Name |
Возвращает имя входа пользователя в Систему Windows. |
| NameClaimType |
Возвращает тип утверждения, используемый для определения того, какие утверждения предоставляют значение для Name свойства этого удостоверения утверждений. (Унаследовано от ClaimsIdentity) |
| Owner |
Возвращает идентификатор безопасности (SID) для владельца токена. |
| RoleClaimType |
Возвращает тип утверждения, который будет интерпретирован как роль .NET среди утверждений в этом идентификаторе утверждений. (Унаследовано от ClaimsIdentity) |
| Token |
Возвращает маркер учетной записи Windows для пользователя. |
| User |
Возвращает идентификатор безопасности (SID) для пользователя. |
| UserClaims |
Возвращает утверждения, имеющие WindowsUserClaim ключ свойства. |
Методы
| Имя | Описание |
|---|---|
| AddClaim(Claim) |
Добавляет одно утверждение к этому удостоверению утверждений. (Унаследовано от ClaimsIdentity) |
| AddClaims(IEnumerable<Claim>) |
Добавляет список утверждений в это удостоверение утверждений. (Унаследовано от 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() |
WindowsIdentity Возвращает объект, который можно использовать в качестве значения sentinel в коде для представления анонимного пользователя. Значение свойства не представляет встроенное анонимное удостоверение, используемое операционной системой Windows. |
| GetCurrent() |
Возвращает объект WindowsIdentity, представляющий текущего пользователя Windows. |
| GetCurrent(Boolean) |
Возвращает объект WindowsIdentity, представляющий удостоверение Windows для потока или процесса в зависимости от значения параметра |
| GetCurrent(TokenAccessLevels) |
Возвращает объект WindowsIdentity, представляющий текущего пользователя Windows, используя указанный уровень доступа к маркеру. |
| GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
| GetObjectData(SerializationInfo, StreamingContext) |
Заполняет данные, необходимые SerializationInfo для сериализации текущего ClaimsIdentity объекта. (Унаследовано от ClaimsIdentity) |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| HasClaim(Predicate<Claim>) |
Определяет, имеет ли это удостоверение утверждений утверждение, соответствующее указанному предикату. (Унаследовано от ClaimsIdentity) |
| HasClaim(String, String) |
Определяет, имеет ли это удостоверение утверждения с указанным типом и значением утверждения. (Унаследовано от ClaimsIdentity) |
| Impersonate() |
Олицетворяет пользователя, представленного WindowsIdentity объектом. |
| Impersonate(IntPtr) |
Олицетворяет пользователя, представленного указанным маркером пользователя. |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| RemoveClaim(Claim) |
Пытается удалить утверждение из удостоверения утверждений. (Унаследовано от ClaimsIdentity) |
| RunImpersonated(SafeAccessTokenHandle, Action) |
Выполняет указанное действие в качестве олицетворенного удостоверения Windows. Вместо использования олицетворенного вызова метода и запуска функции можно использовать RunImpersonated(SafeAccessTokenHandle, Action) и предоставлять функцию WindowsImpersonationContextнепосредственно в качестве параметра. |
| RunImpersonated<T>(SafeAccessTokenHandle, Func<T>) |
Выполняет указанную функцию в качестве олицетворенного Windows удостоверения. Вместо использования олицетворенного вызова метода и запуска функции можно использовать RunImpersonated(SafeAccessTokenHandle, Action) и предоставлять функцию WindowsImpersonationContextнепосредственно в качестве параметра. |
| ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
| TryRemoveClaim(Claim) |
Пытается удалить утверждение из удостоверения утверждений. (Унаследовано от ClaimsIdentity) |
| WriteTo(BinaryWriter, Byte[]) |
Сериализуется с помощью .BinaryWriter (Унаследовано от ClaimsIdentity) |
| WriteTo(BinaryWriter) |
Сериализуется с помощью .BinaryWriter (Унаследовано от ClaimsIdentity) |
Явные реализации интерфейса
| Имя | Описание |
|---|---|
| IDeserializationCallback.OnDeserialization(Object) |
ISerializable Реализует интерфейс и вызывается событием десериализации при завершении десериализации. |
| ISerializable.GetObjectData(SerializationInfo, StreamingContext) |
SerializationInfo Задает объект с информацией о логическом контексте, необходимой для повторного создания экземпляра этого контекста выполнения. |