Класс Auth
Метод scanAndAddQR
Позволяет отсканировать QR-код и добавить данные, полученные из него.
public func scanAndAddQR() async throws -> (type: String, url: String?, qrData: DSSQrData?)
Возвращаемые параметры:
Параметр | Тип | Описание |
---|---|---|
type | String | Назначение QR-кода. Может принимать значения kinit или verification |
url | String | Адрес сервиса взаимодействия с мобильным приложением |
qrData | DSSQrData | Данные из QR-кода |
Метод normalInit
Анонимная регистрация пользователя на сервере (в сценарии с уникальным идентификатором). Создает неподтвержденное мобильное устройство (без привязки) в КриптоПро Ключ с получением вектора аутентификации к нему.
public func normalInit(registerInfo: DSSRegisterInfo,
keyProtectionType: DSSProtectionType, authKeyType: DSSAuthKeyType,
password: String? = nil) async throws -> String
Параметры:
Параметр | Тип | Описание |
---|---|---|
registerInfo | DSSRegisterInfo | Сведения о регистрируемом устройстве пользователя |
keyProtectionType | DSSProtectionType | Способ защиты вектора аутентификации |
authKeyType | DSSAuthKeyType | Режим использования SDK в зависимости от поддерживаемых ключей аутентификации. Поддерживаемый тип ключей аутентификации можно получить в вызове метода getParamDSS в параметрах Политика взаимодействия с сервером isCryptoKeySdkAuthSupported, isDssSdkAuthSupported. |
password | string? | ПИН-код для доступа к вектору аутентификации |
Возвращаемые значения:
- device.kid - Идентификатор набора ключей на устройстве пользователя.
Метод kinit
Создает неподтвержденное мобильное устройство (без привязки) в КриптоПро Ключ с получением начального вектора аутентификации к нему с использованием QR-кода.
public func kInit(
registerInfo: DSSRegisterInfo,
keyProtectionType: DSSProtectionType, activationCode: String? = nil,
silentPassword: String? = nil, authKeyType: DSSAuthKeyType?) async throws -> String
Параметры:
Параметр | Тип | Описание |
---|---|---|
registerInfo | DSSRegisterInfo | Сведения о регистрируемом устройстве пользователя |
keyProtectionType | DSSProtectionType | Способ защиты вектора аутентификации |
silentPassword | string | ПИН-код для доступа к вектору аутентификации (только для работы в silent-режиме) |
activationCode | string | Код активации (опциональный параметр) |
Возвращаемые значения:
- device.kid - Идентификатор набора ключей на устройстве пользователя.
Метод verifyByCert
Подтверждение привязки устройства к учетной записи при помощи сертификата. Метод требует доступа к ключу подписи соответствующего сертификата на внешнем носителе.
public func verifyByCert(kid: String, cid: String,
pin: String?, silent: Bool = false) async throws
Параметры:
Параметр | Тип | Описание |
---|---|---|
kid | String | Идентификатор набора ключей пользователя |
cid | String | Идентификатор сертификата |
pin | String? | ПИН-код на ключевой контейнер (если сертификат хранится локально) либо на внешний носитель для доступа к ключу. Параметр используется только с режимом silent |
silent | Bool | Флаг для скрытия/отображения диалоговых окон SDK. Используется только для создания усиленной неквалифицированной электронной подписи (silent mode). Не используется по умолчанию |
Метод addNewDevice
Инициализирует новое устройство пользователя.
public func addNewDevice(
dssUser: DSSUser, registerInfo: DSSRegisterInfo,
keyProtectionType: DSSProtectionType, uid: String, password: String? = nil) async throws -> String
Параметры:
Параметр | Тип | Описание |
---|---|---|
dssUser | DSSUser | Сведения о пользователе |
registerInfo | DSSRegisterInfo | Сведения о регистрируемом устройстве пользователя |
keyProtectionType | DSSProtectionType | Способ защиты вектора аутентификации |
password | string | ПИН-код для доступа к вектору аутентификации |
uid | String | Идентификатор пользователя КриптоПро Ключ, к которому будет привязано мобильное устройство. |
Возвращаемые значения:
- device.kid - Идентификатор набора ключей на устройстве пользователя.
Метод confirm
Подтверждает установку векторов аутентификации. Данный метод всегда необходимо вызывать после выполнения регистрации нового неподтвержденного мобильного устройства в КриптоПро Ключ. Данный метод может быть вызван только для векторов аутентификации, находящихся в состоянии Created.
public func confirm(kid: String) async throws
Параметры:
Параметр | Тип | Описание |
---|---|---|
kid | String | Идентификатор набора ключей пользователя |
Метод verifyDevice
Подтверждает привязку мобильного устройства к учетной записи пользователя. Данный метод может быть вызван только для векторов аутентификации, находящихся в состоянии NotVerified.
Если для данного мобильного устройства требуется осуществлять подтверждение присоединения с использованием nonce, то в этом случае перед отправкой запроса мобильное приложение должно отсканировать QR-код, содержащий значение nonce.
public func verifyDevice(kid: String, silent: Bool = false) async throws
Параметры:
Параметр | Тип | Описание |
---|---|---|
kid | String | Идентификатор набора ключей пользователя |
silent | Bool | Флаг для скрытия/отображения диалоговых окон SDK. Используется только для создания усиленной неквалифицированной электронной подписи (silent mode). Не используется по умолчанию |
Метод setPassAuth
Ввод ПИН-кода на вектор аутентификации.
public func setPassAuth(kid: String, password: String? = nil) async throws
Параметры:
Параметр | Тип | Описание |
---|---|---|
kid | String | Идентификатор набора ключей пользователя |
password | String | ПИН-код для защиты вектора аутентификации. |
Метод changePassAuth
Изменение ПИН-кода на вектор аутентификации.
public func changePassAuth(
kid: String, keyProtectionType: DSSProtectionType,
oldPassword: String? = nil, newPassword: String? = nil) async throws
Параметры:
Параметр | Тип | Описание |
---|---|---|
kid | String | Идентификатор набора ключей пользователя |
keyProtectionType | DSSProtectionType | Способ защиты вектора аутентификации |
oldPassword | string | существующий ПИН-код для доступа к вектору аутентификации (параметр используется только в silent-режиме и для создания усиленной неквалифицированной электронной подписи) |
newPassword | string | новый ПИН-код для доступа к вектору аутентификации (параметр используется только в silent-режиме и для создания усиленной неквалифицированной электронной подписи). |
Метод renameAuth
Переименование устройства пользователя.
public func renameAuth(kid: String, newName: String) throws
Параметры:
Параметр | Тип | Описание |
---|---|---|
kid | String | Идентификатор набора ключей пользователя |
newName | String | Новое отображаемое имя вектора аутентификации |
Метод removeAuth
Удаление устройства пользователя и его вектора аутентификации.
public func removeAuth(
kid: String, deletedKid: String, forceDelete: Bool, onlyLocal: Bool) async throws
Параметры:
Параметр | Тип | Описание |
---|---|---|
kid | String | Идентификатор набора ключей пользователя |
deletedKid | String | Идентификатор удаляемого устройства пользователя |
forceDelete | Bool | Удаление устройства (и ключа аутентификации) вне зависимости ответа сервера |
onlyLocal | Bool | Удаление устройства (и ключа аутентификации) без запроса к серверу |
Метод getAuthList
Получение сведений о зарегистрированных пользователях и их устройствах.
public func getAuthList() throws -> [DSSUser]
Возвращаемые параметры:
Параметр | Тип | Описание |
---|---|---|
dssUser | DSSUser | Сведения о пользователе |
Метод confirmNewDevice
Подтверждение запроса на добавление нового устройства.
public func confirmNewDevice(
kid: String, confirmedKid: String,
silent: Bool = false, approve: Bool) async throws
Параметры:
Параметр | Тип | Описание |
---|---|---|
kid | String | Идентификатор набора ключей пользователя |
confirmedKid | String | Идентификатор устройства пользователя, добавление которого требуется подтвердить |
silent | Bool | Флаг для скрытия/отображения диалоговых окон SDK. Используется только для создания усиленной неквалифицированной электронной подписи (silent mode). Не используется по умолчанию |
approve | Bool | Флаг для одобрения / отклонения добавления нового устройства |
Метод checkStatus
Проверка статуса запроса на добавление нового устройства.
public func checkStatus(kid: String, viewQR: Bool) async throws -> String
Параметры:
Параметр | Тип | Описание |
---|---|---|
kid | String | Идентификатор набора ключей пользователя |
viewQR | Bool | Флаг для отображения QR-кода |
Метод currentProtectionType
Метод возвращает текущий тип защиты учётной записи.
public func currentProtectionType(kid: String) throws -> DSSProtectionType
Параметры:
Параметр | Тип | Описание |
---|---|---|
kid | String | Идентификатор набора ключей пользователя |
Возвращаемые параметры:
Параметр | Тип | Описание |
---|---|---|
keyProtectionType | DSSProtectionType | Способ защиты вектора аутентификации |