WindowsPrincipal.IsInRole Метод

Определение

Определяет, относится ли текущий участник к заданной группе пользователей Windows.Determines whether the current principal belongs to a specified Windows user group.

Перегрузки

IsInRole(Int32)

Определяет, относится ли текущий участник к группе пользователей Windows с заданным относительным идентификатором (RID).Determines whether the current principal belongs to the Windows user group with the specified relative identifier (RID).

IsInRole(SecurityIdentifier)

Определяет, относится ли текущий субъект к группе пользователей Windows с заданным идентификатором безопасности (SID).Determines whether the current principal belongs to the Windows user group with the specified security identifier (SID).

IsInRole(WindowsBuiltInRole)

Определяет, относится ли текущий субъект к группе пользователей Windows с заданным WindowsBuiltInRole.Determines whether the current principal belongs to the Windows user group with the specified WindowsBuiltInRole.

IsInRole(String)

Определяет, относится ли текущий субъект к группе пользователей Windows с заданным именем.Determines whether the current principal belongs to the Windows user group with the specified name.

Комментарии

Для этого метода существует четыре перегрузки.There are four overloads for this method. По соображениям IsInRole(SecurityIdentifier) производительности настоятельно рекомендуется использовать перегрузку.For performance reasons, the IsInRole(SecurityIdentifier) overload is strongly recommended.

Важно!

IsInRole Метод не поддерживается в Windows 98 или Windows Millennium Edition.The IsInRole method is not supported on Windows 98 or Windows Millennium Edition.

IsInRole(Int32)

Определяет, относится ли текущий участник к группе пользователей Windows с заданным относительным идентификатором (RID).Determines whether the current principal belongs to the Windows user group with the specified relative identifier (RID).

public:
 virtual bool IsInRole(int rid);
public virtual bool IsInRole (int rid);
override this.IsInRole : int -> bool
Public Overridable Function IsInRole (rid As Integer) As Boolean

Параметры

rid
Int32

RID группы пользователей Windows, в которой требуется проверить состояние членства участника.The RID of the Windows user group in which to check for the principal's membership status.

Возвраты

Значение true, если текущий субъект является членом заданной группы пользователей Windows (в конкретной роли); в противном случае — значение false.true if the current principal is a member of the specified Windows user group, that is, in a particular role; otherwise, false.

Примеры

В следующем примере кода показано использование IsInRole методов.The following code example demonstrates the use of the IsInRole methods. WindowsBuiltInRole Перечисление используется в качестве источника идентификаторов RID, которые обозначают встроенные роли.The WindowsBuiltInRole enumeration is used as the source for the RIDs that identify the built-in roles. Идентификаторы RID используются для определения ролей текущего участника.The RIDs are used to determine the roles of the current principal.

public:
   static void DemonstrateWindowsBuiltInRoleEnum()
   {
      AppDomain^ myDomain = Thread::GetDomain();

      myDomain->SetPrincipalPolicy( PrincipalPolicy::WindowsPrincipal );
      WindowsPrincipal^ myPrincipal = dynamic_cast<WindowsPrincipal^>(Thread::CurrentPrincipal);

      Console::WriteLine( "{0} belongs to: ", myPrincipal->Identity->Name );

      Array^ wbirFields = Enum::GetValues( WindowsBuiltInRole::typeid );

      for each ( Object^ roleName in wbirFields )
      {
         try
         {
            Console::WriteLine( "{0}? {1}.", roleName,
               myPrincipal->IsInRole(  *dynamic_cast<WindowsBuiltInRole^>(roleName) ) );
         }
         catch ( Exception^ ) 
         {
            Console::WriteLine( "{0}: Could not obtain role for this RID.",
               roleName );
         }
      }
   }
using System;
using System.Threading;
using System.Security.Permissions;
using System.Security.Principal;

class SecurityPrincipalDemo
{
    public static void DemonstrateWindowsBuiltInRoleEnum()
    {
        AppDomain myDomain = Thread.GetDomain();

        myDomain.SetPrincipalPolicy(PrincipalPolicy.WindowsPrincipal);
        WindowsPrincipal myPrincipal = (WindowsPrincipal)Thread.CurrentPrincipal;
        Console.WriteLine("{0} belongs to: ", myPrincipal.Identity.Name.ToString());
        Array wbirFields = Enum.GetValues(typeof(WindowsBuiltInRole));
        foreach (object roleName in wbirFields)
        {
            try
            {
                // Cast the role name to a RID represented by the WindowsBuildInRole value.
                Console.WriteLine("{0}? {1}.", roleName,
                    myPrincipal.IsInRole((WindowsBuiltInRole)roleName));
                Console.WriteLine("The RID for this role is: " + ((int)roleName).ToString());

            }
            catch (Exception)
            {
                Console.WriteLine("{0}: Could not obtain role for this RID.",
                    roleName);
            }
        }
        // Get the role using the string value of the role.
        Console.WriteLine("{0}? {1}.", "Administrators",
            myPrincipal.IsInRole("BUILTIN\\" + "Administrators"));
        Console.WriteLine("{0}? {1}.", "Users",
            myPrincipal.IsInRole("BUILTIN\\" + "Users"));
        // Get the role using the WindowsBuiltInRole enumeration value.
        Console.WriteLine("{0}? {1}.", WindowsBuiltInRole.Administrator,
           myPrincipal.IsInRole(WindowsBuiltInRole.Administrator));
        // Get the role using the WellKnownSidType.
        SecurityIdentifier sid = new SecurityIdentifier(WellKnownSidType.BuiltinAdministratorsSid, null);
        Console.WriteLine("WellKnownSidType BuiltinAdministratorsSid  {0}? {1}.", sid.Value, myPrincipal.IsInRole(sid));
    }

    public static void Main()
    {
        DemonstrateWindowsBuiltInRoleEnum();
    }
}
Imports System.Threading
Imports System.Security.Permissions
Imports System.Security.Principal

Class SecurityPrincipalDemo

    Public Shared Sub DemonstrateWindowsBuiltInRoleEnum()
        Dim myDomain As AppDomain = Thread.GetDomain()

        myDomain.SetPrincipalPolicy(PrincipalPolicy.WindowsPrincipal)
        Dim myPrincipal As WindowsPrincipal = CType(Thread.CurrentPrincipal, WindowsPrincipal)
        Console.WriteLine("{0} belongs to: ", myPrincipal.Identity.Name.ToString())
        Dim wbirFields As Array = [Enum].GetValues(GetType(WindowsBuiltInRole))
        Dim roleName As Object
        For Each roleName In wbirFields
            Try
                ' Cast the role name to a RID represented by the WindowsBuildInRole value.
                Console.WriteLine("{0}? {1}.", roleName, myPrincipal.IsInRole(CType(roleName, WindowsBuiltInRole)))
                Console.WriteLine("The RID for this role is: " + Fix(roleName).ToString())

            Catch
                Console.WriteLine("{0}: Could not obtain role for this RID.", roleName)
            End Try
        Next roleName
        ' Get the role using the string value of the role.
        Console.WriteLine("{0}? {1}.", "Administrators", myPrincipal.IsInRole("BUILTIN\" + "Administrators"))
        Console.WriteLine("{0}? {1}.", "Users", myPrincipal.IsInRole("BUILTIN\" + "Users"))
        ' Get the role using the WindowsBuiltInRole enumeration value.
        Console.WriteLine("{0}? {1}.", WindowsBuiltInRole.Administrator, myPrincipal.IsInRole(WindowsBuiltInRole.Administrator))
        ' Get the role using the WellKnownSidType.
        Dim sid As New SecurityIdentifier(WellKnownSidType.BuiltinAdministratorsSid, Nothing)
        Console.WriteLine("WellKnownSidType BuiltinAdministratorsSid  {0}? {1}.", sid.Value, myPrincipal.IsInRole(sid))

    End Sub

    Public Shared Sub Main()
        DemonstrateWindowsBuiltInRoleEnum()

    End Sub
End Class

Комментарии

При тестировании новых сведений о ролях, таких как новый пользователь или новая группа, важно выйти и войти в систему, чтобы принудительно распространить сведения о ролях в домене.When testing for newly created role information, such as a new user or a new group, it is important to log out and log in to force the propagation of role information within the domain. Это может привести IsInRole к возврату falseтеста.Not doing so can cause the IsInRole test to return false. Этот метод не поддерживается в Windows 98 и Windows Millennium Edition.This method is not supported on Windows 98 or Windows Millennium Edition.

Для повышения производительности IsInRole(SecurityIdentifier) перегрузку рекомендуется использовать в качестве предпочтительной перегрузки для определения роли пользователя.For performance reasons, the IsInRole(SecurityIdentifier) overload is recommended as the preferable overload for determining the user's role.

Примечание

В Windows Vista привилегии пользователя определяются контролем учетных записей (UAC).In Windows Vista, User Account Control (UAC) determines the privileges of a user. Члену встроенной группы "Администраторы" присваивается два маркера доступа на время выполнения: маркер доступа обычного пользователя и маркер доступа администратора.If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. По умолчанию назначена роль обычного пользователя.By default, you are in the standard user role. При попытке выполнить задачу, для которой требуются права администратора, вы можете динамически повысить уровень роли с помощью диалогового окна "согласие".When you attempt to perform a task that requires administrative privileges, you can dynamically elevate your role by using the Consent dialog box. Код, выполняющий IsInRole метод, не отображает диалоговое окно согласие.The code that executes the IsInRole method does not display the Consent dialog box. Код возвращает значение false, если используется стандартная роль пользователя, даже если вы используете встроенную группу "Администраторы".The code returns false if you are in the standard user role, even if you are in the Built-in Administrators group. Вы можете повысить уровень привилегий перед выполнением кода, щелкнув правой кнопкой мыши значок приложения и указав, что вы хотите запустить от имени администратора.You can elevate your privileges before you execute the code by right-clicking the application icon and indicating that you want to run as an administrator.

Относительные идентификаторы (RID) являются компонентами идентификатора безопасности (SID) группы пользователей Windows и поддерживаются для предотвращения проблем локализации между различными платформами.Relative identifiers (RIDs) are components of a Windows user group's security identifier (SID) and are supported to help prevent cross-platform localization issues. Многие учетные записи пользователей, локальные группы и глобальные группы имеют значение RID по умолчанию, которое является константой во всех версиях Windows.Many user accounts, local groups, and global groups have a default RID value that is constant across all versions of Windows.

Например, RID для роли Builtin \ администраторы — 0x220.For example, the RID for the BUILTIN\Administrators role is 0x220. Использование 0x220 в качестве входного параметра для IsInRole метода true приводит к возвращению, если текущий участник является администратором.Using 0x220 as the input parameter for the IsInRole method results in true being returned if the current principal is an administrator.

В следующих таблицах перечислены значения RID по умолчанию.The following tables list the default RID values.

Встроенные пользователиBuilt-in users ИЗБЕЖАТЬRID
домаиннаме\администраторDOMAINNAME\Administrator 0x1F40x1F4
домаиннаме\гуестDOMAINNAME\Guest 0x1F50x1F5
Встроенные глобальные группыBuilt-in global groups ИЗБЕЖАТЬRID
Администраторы Домаиннаме\домаинDOMAINNAME\Domain Admins 0x2000x200
Пользователи Домаиннаме\домаинDOMAINNAME\Domain Users 0x2010x201
Домаиннаме\домаин гостиDOMAINNAME\Domain Guests 0x2020x202
Встроенные локальные группыBuilt-in local groups ИЗБЕЖАТЬRID
BUILTIN\AdministratorsBUILTIN\Administrators 0x2200x220
Builtin \ пользователиBUILTIN\Users 0x2210x221
буилтин\гуестсBUILTIN\Guests 0x2220x222
Операторы Буилтин\аккаунтBUILTIN\Account Operators 0x2240x224
Операторы Буилтин\серверBUILTIN\Server Operators 0x2250x225
Операторы Буилтин\принтBUILTIN\Print Operators 0x2260x226
Операторы Буилтин\баккупBUILTIN\Backup Operators 0x2270x227
буилтин\репликаторBUILTIN\Replicator 0x2280x228

IsInRole(SecurityIdentifier)

Определяет, относится ли текущий субъект к группе пользователей Windows с заданным идентификатором безопасности (SID).Determines whether the current principal belongs to the Windows user group with the specified security identifier (SID).

public:
 virtual bool IsInRole(System::Security::Principal::SecurityIdentifier ^ sid);
[System.Runtime.InteropServices.ComVisible(false)]
public virtual bool IsInRole (System.Security.Principal.SecurityIdentifier sid);
override this.IsInRole : System.Security.Principal.SecurityIdentifier -> bool
Public Overridable Function IsInRole (sid As SecurityIdentifier) As Boolean

Параметры

sid
SecurityIdentifier

Объект SecurityIdentifier, уникально определяющий группу пользователей Windows.A SecurityIdentifier that uniquely identifies a Windows user group.

Возвраты

Значение true, если текущий участник является членом заданной группы пользователей Windows; в противном случае — значение false.true if the current principal is a member of the specified Windows user group; otherwise, false.

Атрибуты

Исключения

Свойство sid имеет значение null.sid is null.

Система Windows возвратила код ошибки Win32.Windows returned a Win32 error.

Примеры

В следующем примере кода показано использование WindowsPrincipal.IsInRole(SecurityIdentifier) метода.The following code example demonstrates the use of the WindowsPrincipal.IsInRole(SecurityIdentifier) method. Значение BuiltinAdministratorsSid перечисления используется для определения того, является ли текущий участник администратором.The BuiltinAdministratorsSid enumeration value is used to determine whether the current principal is an administrator. Полный пример кода см. в WindowsPrincipal.IsInRole(Int32) описании метода.For the full code example, see the WindowsPrincipal.IsInRole(Int32) method.

// Get the role using the WellKnownSidType.
SecurityIdentifier sid = new SecurityIdentifier(WellKnownSidType.BuiltinAdministratorsSid, null);
Console.WriteLine("WellKnownSidType BuiltinAdministratorsSid  {0}? {1}.", sid.Value, myPrincipal.IsInRole(sid));
    ' Get the role using the WellKnownSidType.
    Dim sid As New SecurityIdentifier(WellKnownSidType.BuiltinAdministratorsSid, Nothing)
    Console.WriteLine("WellKnownSidType BuiltinAdministratorsSid  {0}? {1}.", sid.Value, myPrincipal.IsInRole(sid))

End Sub

Комментарии

SecurityIdentifier Уникальный идентификатор пользователя или группы в реализациях Windows 2000, Windows Server и Windows XP.The SecurityIdentifier uniquely identifies a user or group on Windows 2000, Windows Server, and Windows XP implementations. При тестировании новых сведений о ролях, таких как новый пользователь или новая группа, важно выйти и войти в систему, чтобы принудительно распространить сведения о ролях в домене.When testing for newly created role information, such as a new user or a new group, it is important to log out and log in to force the propagation of role information within the domain. Это может привести IsInRole к возврату falseтеста.Not doing so can cause the IsInRole test to return false. Этот метод не поддерживается в Windows 98 и Windows Millennium Edition.This method is not supported on Windows 98 or Windows Millennium Edition.

Примечание

В Windows Vista привилегии пользователя определяются контролем учетных записей (UAC).In Windows Vista, User Account Control (UAC) determines the privileges of a user. Члену встроенной группы "Администраторы" присваивается два маркера доступа на время выполнения: маркер доступа обычного пользователя и маркер доступа администратора.If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. По умолчанию назначена роль обычного пользователя.By default, you are in the standard user role. При попытке выполнить задачу, для которой требуются права администратора, вы можете динамически повысить уровень роли с помощью диалогового окна "согласие".When you attempt to perform a task that requires administrative privileges, you can dynamically elevate your role by using the Consent dialog box. Код, выполняющий IsInRole метод, не отображает диалоговое окно согласие.The code that executes the IsInRole method does not display the Consent dialog box. Код возвращает значение false, если используется стандартная роль пользователя, даже если вы используете встроенную группу "Администраторы".The code returns false if you are in the standard user role, even if you are in the Built-in Administrators group. Вы можете повысить уровень привилегий перед выполнением кода, щелкнув правой кнопкой мыши значок приложения и указав, что вы хотите запустить от имени администратора.You can elevate your privileges before you execute the code by right-clicking the application icon and indicating that you want to run as an administrator.

По соображениям производительности это предпочтительная перегрузка для определения роли пользователя.For performance reasons, this is the preferable overload to determine a user's role.

IsInRole(WindowsBuiltInRole)

Определяет, относится ли текущий субъект к группе пользователей Windows с заданным WindowsBuiltInRole.Determines whether the current principal belongs to the Windows user group with the specified WindowsBuiltInRole.

public:
 virtual bool IsInRole(System::Security::Principal::WindowsBuiltInRole role);
public virtual bool IsInRole (System.Security.Principal.WindowsBuiltInRole role);
override this.IsInRole : System.Security.Principal.WindowsBuiltInRole -> bool
Public Overridable Function IsInRole (role As WindowsBuiltInRole) As Boolean

Параметры

role
WindowsBuiltInRole

Одно из значений перечисления WindowsBuiltInRole.One of the WindowsBuiltInRole values.

Возвраты

Значение true, если текущий участник является членом заданной группы пользователей Windows; в противном случае — значение false.true if the current principal is a member of the specified Windows user group; otherwise, false.

Исключения

role не является допустимым значением WindowsBuiltInRole.role is not a valid WindowsBuiltInRole value.

Примеры

В следующем примере WindowsBuiltInRole используется перечисление для определения того, является ли текущий участник экземпляром Administrator.The following example uses the WindowsBuiltInRole enumeration is used to determine whether the current principal is an Administrator. Полный пример кода см. в WindowsPrincipal.IsInRole(Int32) описании метода.For the full code example, see the WindowsPrincipal.IsInRole(Int32) method.

// Get the role using the WindowsBuiltInRole enumeration value.
Console.WriteLine("{0}? {1}.", WindowsBuiltInRole.Administrator,
   myPrincipal.IsInRole(WindowsBuiltInRole.Administrator));
' Get the role using the WindowsBuiltInRole enumeration value.
Console.WriteLine("{0}? {1}.", WindowsBuiltInRole.Administrator, myPrincipal.IsInRole(WindowsBuiltInRole.Administrator))

Комментарии

При тестировании новых сведений о ролях, таких как новый пользователь или новая группа, важно выйти и войти в систему, чтобы принудительно распространить сведения о ролях в домене.When testing for newly created role information, such as a new user or a new group, it is important to log out and log in to force the propagation of role information within the domain. Это может привести IsInRole к возврату falseтеста.Not doing so can cause the IsInRole test to return false. Этот метод не поддерживается в Windows 98 и Windows Millennium Edition.This method is not supported on Windows 98 or Windows Millennium Edition.

Для повышения производительности IsInRole(SecurityIdentifier) перегрузку рекомендуется использовать в качестве предпочтительной перегрузки для определения роли пользователя.For performance reasons, the IsInRole(SecurityIdentifier) overload is recommended as the preferable overload for determining the user's role.

Примечание

В Windows Vista привилегии пользователя определяются контролем учетных записей (UAC).In Windows Vista, User Account Control (UAC) determines the privileges of a user. Члену встроенной группы "Администраторы" присваивается два маркера доступа на время выполнения: маркер доступа обычного пользователя и маркер доступа администратора.If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. По умолчанию назначена роль обычного пользователя.By default, you are in the standard user role. При попытке выполнить задачу, для которой требуются права администратора, вы можете динамически повысить уровень роли с помощью диалогового окна "согласие".When you attempt to perform a task that requires administrative privileges, you can dynamically elevate your role by using the Consent dialog box. Код, выполняющий IsInRole метод, не отображает диалоговое окно согласие.The code that executes the IsInRole method does not display the Consent dialog box. Код возвращает значение false, если используется стандартная роль пользователя, даже если вы используете встроенную группу "Администраторы".The code returns false if you are in the standard user role, even if you are in the Built-in Administrators group. Вы можете повысить уровень привилегий перед выполнением кода, щелкнув правой кнопкой мыши значок приложения и указав, что вы хотите запустить от имени администратора.You can elevate your privileges before you execute the code by right-clicking the application icon and indicating that you want to run as an administrator.

IsInRole(String)

Определяет, относится ли текущий субъект к группе пользователей Windows с заданным именем.Determines whether the current principal belongs to the Windows user group with the specified name.

public:
 virtual bool IsInRole(System::String ^ role);
public virtual bool IsInRole (string role);
override this.IsInRole : string -> bool
Public Overridable Function IsInRole (role As String) As Boolean

Параметры

role
String

Имя группы пользователей Windows, для которой требуется проверить членство.The name of the Windows user group for which to check membership.

Возвраты

Значение true, если текущий участник является членом заданной группы пользователей Windows; в противном случае — значение false.true if the current principal is a member of the specified Windows user group; otherwise, false.

Примеры

В следующем примере кода показано использование WindowsPrincipal.IsInRole(String) метода.The following code example demonstrates the use of the WindowsPrincipal.IsInRole(String) method.

Строки BUILTIN\Administrators иBUILTIN\Users используются для определения того, является ли текущий участник администратором или пользователем.The strings BUILTIN\Administrators and BUILTIN\Users are used to determine whether the current principal is an administrator or a user. Полный пример кода см. в WindowsPrincipal.IsInRole(Int32) описании метода.For the full code example, see the WindowsPrincipal.IsInRole(Int32) method.

// Get the role using the string value of the role.
Console.WriteLine("{0}? {1}.", "Administrators",
    myPrincipal.IsInRole("BUILTIN\\" + "Administrators"));
Console.WriteLine("{0}? {1}.", "Users",
    myPrincipal.IsInRole("BUILTIN\\" + "Users"));
' Get the role using the string value of the role.
Console.WriteLine("{0}? {1}.", "Administrators", myPrincipal.IsInRole("BUILTIN\" + "Administrators"))
Console.WriteLine("{0}? {1}.", "Users", myPrincipal.IsInRole("BUILTIN\" + "Users"))

Комментарии

При тестировании новых сведений о ролях, таких как новый пользователь или новая группа, важно выйти и войти в систему, чтобы принудительно распространить сведения о ролях в домене.When testing for newly created role information, such as a new user or a new group, it is important to log out and log in to force the propagation of role information within the domain. Это может привести IsInRole к возврату falseтеста.Not doing so can cause the IsInRole test to return false. Этот метод не поддерживается в Windows 98 и Windows Millennium Edition.This method is not supported on Windows 98 or Windows Millennium Edition.

Для повышения производительности IsInRole(SecurityIdentifier) перегрузку рекомендуется использовать в качестве предпочтительной перегрузки для определения роли пользователя.For performance reasons, the IsInRole(SecurityIdentifier) overload is recommended as the preferable overload for determining the user's role.

Примечание

В Windows Vista привилегии пользователя определяются контролем учетных записей (UAC).In Windows Vista, User Account Control (UAC) determines the privileges of a user. Члену встроенной группы "Администраторы" присваивается два маркера доступа на время выполнения: маркер доступа обычного пользователя и маркер доступа администратора.If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. По умолчанию назначена роль обычного пользователя.By default, you are in the standard user role. При попытке выполнить задачу, для которой требуются права администратора, вы можете динамически повысить уровень роли с помощью диалогового окна "согласие".When you attempt to perform a task that requires administrative privileges, you can dynamically elevate your role by using the Consent dialog box. Код, выполняющий IsInRole метод, не отображает диалоговое окно согласие.The code that executes the IsInRole method does not display the Consent dialog box. Код возвращает значение false, если используется стандартная роль пользователя, даже если вы используете встроенную группу "Администраторы".The code returns false if you are in the standard user role, even if you are in the Built-in Administrators group. Вы можете повысить уровень привилегий перед выполнением кода, щелкнув правой кнопкой мыши значок приложения и указав, что вы хотите запустить от имени администратора.You can elevate your privileges before you execute the code by right-clicking the application icon and indicating that you want to run as an administrator.

Для встроенных ролей role строка должна иметь вид "\Builtinроленамехере".For built-in roles, the role string should be in the form "BUILTIN\RoleNameHere". Например, для проверки членства в роли администратора Windows строка, представляющая роль, должна иметь значение "Builtin \ Администраторы".For example, to test for membership in the Windows administrator role, the string representing the role should be "BUILTIN\Administrators". Обратите внимание, что обратная косая черта может потребоваться в escape-последовательности.Note that the backslash might need to be escaped. В следующей таблице перечислены встроенные роли.The following table lists the built-in roles.

Примечание

Орфография встроенных ролей в строковом формате отличается от проверки орфографии, WindowsBuiltInRole используемой в перечислении.The spelling for the BUILTIN roles in string format differs from the spelling used in the WindowsBuiltInRole enumeration. Например, написание имени администратора в перечислении — «Administrator», а не «Administrators».For example, the spelling for an administrator in the enumeration is "Administrator", not "Administrators". При использовании этой перегрузки следует использовать проверку орфографии для роли из следующей таблицы.When using this overload, use the spelling for the role from the following table.

Встроенные локальные группыBuilt-in local groups
BUILTIN\AdministratorsBUILTIN\Administrators
Builtin \ пользователиBUILTIN\Users
буилтин\гуестсBUILTIN\Guests
Операторы Буилтин\аккаунтBUILTIN\Account Operators
Операторы Буилтин\серверBUILTIN\Server Operators
Операторы Буилтин\принтBUILTIN\Print Operators
Операторы Буилтин\баккупBUILTIN\Backup Operators
буилтин\репликаторBUILTIN\Replicator

Для ролей, зависящих от компьютера, role строка должна иметь формат "MachineName\роленамехере".For machine-specific roles, the role string should be in the form "MachineName\RoleNameHere".

Для ролей, относящихся к role домену, строка должна иметь формат "\имя_домена "SomeDomain\Domain Usersроленамехере", например ".For domain-specific roles, the role string should be in the form "DomainName\RoleNameHere"; for example, "SomeDomain\Domain Users".

Примечание

В .NET Framework версии 1,0 role параметр учитывает регистр.In the .NET Framework version 1.0, the role parameter is case-sensitive. В .NET Framework версии 1,1 и более поздних role параметр не учитывает регистр.In the .NET Framework version 1.1 and later, the role parameter is case-insensitive.

Безопасность

SecurityPermission
для возможности управления объектом Principal.for the ability to manipulate the principal object. Связанное перечисление:ControlPrincipalAssociated enumeration: ControlPrincipal

Дополнительно

Применяется к