Управление утверждениями

Для работы с утверждениями (claims) используется группа подкоманд claim.

Общие сведения

Утверждение (claim) — атрибут из профиля пользователя/компьютера в каталоге, который транслируется в билеты, выдаваемые центром распространения ключей Kerberos (KDC).

В билете Kerberos атрибуты пользователя/компьютера, которые настроены и используются в качестве утверждений, добавляются в отдельный раздел, содержащий информацию о пользователе/компьютере и его привилегиях (Privilege Attribute Certificate, PAC).

Список атрибутов для добавления в виде утверждений задается в отдельном контейнере в каталоге — CN=Claim Types,CN=Claims Configuration,CN=Services,CN=Configuration,DC=domain,DC=name.

На основании значений этих атрибутов может производиться расширенная аутентификация/авторизация в приложениях, поддерживающих утверждения в билетах.

Также в домене могут быть настроены правила доступа к ресурсам и правила аутентификации, основанные на утверждениях (см. подробнее о политиках аутентификации и работе с ними в разделе «Управление политиками аутентификации»).

В Эллес реализована базовая поддержка утверждений в виде трансляции настроенных атрибутов в билеты, выдаваемые KDC, а также возможность задания ограниченного набора значений для утверждений.

Получение списка типов утверждений

Формат вызова:

samba-tool domain claim claim-type list -H <URL> [options]

Подкоманда выводит простой список типов утверждений, доступных в контейнере CN=Claim Types, CN=Claims Configuration, CN=Services, либо (при передаче параметра --json) подробную информацию по каждому из настроенных типов утверждений в формате JSON.

Параметры

Параметры вызова:

  • -H URL|--URL=URL — адрес сервера LDAP; может содержать указание на протокол, имя хоста и номер порта;

  • --json — вывод информации о типах утверждений в формате JSON.

Примеры

Пример получения списка типов утверждений в домене:

samba-tool domain claim claim-type list \
   --json

Получение информации о типе утверждений

Формат вызова:

samba-tool domain claim claim-type view -H <URL> [options]

Подкоманда выводит атрибуты типа утверждений с указанным отображаемым именем (--name) в формате JSON.

Параметры

Параметры вызова:

  • -H URL|--URL=URL — адрес сервера LDAP; может содержать указание на протокол, имя хоста и номер порта;

  • --name=NAME (обязательный) — отображаемое имя типа утверждений, информацию о котором требуется вывести.

Примеры

Пример получения информации о типе утверждений с отображаемым именем department:

samba-tool domain claim claim-type view \
   --name=cn
{
  "Enabled": true,
  "cn": "ad://ext/cn:26f6a0f2915d7299",
  "description": "Common-Name",
  "displayName": "cn",
  "distinguishedName": "CN=ad://ext/cn:26f6a0f2915d7299,CN=Claim Types,CN=Claims Configuration,CN=Services,CN=Configuration,DC=samdom,DC=example,DC=com",
  "dn": "CN=ad://ext/cn:26f6a0f2915d7299,CN=Claim Types,CN=Claims Configuration,CN=Services,CN=Configuration,DC=samdom,DC=example,DC=com",
  "instanceType": 4,
  "msDS-ClaimAttributeSource": "CN=Common-Name,CN=Schema,CN=Configuration,DC=samdom,DC=example,DC=com",
  "msDS-ClaimIsSingleValued": true,
  "msDS-ClaimSourceType": "AD",
  "msDS-ClaimTypeAppliesToClass": [
    "CN=User,CN=Schema,CN=Configuration,DC=samdom,DC=example,DC=com",
    "CN=Computer,CN=Schema,CN=Configuration,DC=samdom,DC=example,DC=com"
  ],
  "msDS-ClaimValueType": 3,
  "name": "ad://ext/cn:26f6a0f2915d7299",
  "objectCategory": "CN=ms-DS-Claim-Type,CN=Schema,CN=Configuration,DC=samdom,DC=example,DC=com",
  "objectClass": [
    "top",
    "msDS-ClaimTypePropertyBase",
    "msDS-ClaimType"
  ],
  "objectGUID": "5c9f991e-ce10-437c-ad06-b6b58559195b"
}

Создание типа утверждений

Формат вызова:

samba-tool domain claim claim-type create -H <URL> [options]

Подкоманда создает в справочнике Claim Types в каталоге новый тип утверждений на основе указанного атрибута (--attribute) для указанного класса объектов (--class) с переданными дополнительными атрибутами.

Параметры

Параметры вызова:

  • -H URL|--URL=URL — адрес сервера LDAP; может содержать указание на протокол, имя хоста и номер порта;

  • --attribute=ATTRIBUTE_NAME (обязательный) — атрибут профиля пользователя или компьютера, для которого создается тип утверждений;

  • --class=CLASS_NAMES (обязательный) — класс или классы объектов, к которым применим тип утверждений (например: --class=computer, --class=user);

  • --name=NAME — отображаемое имя для типа утверждений; если не задано, в качестве отображаемого имени используется имя атрибута;

    Для одного и того же атрибута может быть создано несколько типов утверждений с разными отображаемыми именами.
  • --description=DESCRIPTION — описание для типа утверждений; если не указано, используется описание из атрибута;

  • доступность типа утверждений для использования — одно из значений:

    • --disable — тип утверждений недоступен для использования;

    • --enable — тип утверждений доступен для использования (по умолчанию);

  • защита типа утверждений от удаления — одно из значений:

    • --protect — запрет на удаление типа утверждений;

    • --unprotect — снятие запрета на удаление типа утверждений;

  • ограничение списка возможных значений — одно из значений:

    • --restrict-values — ограничение списка возможных значений для типа утверждений списком значений из параметра --suggested-values;

    • --unrestrict-values — разрешение на использование для типа утверждений значений вне списка, заданного в параметре --suggested-values;

  • --suggested-values — возможные значения, которые будут предлагаться для выбора пользователю при использовании данного типа утверждений; пример задания значения: --suggested-values '[{"ValueDisplayName":"Full-Time","ValueDescription":"Full-time employee","Value":"FTE"}]'.

Примеры

Пример создания типа утверждений на основе атрибута employeetype:

samba-tool domain claim claim-type create \
   --attribute=employeeType \
   --name='Employee type' \
   --description='Employment type (full-time, intern, etc.)' \
   --class=user \
   --suggested-values '[{"ValueDisplayName":"Full-Time","ValueDescription":"Full-time employee","Value":"FTE"}]'

Изменение типа утверждений

Формат вызова:

samba-tool domain claim claim-type modify -H <URL> [options]

Подкоманда изменяет атрибуты типа утверждений с указанным отображаемым именем (--name) в соответствии с переданными значениями.

Параметры

Параметры вызова:

  • -H URL|--URL=URL — адрес сервера LDAP; может содержать указание на протокол, имя хоста и номер порта;

  • --name=NAME (обязательный) — отображаемое имя типа утверждений, значения атрибутов которого требуется изменить;

  • --class=CLASS_NAMES — класс или классы объектов, к которым применим тип утверждений (например: --class=computer, --class=user);

  • --description=DESCRIPTION — описание для типа утверждений;

  • доступность типа утверждений для использования — одно из значений:

    • --disable — тип утверждений недоступен для использования;

    • --enable — тип утверждений доступен для использования (по умолчанию);

  • защита типа утверждений от удаления — одно из значений:

    • --protect — запрет на удаление типа утверждений;

    • --unprotect — снятие запрета на удаление типа утверждений;

  • ограничение списка возможных значений — одно из значений:

    • --restrict-values — ограничение списка возможных значений для типа утверждений списком значений из параметра --suggested-values;

    • --unrestrict-values — разрешение на использование для типа утверждений значений вне списка, заданного в параметре --suggested-values;

  • --suggested-values — возможные значения, которые будут предлагаться для выбора пользователю при использовании данного типа утверждений; пример задания значения:

    --suggested-values '[{"ValueDisplayName":"Full-Time","ValueDescription":"Full-time employee","Value":"FTE"}]'

Примеры

Пример изменения описания типа утверждений:

samba-tool domain claim claim-type modify \
   --name='Employee type' \
   --description='Employment type (part-time, full-time, intern, etc.)'

Удаление типа утверждений

Формат вызова:

samba-tool domain claim claim-type delete -H <URL> [options]

Подкоманда удаляет тип утверждений с указанным отображаемым именем (--name), если для него не установлен атрибут --protect. Если при вызове команды передается параметр --force, выполняется принудительное удаление типа утверждений.

Параметры

Параметры вызова:

  • -H URL|--URL=URL — адрес сервера LDAP; может содержать указание на протокол, имя хоста и номер порта;

  • --name=NAME (обязательный) — отображаемое имя типа утверждений, который требуется удалить;

  • --force — принудительное удаление типа утверждений.

Примеры

Пример удаления типа утверждений с отображаемым именем department:

samba-tool domain claim claim-type delete \
   --name=department

Получение списка типов значений утверждений

Формат вызова:

samba-tool domain claim value-type list -H <URL> [options]

Подкоманда выводит простой список типов значений, доступных в контейнере CN=Value Types, CN=Claims Configuration, CN=Services, либо (при передаче параметра --json) подробную информацию по каждому из настроенных типов значений в формате JSON.

Типы значений группируются по отображаемому имени.

Параметры

Параметры вызова:

  • -H URL|--URL=URL — адрес сервера LDAP; может содержать указание на протокол, имя хоста и номер порта;

  • --json — вывод информации о типах значений в формате JSON.

Примеры

Пример получения списка типов значений в домене в формате JSON:

samba-tool domain claim value-type list \
   --json
...
Yes/No
Text
Ordered List
Date Time
Multi-valued Text
Number
Multi-valued Choice
Single-valued Choice

Получение информации о типе значений утверждений

Формат вызова:

samba-tool domain claim claim-type view -H <URL> [options]

Подкоманда выводит атрибуты типа значений с указанным отображаемым именем (--name) в формате JSON.

Параметры

Параметры вызова:

  • -H URL|--URL=URL — адрес сервера LDAP; может содержать указание на протокол, имя хоста и номер порта;

  • --name=NAME (обязательный) — отображаемое имя типа утверждений, информацию о котором требуется вывести.

Примеры

Пример получения информации о типе значений с отображаемым именем Single-valued Choice:

samba-tool domain claim value-type view \
   --name='Single-valued Choice'