Как пометить атрибутом как конфиденциальные, в Windows Server 2003 с пакетом обновления 1 (SP1)

Переводы статьи Переводы статьи
Код статьи: 922836 - Vizualiza?i produsele pentru care se aplic? acest articol.
Развернуть все | Свернуть все

В этой статье

Аннотация

В службе каталогов Active Directory для Microsoft Windows Server 2000 и Microsoft Windows Server 2003 трудно предотвратить чтение атрибута прошедшего проверку пользователя. Как правило если пользователь запрашивает разрешения READ_PROPERTY для атрибута или его набор свойств, предоставляется доступ на чтение. Стандартные параметры безопасности в Active Directory устанавливается таким образом, чтобы прошедшие проверку пользователи имеют доступ на чтение ко всем атрибутам. В данной статье описывается запретить доступ на чтение для атрибута в Windows Server 2003 с пакетом обновления 1 (SP1).

Введение эта ссылка может указывать на содержимое полностью или частично на английском языке

В данной статье описывается, как пометить атрибутом как конфиденциальные, в Windows Server 2003 с пакетом обновления 1 (SP1).

Дополнительная информация

Знакомство с Windows Server 2003 SP1 так, чтобы пометить атрибутом как конфиденциальные. Чтобы сделать это, измените значениеsearchFlagsатрибут в схеме. надписьюsearchFlagsзначение атрибута содержит несколько битов, представляющих различные свойства атрибута. Например если установлен бит 1, индексируется атрибута. Бит 7 (128) определяет атрибут как конфиденциальные.

Требования и ограничения

Проверка доступа на чтение секретных атрибутов запускаться только на контроллерах домена под управлением Windows Server 2003 SP1 или более поздней версии. Функция секретных атрибутов привязан к установке Windows Server 2003 SP1 или более поздней версии. Эта функция не зависит ли включен домен или режим работы леса.

Не используйте функцию секретных атрибутов, если выполняются следующие условия:
  • Все контроллеры домена под управлением Windows Server 2003 имеют Windows Server 2003 SP1 или более поздней версии.
  • Все контроллеры домена под управлением Windows 2000 были обновлены или удалены.
Если в домене присутствуют контроллеры домена под управлением Windows 2000 Server исходной версии Windows Server 2003 и Windows Server 2003 SP1, может возникнуть следующая ситуация:
  • Если неавторизованный клиент запрашивает контроллеры домена под управлением Windows 2000 Server и на основе Windows Server 2003 для атрибута конфиденциальных данных, клиент может считывать данные.
  • Если неавторизованный клиент запрашивает контроллер домена под управлением Windows Server 2003 с пакетом обновления 1 для атрибута конфиденциальных данных, клиент не может прочитать данные.
Нельзя пометить атрибутом основную схему как конфиденциальные. Код сотрудника является примером атрибута основной схемы. Этот атрибут не может быть помечен как конфиденциальные, так как егоsystemsFlagsзначение атрибута равным 0x10 (базовая схема). Дополнительные сведения содержатся в разделе «Как определить, является ли атрибут атрибутов основной схемы» и «как определитьsearchFlagsзначение атрибута в том случае, если используется существующий атрибут"раздел.

Тестирование

Как бы проверить изменения в Active Directory и все расширения схемы, рекомендуется тщательно протестировать изменения атрибутов в лаборатории, отражающую рабочем лесу. Проверка помогает гарантирует, что она отлично работает и обнаружения проблем.

Элемент управления проверки доступа

После установки Windows Server 2003 SP1, и после Active Directory выполняет проверку доступа на чтение, проверяет секретных атрибутов Active Directory. Если существуют конфиденциальной и READ_PROPERTY разрешений для этих атрибутов, Active Directory также потребуется CONTROL_ACCESS разрешения для атрибутов и их наборы свойств.

Примечание.Параметр разрешения Полный доступ включает разрешение CONTROL_ACCESS.

Служба каталогов Active Directory выполняет проверку доступа на чтение для объекта, в следующих случаях:
  • При оценке ли объект совпадает с фильтром поиска.
  • При возвращении атрибуты объекта, соответствующие фильтру поиска.
По умолчанию только администраторы имеют разрешения CONTROL_ACCESS ко всем объектам. Таким образом только администраторам просматривать конфиденциальные атрибуты. Администратор может делегировать эти разрешения к любому пользователю или группе.

Универсальные и связанных с объектами управления доступом

Каждый объект в Active Directory имеет доступ к информации управления, связанный с ним. Эта информация называется дескриптора безопасности. Дескриптор безопасности определяет, какой тип доступа, которая доступна для пользователей и групп. Дескриптор безопасности создается автоматически при создании объекта.

Набор элементов разрешений в дескрипторе безопасности называется избирательной таблице управления доступом (DACL). Каждый элемент разрешения в списке DACL называется запись управления доступом (ACE).

Можно предоставить разрешения на объект или предоставлять разрешения CONTROL_ACCESS секретных атрибутов с помощью универсальных или связанных с объектами управления доступом для объекта. Можно предоставить разрешения отметки их явным образом, для объекта или с помощью наследования. Наследование означает, что установить запись управления доступом наследуется на контейнер, который находится выше в иерархии контейнеров.

Универсальные и связанных с объектами управления доступом по сути, совпадают. То, что задает их друг от друга — это степень контроля, которые обеспечивают записи управления доступом через наследование, так и на доступ к объекту. Универсальные средства управления доступом ко ко всему объекту. Элементы управления доступом для конкретного объекта предоставляют больший контроль над какие объекты наследуют записи управления доступом. При использовании записи управления доступом для конкретного объекта, можно указать атрибут или набор свойств объекта, который будет наследовать запись управления доступом.

При использовании функции секретных атрибутов CONTROL_ACCESS разрешение предоставляется путем присвоения универсального элемента управления доступом пользователя. Если CONTROL_ACCESS разрешено, назначив записи управления доступом для конкретного объекта, пользователь будет достаточно CONTROL_ACCESS разрешение на атрибут конфиденциальным.

The following permissions are granted when you use a generic access control entry:
  • All Extended Rights
  • Allowed to Authenticate
  • Смена пароля
  • Как получить
  • Сброс пароля
  • Отправить как
Permissions that are granted when you use a generic access control entry may provide more access than is desired over the whole object. If this is a concern, you can set an object-specific access control entry on the object so that the access control entry applies only to the confidential attribute. When you use object-specific access control entries, you can control the property or the property set to which the access control entry applies.

The user interface in Windows Server 2003 does not expose Control_Access permissions. You can use the Dsacls.exe tool to set Control_Access permissions by assigning a generic access control entry. However, you cannot use this tool to assign an object-specific access control entry. The only tool that can set Control_Access permissions by assigning an object-specific access control entry is the Ldp.exe tool.

Примечание.An in-depth discussion of access control is beyond the scope of this article. For more information about access control, visit the following Microsoft Web sites:
http://msdn.microsoft.com/en-us/library/aa374860(VS.85).aspx
http://technet.microsoft.com/en-us/library/cc749433.aspx

How to use inheritance

In a large domain, it is not practical to manually assign control access to a user or to a group for every object that has a confidential attribute. The solution is to use inheritance to set an inheritable access control entry that is higher in the container hierarchy. This access control entry applies to all child objects of that container.

By default, inheritance is enabled for all organizational units (OU) and for all user accounts, except for the built-in administrator account. If you create user accounts that have inheritance disabled or if you create administrative accounts by copying the built-in administrator account, you must enable inheritance for these accounts. Otherwise, the inheritance model does not apply to these accounts.

How to create a confidential attribute

  1. Determine what attribute to mark as confidential, or add an attribute that you want to make confidential.
  2. Grant the appropriate users Control_Access permissions so the users can view the attribute data.
Tools such as the Ldp.exe tool and the Adsiedit.msc tool can be used to create a confidential attribute. .ldf files are typically used to extend the schema. These files can also be used to mark an attribute as confidential. The files that you create for an implementation should be tuned during the testing phase so that you know exactly what you are adding to the schema when you roll out to production. .ldf files help prevent errors.

The following sample .ldf files can be used to do the following:
  • Add an attribute to the schema
  • Mark the attribute as confidential
  • Добавьте атрибут к классу пользователя
Примечание.Прежде чем использовать файлы .ldf, убедитесь, что ознакомиться в разделах "Идентификаторы объекта" и "синтаксис атрибутов" важные сведения о добавлении объектов и атрибутов схемы.

Файлы примеров .ldf

Приведенный ниже код добавляет атрибут к схеме и затем помечается атрибутом как конфиденциальные.
dn: CN=ConfidentialAttribute-LDF,CN=Schema,Cn=Configuration,DC=domain,DC=com
changetype: add
objectClass: attributeSchema
lDAPDisplayName: ConfidentialAttribute
adminDescription: This attribute stores user's confidential data
attributeID: 1.2.840.113556.1.xxxx.xxxx.1.x
attributeSyntax: 2.5.5.12
oMSyntax: 64
isSingleValued: TRUE
showInAdvancedViewOnly: TRUE
searchFlags: 128

dn:
changeType: modify
add: schemaupdatenow
schemaupdatenow: 1
-
Следующий код добавляет новый атрибут класса пользователя.
dn: CN=User,CN=Schema,CN=Configuration,DC=domain,DC=com
changetype: modify
add: mayContain
mayContain: ConfidentialAttribute

dn:
changeType: modify
add: schemaupdatenow
schemaupdatenow: 1
-

Как не имеющий прав администратора пользователям просматривать данные атрибута

Примечание.Следующие процедуры требуют использования средства LDP.exe, поставляемой с Windows Server 2003 R2 Active Directory приложений Mode (ADAM). Другие версии средство LDP.exe не удается задать разрешения.

Как вручную установить Control_Access разрешения для учетной записи пользователя

  1. Откройте средство LDP.exe, в которое входит в состав Windows Server 2003 R2 ADAM.
  2. Подключения и привязки к каталогу.
  3. Выберите учетную запись пользователя, щелкните правой кнопкой мыши учетную запись, нажмите кнопкувкладка «Дополнительно».затем –Дескриптор безопасностии выберите командуOk..
  4. В диалоговом окнеDACLВыберитеДобавление элементов управления ДОСТУПОМ.
  5. В диалоговом окнеДоверенное лицополе, введите имя группы или пользователя, к которому требуется предоставить разрешения.
  6. В диалоговом окнеControl Accessbox, verify the changes that you made in step 5.

How to use inheritance to assign Control_Access permissions

To use inheritance, create an access control entry that grants Control_Access permissions to the desired users or groups that are higher in the container hierarchy than the objects that have confidential attributes. You can set this access control entry at the domain level or at any point in the container hierarchy that works well for an enterprise. The child objects that have confidential attributes must have inheritance enabled.

To assign Control_Access permissions, follow these steps:
  1. Open the Ldp.exe file that is included in Windows Server 2003 R2 ADAM.
  2. Connect and bind to a directory.
  3. Select an OU or a container that is the higher in the container hierarchy than the objects that have confidential attributes, right-click the OU or the container, clickвкладка «Дополнительно».затем –Security Descriptorи выберите командуOk..
  4. В диалоговом окнеDACLbox, clickAdd ACE.
  5. В диалоговом окнеTrusteebox, type the group name or the user name to which you want to grant permissions.
  6. В диалоговом окнеControl Accessbox, verify the changes that you made in step 5.
  7. В диалоговом окнеТип объекта.box, click the confidential attribute that you added.
  8. Make sure that inheritance is enabled on the target objects.

How to determine the systemFlags attribute value when you use an existing attribute

If you use an existing object, you must verify what the currentsearchFlagsattribute value is. If you add an object, you can define the value when you add the object. There are many ways to obtain thesearchFlagsЗначение атрибута. Use the method that works best for you.

To use the Ldp.exe tool to obtain thesearchFlagsattribute value, follow these steps:
  1. затем –START ::затем –ВыполнитьTYPE :LDPи выберите командуOk..
  2. затем –Интернету.и выберите командуПривязка.
  3. Bind as the Administrator of the root domain, or bind as an account that is an Enterprise Administrator.
  4. затем –Представление:и выберите командуДерево.
  5. затем –CN=schema,cn=configuration,dc=rootdomainи выберите командуOk..
  6. В левой панели разверните узелCN=schema,cn=configuration,dc=rootdomain.
  7. Locate the domain name of the attribute that you want to mark as confidential, and then expand it.
  8. In the list of attributes that are populated for the object, findsearchFlagsto determine the currentsearchFlagsattribute value for that object.
Примечание.To determine the newsearchFlagsattribute value, use the following formula:
128 +currentsearchFlagsattribute value=СОЗДАТЬ.searchFlagsattribute value

How to determine whether an attribute is a base schema attribute

To determine whether an attribute is a base schema attribute, use the Ldp.exe tool to examine thesystemFlagsЗначение атрибута.

LDP output of Employee-ID – systemFlags: 0x10 = (FLAG_SCHEMA_BASE_OBJECT)

In the following sample Ldp.exe output, Ldp.exe identifies thesystemFlagsattribute value as 0x10 and as a base schema attribute. Therefore, you cannot mark this attribute as confidential.
>> Dn: CN=Employee-ID,CN=Schema,CN=Configuration,DC=domain,DC=com
	2> objectClass: top; attributeSchema; 
	1> cn: Employee-ID; 
	1> distinguishedName: CN=Employee-ID,CN=Schema,CN=Configuration,DC=domain,DC=com; 
	1> instanceType: 0x4 = ( IT_WRITE ); 
	1> whenCreated: 08/05/2005 14:58:58 Central Standard Time; 
	1> whenChanged: 08/05/2005 14:58:58 Central Standard Time; 
	1> uSNCreated: 220; 
	1> attributeID: 1.2.840.113556.1.4.35; 
	1> attributeSyntax: 2.5.5.12 = ( SYNTAX_UNICODE_TYPE ); 
	1> isSingleValued: TRUE; 
	1> rangeLower: 0; 
	1> rangeUpper: 16; 
	1> uSNChanged: 220; 
	1> showInAdvancedViewOnly: TRUE; 
	1> adminDisplayName: Employee-ID; 
	1> adminDescription: Employee-ID; 
	1> oMSyntax: 64 = ( OM_S_UNICODE_STRING ); 
	1> searchFlags: 0x0 = (  ); 
	1> lDAPDisplayName: employeeID; 
	1> name: Employee-ID; 
	1> objectGUID: 64fb3ed1-338f-466e-a879-595bd3940ab7; 
	1> schemaIDGUID: bf967962-0de6-11d0-a285-00aa003049e2; 
	1> systemOnly: FALSE; 
	1> systemFlags: 0x10 = ( FLAG_SCHEMA_BASE_OBJECT ); 
	1> objectCategory: CN=Attribute-Schema,CN=Schema,CN=Configuration,DC=domain,DC=com;

LDP output of Employee-Number systemFlags: 0x0 = ( )

In the following sample Ldp.exe output, Ldp.exe identifies thesystemFlagsattribute value as 0. This attribute can be marked as confidential.
>> Dn: CN=Employee-Number,CN=Schema,CN=Configuration,DC=warrenw,DC=com
	2> objectClass: top; attributeSchema; 
	1> cn: Employee-Number; 
	1> distinguishedName: CN=Employee-Number,CN=Schema,CN=Configuration,DC=warrenw,DC=com; 
	1> instanceType: 0x4 = ( IT_WRITE ); 
	1> whenCreated: 08/05/2005 14:58:58 Central Standard Time; 
	1> whenChanged: 08/05/2005 14:58:58 Central Standard Time; 
	1> uSNCreated: 221; 
	1> attributeID: 1.2.840.113556.1.2.610; 
	1> attributeSyntax: 2.5.5.12 = ( SYNTAX_UNICODE_TYPE ); 
	1> isSingleValued: TRUE; 
	1> rangeLower: 1; 
	1> rangeUpper: 512; 
	1> mAPIID: 35943; 
	1> uSNChanged: 221; 
	1> showInAdvancedViewOnly: TRUE; 
	1> adminDisplayName: Employee-Number; 
	1> adminDescription: Employee-Number; 
	1> oMSyntax: 64 = ( OM_S_UNICODE_STRING ); 
	1> searchFlags: 0x0 = (  ); 
	1> lDAPDisplayName: employeeNumber; 
	1> name: Employee-Number; 
	1> objectGUID: 2446d04d-b8b6-46c7-abbf-4d8e7e1bb6ec; 
	1> schemaIDGUID: a8df73ef-c5ea-11d1-bbcb-0080c76670c0; 
	1> systemOnly: FALSE; 
	1> systemFlags: 0x0 = (  ); 
	1> objectCategory: CN=Attribute-Schema,CN=Schema,CN=Configuration,DC=warrenw,DC=com; 
-----------

Object identifiers

When you add an attribute or a class object to the schema, one of the required attributes is the object identifier (also known as OID). Object identifiers are used to uniquely define object classes and attributes. Make sure that your company obtains a unique object identifier to identify its attribute. Tools that generate object identifiers, such as the Oidgen.exe tool, are not supported. To obtain an object identifier from Microsoft, visit the following Microsoft Web site:
http://msdn2.microsoft.com/en-us/library/ms677620.aspx

Attribute syntax

надписьюattributeSyntaxattribute is also required to add new objects to the schema. This attribute defines the storage representation, byte ordering, and matching rules for comparisons of property types. The syntax defines whether the attribute value must be a string, a number, or a unit of time. Each attribute of every object is associated with exactly one syntax. Make sure that you select the correct attribute syntax for the new attribute. This is especially important if you synchronize a Lightweight Directory Access Protocol (LDAP) directory with another LDAP directory. After the attribute is added to the schema, its attribute syntax cannot be changed.

Для получения дополнительных сведений оattributeSyntaxатрибут, посетите следующий веб-узел корпорации Майкрософт:
hhttp://msdn.microsoft.com/en-us/library/ms675236(VS.85).aspx
For more information about values in thesearchFlagsattribute, visit the following Microsoft Web site, and then search for "Effects of Indexing on Search Behavior":
http://technet2.microsoft.com/WindowsServer/en/library/8196d68e-776a-4bbc-99a6-d8c19f36ded41033.mspx?mfr=true

Свойства

Код статьи: 922836 - Последний отзыв: 27 ноября 2010 г. - Revision: 2.0
Информация в данной статье относится к следующим продуктам.
  • Microsoft Windows Server 2003 Service Pack 1 на следующих платформах
    • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
    • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
    • Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
  • Microsoft Windows Server 2003, Enterprise x64 Edition
  • Microsoft Windows Server 2003, Standard x64 Edition
Ключевые слова: 
kbhowto kbinfo kbmt KB922836 KbMtru
Переведено с помощью машинного перевода
ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.
Эта статья на английском языке:922836

Отправить отзыв

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com