Требования к пользовательским сертификатам


Пользовательский сертификат, необходимый для корректной работы «Амиконнекта», должен соответствовать общим требованиям, а также требованиям операционной системы.

Общие требования

Для всех поддерживаемых операционных систем действуют следующие требования:

Стандарт и версия. Поддерживаются сертификаты стандарта X.509 версии 3.

Алгоритм для ключа. Поддерживаются сертификаты с ключами на основе алгоритмов RSA и по ГОСТ Р 34.10‑2012.

Алгоритм подписи. Поддерживаются алгоритмы подписи сертификата, доступные в операционной системе. Для работы с сертификатами «Амиконнект» использует средства ОС.

Срок действия. Сертификат должен быть действителен на текущую дату: срок его действия уже начался и еще не истек.

Цепочка доверия. Сертификат должен успешно проходить проверку цепочки доверия до корневого сертификата. В операционной системе корневой сертификат должен находиться в специальном хранилище для доверенных сертификатов.

Самоподписанные сертификаты. Не поддерживаются.

Закрытый ключ. Сертификат должен иметь связанный с ним закрытый ключ, доступный пользователю.

Если несколько сертификатов соответствуют требованиям, пользователь может выбрать тот, который будет использоваться для подключения.

Windows

Для Windows действуют дополнительные требования:

Хранилище. Сертификат должен находиться в хранилище «Личное» текущего пользователя.

Назначение сертификата (Extended Key Usage, EKU)

Допускаются сертификаты, для которых:

— не указано EKU,

— указано назначение «Проверка подлинности клиента» (Client Authentication, OID 1.3.6.1.5.5.7.3.2),

— указано назначение «Любое назначение» (Any Extended Key Usage, OID 2.5.29.37.0).

macOS

Для macOS действуют дополнительные требования:

Хранилище. Сертификат должен находиться в хранилище «Связка ключей», в связке «Вход» текущего пользователя.

Назначение сертификата (Extended Key Usage, EKU)

Допускаются сертификаты, для которых:

— не указано EKU,

— указано назначение «Проверка подлинности клиента» (Client Authentication, OID 1.3.6.1.5.5.7.3.2).

Linux

Для Linux действуют дополнительные требования:

Хранилище. Сертификат должен находиться в пользовательской базе NSS по пути ~/.pki/nssdb.

Назначение сертификата. EKU не проверяется.

Закрытый ключ. Наличие и доступность закрытого ключа определяются по флагам доверия u,u,u (флаг u означает, что с сертификатом связан закрытый ключ).

SberOS

Для SberOS действуют дополнительные требования:

Хранилище. Сертификат и связанный с ним закрытый ключ должны находиться в хранилище Trusted Platform Module (TPM).

Назначение сертификата. EKU не проверяется.

Метка ключа. Для закрытого ключа используется метка <Значение Common Name сертификата>-vpn-token.