Центр регистрации Aladdin eRA реализует серверные компоненты по протоколам MS‑XCEP[1] и MS‑WSTEP[2]. Реализация данных серверных компонентов обеспечивает выполнение автоматического сценария распространения сертификатов клиентам и устройствам по протоколу MS‑WSTEP.
Сервер политик выпуска сертификатов (CEP‑сервер) и сервер выпуска сертификатов (CES‑сервер), реализуемые Центром регистрации Aladdin eRA в соответствии с протоколами MS‑XCEP и MS‑WSTEP, доступны по URL «https://HOSTNAME/wstep‑service/engine», где «HOSTNAME» – адрес хоста Центра регистрации Aladdin eRA.
Центр регистрации Aladdin eRA в рамках реализации функций CEP‑сервера (при получении запроса на политики «GetPolices») и функций CES‑сервера (при получении запроса на выпуск сертификата «RequestSecurityToken») обеспечивает следующие способы аутентификации пользователей домена, к которому он подключен:
- по имени пользователя и паролю;
- по Kerberos‑билету.
[1] Описание протокола MS-XCEP доступно по ссылке: https://winprotocoldoc.z19.web.core.windows.net/MS-XCEP/%5bMS-XCEP%5d.pdf
[2] Описание протокола MS-WSTEP доступно по ссылке: https://winprotocoldoc.z19.web.core.windows.net/MS-WSTEP/%5bMS-WSTEP%5d.pdf
Обработка запроса на политики «GetPolices»
Центр регистрации Aladdin eRA при получении запроса «GetPolices» в случае успешной аутентификации пользователя, от имени которого был выполнен запрос, возвращает в ответе «GetPoliciesResponse» политику выпуска сертификатов.
Общие параметры возвращаемой политики соответствуют таблице ниже (см. Таблица 15).
Таблица 15 – Общие параметры возвращаемой политики
Параметр политики | Значение | Примечание |
|---|---|---|
policyID | 5817949c‑a7cd‑46ec‑90ef‑7782cd200b15 | Уникальный идентификатор политики |
policyFriendlyName | eCA enrollment policy | Отображаемое имя политики |
nextUpdateHours | 8 | Время в часах, через которое клиент должен запросить обновление политики выпуска сертификатов с CEP‑сервера. Значение «8» указано аналогично значению по умолчанию в MS CS. |
policiesNotChanged | NULL | Параметр, используемый для указания факта изменения политики с момента последнего запроса клиентом. Значение «NULL» указано аналогично значению по умолчанию в MS CS. |
Шаблоны, записываемые в поле «policies» ответа «GetPoliciesResponse», представляют собой шаблоны подключенного Центра сертификации Aladdin eCA, преобразованные в шаблоны по протоколу MS‑XCEP (далее – шаблоны CEP).
При этом в шаблоны CEP преобразовываются только шаблоны Центра сертификации Aladdin eCA одновременно удовлетворяющие следующим условиям:
- которые присутствуют в правилах выпуска Центра регистрации Aladdin eRA для данного пользователя с режимом обработки «Автоматический выпуск»;
- у которых включен алгоритм генерации ключевой пары RSA.
В атрибуты возвращаемых шаблонов CEP записываются значения в соответствии с таблицей ниже (см. Таблица 16):
Таблица 16 – Значения атрибутов шаблонов в сообщении «GetPoliciesResponse»
Атрибут шаблона в сообщении «GetPoliciesResponse» | Примечание |
|---|---|
commonName | Имя шаблона Центра сертификации Aladdin eCA |
policySchema | 3 |
validityPeriodSeconds | Период действия сертификата по шаблону Центра сертификации Aladdin eCA в секундах |
renewalPeriodSeconds | 10 % от периода действия сертификата по шаблону в секундах |
enroll | true |
autoEnroll | true[1] |
minimalKeyLength | Минимальная длина ключа для алгоритма RSA по шаблону Центра сертификации Aladdin eCA |
keySpec | 1 |
keyUsageProperty | NULL |
permissions | NULL |
algorithmOIDReference | NULL |
provider | Microsoft Base Cryptographic Provider v1.0 |
majorRevision | 1 |
minorRevision | 0 |
supersededPolicies | NULL |
privateKeyFlags | 0 |
subjectNameFlags | 2181038080[2] |
enrollmentFlags | 0 |
generalFlags | 0 – для типа субъекта шаблона «Пользователь», 64 – для типа субъекта шаблона «Устройство», 128 ‑ для типа субъекта шаблона «Корневой ЦС», 2048 – для типа субъекта шаблона «Подчиненный ЦС» |
hashAlgorithmOIDReference | NULL |
rARequirements | NULL |
keyArchivalAttributes | NULL |
extensions | Строка вида «Имя_шаблона@ID_шаблона»[3] |
Параметры издателя сертификатов в возвращаемой политике (блок «cAs») соответствуют таблице ниже (см. Таблица 17).
Таблица 17 – Параметры издателя сертификатов в возвращаемой политике
Параметр издателя | Записываемое значение | Примечание |
|---|---|---|
clientAuthentication | 2 | Данное значение указывается, если пользователь аутентифицируется на CEP‑сервере по Kerberos‑билету. |
4 | Данное значение указывается, если пользователь аутентифицируется на CEP‑сервере по имени пользователя и паролю | |
uri | Адрес CES‑сервера | URI CES‑сервера. На данный адрес будут направляться запросы пользователя на выпуск сертификата (запрос «RequestSecurityToken» по протоколу MS‑WSTEP). Адреса СEP‑ и CES‑серверов, реализуемых Центром регистрации Aladdin eRA, совпадают. |
priority | 1 | Приоритет издателя. Прочие значения не применимы для политики, формируемой Центром регистрации Aladdin eRA. |
renewalOnly | False | Значение указывает, что издатель может обрабатывать не только запросы на продление существующих сертификатов, но и запросы на выпуск новых сертификатов. |
certificate | Сертификат активного центра сертификации Центра сертификации Aladdin eCA | Сертификат в Base64. |
enrollPermission | True | Значение указывает, что пользователь может выполнять запросы к данному издателю. |
[1] Указанное значение обозначает, что шаблон может использоваться при автоэнроллменте.
[2] Указанное значение обозначает, что от пользователя при создании запроса на сертификат не должно требоваться указание значений для SDN и SAN.
[3] Данное значение будет записываться в расширения создаваемого на клиенте запроса на сертификат и будет использоваться в рамках реализации функций CES-севера.
Обработка запроса на выпуск сертификата «RequestSecurityToken»
Центр регистрации Aladdin eRA при получении запроса на выпуск сертификата «RequestSecurityToken» в случае успешной аутентификации выполняет следующие действия:
- создаёт от имени пользователя новую заявку на сертификат на основании запроса из поля «BinarySecurityToken» по шаблону, указанному в данном запросе на сертификат.
Для заявок, создаваемых в ходе обработки запроса «RequestSecurityToken», указан сценарий «WSTEP».
При создании заявки и последующем выпуске сертификата в Центре сертификации Aladdin eCA атрибуты запроса на сертификат автоматически переопределяются атрибутами субъекта из Центра сертификации Aladdin eCA, требуемыми по шаблону.
Для поля, требуемого по шаблону, используются все имеющиеся у субъекта в соответствующем атрибуте значения.
В случае ошибки создания заявки Центра регистрации Aladdin eRA возвращает сообщение об ошибке с кодом «RequestFailed»;
- в случае успешного выпуска сертификата по созданной заявке Центр регистрации Aladdin eRA генерирует и отправляет пользователю ответное сообщение «RequestSecurityTokenResponse», записывая в поле «RequestedSecurityToken» выпущенный по заявке сертификат, а также цепочку данного сертификата в поле «BinarySecurityToken».
Если после создания заявки сертификат по ней не был успешно выпушен, Центр регистрации Aladdin eCA возвращает сообщение об ошибке с кодом «RequestFailed».
- Центр регистрации Aladdin eRA поддерживает перевыпуск сертификатов с новым ключом и с тем же ключом, на котором был выпущен текущий сертификат.