Настройка поддерживаемых типов ключей
Настройку поддерживаемых типов ключей в КриптоПро DSS следует выполнять в два этапа:
1. Настройка поддерживаемой группы ключей в рамках одного мобильного приложения.
2. Отключение возможности использования ключей определенного типа.
Настройка поддерживаемой группы ключей в рамках одного мобильного приложения
Ключи подписи, хранимые различными способами в КриптоПро DSS можно условно разделить на следующие группы:
- разделенные ключи подписи,
- "мобильные", "серверные" и ключи подписи на токене.
Для одного зарегистрированного на сервере набора настроек мобильного приложения (MyDssSystem) допустимо использование только ключей подписи, принадлежащих к одной группе. В случае если требуется в одном мобильном приложении использовать все виды ключей, необходимо зарегистрировать отдельный набор настроек (MyDssSystem) для каждой группы ключей.
Настройки на сервере (Центр Идентификации)
# Получить список зарегистрированных MyDssSystem
Get-DssIdsMobileAppConfiguration
# Получить GUID выбранного мобильного приложения MyDssSystem
$sys = Get-DssIdsMobileAppConfiguration | where { $_.DisplayName -eq "<отображаемое имя (DisplayName)>" }
# Задать значение группы ключей
Set-DssIdsMobileAppConfiguration -SystemId $sys.Id -AuthKeyType <Группа ключей>
Допустимы следующие значения параметра -AuthKeyType:
Cryptokey2- только распределенные ключи,DssSdk- все остальные типы хранения ключей.
Настройки в DSS SDK
Заданное на сервере значение параметра -AuthKeyType будет получено
в параметрах isCryptoKeySdkAuthSupported для разделенных ключей и
isDssSdkAuthSupported для всех остальных типов в политике взаимодействия с сервером (iOS, Android).
В случае если сервер не поддерживает тип аутентификации (описанные выше параметры будут отсутствовать в политике), DSS SDK автоматически установит следуюшие значения:
isCryptoKeySdkAuthSupported- False,isDssSdkAuthSupported- True.
Примечание
Не рекомендуется изменять данную настройку, если уже существуют устройства, привязанные к учетным записям через данный набор настроек мобильного приложения (MyDssSystem). В противном случае потребуется заново привязать данные устройства.
В случае сценария привязки мобильного устройства к учетной записи при помощи
QR-кода получить политику сервера заранее не представляется
возможным, так как адрес сервера будет получен впервые в содержимом указанного QR-кода.
В этом случае тип аутентификации, поддерживаемый сервером для мобильного приложения, выбранного
пользователем или Оператором при генерации QR-кода, может быть
указан в поле auth_key_type в QR-коде (iOS, Android).
В этом случае допустимо указать аналогичный тип аутентификации в поле authKeyType при вызове
метода регистрации Kinit (iOS, Android).
При отсутствии данного поля будет использован тип аутентификации, указанный в QR-коде.
В случае если поле auth_key_type в QR-коде отсутствует, будет использовано
значение по умолчанию dssSdk.
Отключение возможности использования ключей определенного типа
Сервис взаимодействия с SDK позволяет запретить создание ключей с определенным типом хранения. Данная настройка имеет смысл только в связке с заданной группой ключей, так как выключение единственного типа ключа в группе (например, разделенного) повлечет за собой невозможность работы с мобильным приложением.
Настройки на сервере (Сервис взаимодействия с SDK)
Set-DssMdagProperties -DisplayName <Имя экземпляра Сервиса взаимодействия с SDK> -DisableDskKeys <bool> -DisableClientKeys <bool> -DisableServerKeys <bool>
Возможно настроить запрет использования следующих ключей:
DisableDskKeys- разделенные,DisableClientKeys- хранимые в мобильном приложении и на токене,DisableServerKeys- хранимые на сервере.
Настройки в DSS SDK
Заданные на сервере значения параметров-DisableDskKeys,
-DisableClientKeys, -DisableServerKeys будут получены
в параметрах isServerKeysSupported (серверные ключи),
isMobileKeysSupported (мобильные ключи и ключи на токене),
isDskKeysSupported (разделенные ключи)
в политике взаимодействия с Сервисом Подписи (iOS, Android).