Класс Auth
Метод kinit
Создает неподтвержденное мобильное устройство (без привязки) в КриптоПро Ключ с получением начального вектора аутентификации к нему с использованием QR-кода.
fun kinit(
context: Context,
dssUser: DssUser,
registerInfo: RegisterInfo,
keyProtectionType: KeyProtectionType,
activationCode: String?,
password: String?,
sdkDssUserCallback: SdkResultCallback<String>
)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| dssUser | DSSUser | Сведения о пользователе |
| registerInfo | RegisterInfo | Сведения о регистрируемом устройстве пользователя |
| keyProtectionType | KeyProtectionType | Способ защиты вектора аутентификации |
| password | string | ПИН-код для доступа к вектору аутентификации (только в режиме без UI) |
| activationCode | Код активации QR-кода (опциональный параметр) | |
| callback | SdkResultCallback<String> | Интерфейс обратного вызова |
Возвращаемые значения:
- kid - Идентификатор зарегистрированного устройства пользователя.
Примечание
Метод отображает UI для ввода нового пароля для защиты ключей аутентификации.
Метод kinit (suspend)
Создает неподтвержденное мобильное устройство (без привязки) в КриптоПро Ключ с получением начального вектора аутентификации к нему с использованием QR-кода.
suspend fun kinit(
context: Context,
dssUser: DssUser,
registerInfo: RegisterInfo,
keyProtectionType: KeyProtectionType,
activationCode: String?,
password: String?
): String
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| dssUser | DSSUser | Сведения о пользователе |
| registerInfo | RegisterInfo | Сведения о регистрируемом устройстве пользователя |
| keyProtectionType | KeyProtectionType | Способ защиты вектора аутентификации |
| password | string | ПИН-код для доступа к вектору аутентификации (только в режиме без UI) |
| activationCode | Код активации QR-кода (опциональный параметр) | |
| callback | SdkResultCallback<String> | Интерфейс обратного вызова |
Возвращаемые значения:
- kid - Идентификатор зарегистрированного устройства пользователя.
Примечание
Метод отображает UI для ввода нового пароля для защиты ключей аутентификации.
Метод init
Анонимная регистрация пользователя на сервере (в сценарии с уникальным идентификатором). Создает неподтвержденное мобильное устройство (без привязки) в КриптоПро Ключ с получением вектора аутентификации к нему.
fun init(
context: Context,
dssUser: DssUser,
registerInfo: RegisterInfo,
keyProtectionType: KeyProtectionType,
password: String?,
sdkDssUserCallback: SdkResultCallback<String>
)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| dssUser | DSSUser | Сведения о пользователе |
| registerInfo | RegisterInfo | Сведения о регистрируемом устройстве пользователя |
| keyProtectionType | ProtectionType | Способ защиты вектора аутентификации |
| password | string | ПИН-код для доступа к вектору аутентификации (только в режиме без UI) |
| callback | SdkResultCallback<String> | Интерфейс обратного вызова |
Возвращаемые значения:
- kid - Идентификатор зарегистрированного устройства пользователя.
Примечание
Метод отображает UI для ввода нового пароля для защиты ключей аутентификации.
Метод init (suspend)
Анонимная регистрация пользователя на сервере (в сценарии с уникальным идентификатором). Создает неподтвержденное мобильное устройство (без привязки) в КриптоПро Ключ с получением вектора аутентификации к нему.
suspend fun init(
context: Context,
dssUser: DssUser,
registerInfo: RegisterInfo,
keyProtectionType: KeyProtectionType,
password: String?
): String
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| dssUser | DSSUser | Сведения о пользователе |
| registerInfo | RegisterInfo | Сведения о регистрируемом устройстве пользователя |
| keyProtectionType | ProtectionType | Способ защиты вектора аутентификации |
| password | string | ПИН-код для доступа к вектору аутентификации (только в режиме без UI) |
Возвращаемые значения:
- kid - Идентификатор зарегистрированного устройства пользователя.
Примечание
Метод отображает UI для ввода нового пароля для защиты ключей аутентификации.
Метод addNewDevice
Инициализирует новое устройство пользователя.
fun addNewDevice(
context: Context,
dssUser: DssUser,
registerInfo: RegisterInfo,
keyProtectionType: KeyProtectionType,
uid: String,
password: String?,
authCallback: SdkResultCallback<String>
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| dssUser | DSSUser | Сведения о пользователе |
| registerInfo | RegisterInfo | Сведения о регистрируемом устройстве пользователя |
| keyProtectionType | ProtectionType | Способ защиты вектора аутентификации |
| password | string | ПИН-код для доступа к вектору аутентификации (только в режиме без UI) |
| uid | String | Идентификатор пользователя КриптоПро Ключ, к которому будет привязано мобильное устройство. |
| callback | SdkResultCallback<String> | Интерфейс обратного вызова |
Возвращаемые значения:
- kid - Идентификатор зарегистрированного устройства пользователя.
Метод addNewDevice (suspend)
Инициализирует новое устройство пользователя.
suspend fun addNewDevice(
context: Context,
dssUser: DssUser,
registerInfo: RegisterInfo,
keyProtectionType: KeyProtectionType,
uid: String,
password: String?
): String
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| dssUser | DSSUser | Сведения о пользователе |
| registerInfo | RegisterInfo | Сведения о регистрируемом устройстве пользователя |
| keyProtectionType | ProtectionType | Способ защиты вектора аутентификации |
| password | string | ПИН-код для доступа к вектору аутентификации (только в режиме без UI) |
| uid | String | Идентификатор пользователя КриптоПро Ключ, к которому будет привязано мобильное устройство. |
| callback | SdkResultCallback<String> | Интерфейс обратного вызова |
Возвращаемые значения:
- kid - Идентификатор зарегистрированного устройства пользователя.
Метод setPassAuth
Ввод ПИН-кода на вектор аутентификации.
fun setPassAuth(
context: Context,
kid: String,
password: String?,
sdkCallback: SdkResultCallback<Unit>
)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| kid | String | Идентификатор набора ключей пользователя |
| password | String | ПИН-код для защиты вектора аутентификации |
| callback | SdkCallback<Unit> | Интерфейс обратного вызова |
Примечание
Метод отображает UI ввода пароля для доступа к ключам аутентификации.
Метод setPassAuth (suspend)
Ввод ПИН-кода на вектор аутентификации.
suspend fun setPassAuth(context: Context, kid: String, password: String?)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| kid | String | Идентификатор набора ключей пользователя |
| password | String | ПИН-код для защиты вектора аутентификации |
Примечание
Метод отображает UI ввода пароля для доступа к ключам аутентификации.
Метод changePassAuth
Изменение ПИН-кода на вектор аутентификации и/или способа защиты.
fun changePassAuth(
context: Context,
kid: String,
keyProtectionType: KeyProtectionType,
oldPassword: String?,
newPassword: String?,
sdkCallback: SdkResultCallback<Unit>
)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| kid | String | Идентификатор набора ключей пользователя |
| keyProtectionType | KeyProtectionType | Способ защиты вектора аутентификации |
| oldPassword | string | существующий ПИН-код для доступа к вектору аутентификации (параметр используется только в silent-режиме и для создания усиленной неквалифицированной электронной подписи) |
| newPassword | string | новый ПИН-код для доступа к вектору аутентификации (параметр используется только в silent-режиме и для создания усиленной неквалифицированной электронной подписи). |
| callback | SdkCallback<Unit> | Интерфейс обратного вызова |
Метод changePassAuth (suspend)
Изменение ПИН-кода на вектор аутентификации и/или способа защиты.
suspend fun changePassAuth(
context: Context,
kid: String,
keyProtectionType: KeyProtectionType,
oldPassword: String?,
newPassword: String?
)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| kid | String | Идентификатор набора ключей пользователя |
| keyProtectionType | KeyProtectionType | Способ защиты вектора аутентификации |
| oldPassword | string | существующий ПИН-код для доступа к вектору аутентификации (параметр используется только в silent-режиме и для создания усиленной неквалифицированной электронной подписи) |
| newPassword | string | новый ПИН-код для доступа к вектору аутентификации (параметр используется только в silent-режиме и для создания усиленной неквалифицированной электронной подписи). |
Метод renameAuth (для обратной совместимости)
Переименование устройства пользователя.
fun renameAuth(
context: Context,
kid: String,
newName: String,
sdkCallback: SdkResultCallback<Unit>
)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| kid | String | Идентификатор набора ключей пользователя |
| newName | String | Новое отображаемое имя вектора аутентификации |
| callback | SdkCallback<Unit> | Интерфейс обратного вызова |
Метод renameAuth
Переименование устройства пользователя.
fun renameAuth(
context: Context,
kid: String,
newName: String
)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| kid | String | Идентификатор набора ключей пользователя |
| newName | String | Новое отображаемое имя вектора аутентификации |
Метод removeAuth
Удаление устройства пользователя и его вектора аутентификации.
fun removeAuth(
context: Context,
kid: String,
deletedKid: String,
forceDelete: Boolean,
sdkCallback: SdkResultCallback<Unit>
)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| kid | String | Идентификатор набора ключей пользователя |
| deletedKid | String | Идентификатор удаляемого устройства пользователя |
| forceDelete | Bool | Удаление устройства (и ключа аутентификации) вне зависимости ответа сервера |
| callback | SdkCallback<Unit> | Интерфейс обратного вызова |
Примечание
Метод отображает UI ввода пароля для доступа к ключам аутентификации.
Метод removeAuth (suspend)
Удаление устройства пользователя и его вектора аутентификации.
suspend fun removeAuth(
context: Context,
kid: String,
deletedKid: String,
forceDelete: Boolean,
)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| kid | String | Идентификатор набора ключей пользователя |
| deletedKid | String | Идентификатор удаляемого устройства пользователя |
| forceDelete | Bool | Удаление устройства (и ключа аутентификации) вне зависимости ответа сервера |
Примечание
Метод отображает UI ввода пароля для доступа к ключам аутентификации.
Метод getAuthList
Получение сведений о зарегистрированных пользователях и их устройствах.
fun getAuthList(context: Context)
Возвращаемые параметры:
| Параметр | Тип | Описание |
|---|---|---|
| AuthListUseCase | List<DSSUser> | Список сведений о зарегистрированных пользователях |
Метод getActiveDssUser
Получение сведений о пользователе с вектором аутентификации в статусе Active.
fun getActiveDssUser(context: Context)
Возвращаемые параметры:
| Параметр | Тип | Описание |
|---|---|---|
| DssUser | DSSUser? | Сведения о пользователе |
Метод checkStatus
Проверка статуса запроса на добавление нового устройства.
fun checkStatus(
context: Context,
kid: String,
showQr: Boolean,
callback: SdkResultCallback<String>
)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| kid | String | Идентификатор набора ключей пользователя |
| showQr | Bool | Флаг для отображения QR-кода |
| callback | SdkResultCallback<String> | Интерфейс обратного вызова |
Примечание
Метод может отображать UI c данными для добавления нового устройства пользователя.
Возвращаемое значение:
- state - Статус ключа аутентификации
Метод checkStatus (suspend)
Проверка статуса запроса на добавление нового устройства.
suspend fun checkStatus(
context: Context,
kid: String,
showQr: Boolean,
): String
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| kid | String | Идентификатор набора ключей пользователя |
| showQr | Bool | Флаг для отображения QR-кода |
Примечание
Метод может отображать UI c данными для добавления нового устройства пользователя.
Возвращаемое значение:
- state - Статус ключа аутентификации
Метод confirm
Подтверждает установку векторов аутентификации. Данный метод всегда необходимо вызывать после выполнения регистрации нового неподтвержденного мобильного устройства в КриптоПро Ключ. Данный метод может быть вызван только для векторов аутентификации, находящихся в состоянии Created.
fun confirm(context: Context, kid: String, callback: SdkResultCallback<Unit>)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| kid | String | Идентификатор набора ключей пользователя |
| callback | SdkResultCallback<Unit> | Интерфейс обратного вызова |
Метод confirm (suspend)
Подтверждает установку векторов аутентификации. Данный метод всегда необходимо вызывать после выполнения регистрации нового неподтвержденного мобильного устройства в КриптоПро Ключ. Данный метод может быть вызван только для векторов аутентификации, находящихся в состоянии Created.
suspend fun confirm(context: Context, kid: String)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| kid | String | Идентификатор набора ключей пользователя |
Метод verifyByCert
Подтверждение привязки устройства к учетной записи при помощи сертификата. Метод требует доступа к ключу подписи соответствующего сертификата на внешнем носителе.
fun verifyByCert(
context: Context,
kid: String,
cid: Int,
pin: String?,
silent: Boolean,
callback: SdkResultCallback<Unit>
)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| kid | String | Идентификатор набора ключей пользователя |
| cid | int | Идентификатор сертификата пользователя |
| pin | String | ПИН-код на ключевой контейнер (если сертификат хранится локально) либо на внешний носитель для доступа к ключу. Параметр используется только с режимом silent |
| silent | Boolean | Флаг для скрытия/отображения диалоговых окон SDK. Используется только для создания усиленной неквалифицированной электронной подписи (silent mode). Не используется по умолчанию |
| callback | SdkResultCallback<Unit> | Интерфейс обратного вызова |
Примечание
Метод отображает UI с данными учетной записи к которой привязывается мобильное устройство.
Метод verifyByCert (suspend)
Подтверждение привязки устройства к учетной записи при помощи сертификата. Метод требует доступа к ключу подписи соответствующего сертификата на внешнем носителе.
suspend fun verifyByCert(
context: Context,
kid: String,
cid: Int,
pin: String?,
silent: Boolean,
)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| kid | String | Идентификатор набора ключей пользователя |
| cid | int | Идентификатор сертификата пользователя |
| pin | String | ПИН-код на ключевой контейнер (если сертификат хранится локально) либо на внешний носитель для доступа к ключу. Параметр используется только с режимом silent |
| silent | Boolean | Флаг для скрытия/отображения диалоговых окон SDK. Используется только для создания усиленной неквалифицированной электронной подписи (silent mode). Не используется по умолчанию |
Примечание
Метод отображает UI с данными учетной записи к которой привязывается мобильное устройство.
Метод verify
Подтверждает привязку мобильного устройства к учетной записи пользователя. Данный метод может быть вызван только для векторов аутентификации, находящихся в состоянии NotVerified.
Если для данного мобильного устройства требуется осуществлять подтверждение присоединения с использованием nonce, то в этом случае перед отправкой запроса мобильное приложение должно отсканировать QR-код, содержащий значение nonce.
fun verify(
context: Context,
kid: String,
silent: Boolean,
callback: SdkResultCallback<Unit>
)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| kid | String | Идентификатор набора ключей пользователя |
| silent | Boolean | Флаг для скрытия/отображения диалоговых окон SDK. Используется только для создания усиленной неквалифицированной электронной подписи (silent mode). Не используется по умолчанию |
| callback | SdkResultCallback<Unit> | Интерфейс обратного вызова |
Примечание
Метод отображает UI с данными учетной записи к которой привязывается мобильное устройство.
Метод verify (suspend)
Подтверждает привязку мобильного устройства к учетной записи пользователя. Данный метод может быть вызван только для векторов аутентификации, находящихся в состоянии NotVerified.
Если для данного мобильного устройства требуется осуществлять подтверждение присоединения с использованием nonce, то в этом случае перед отправкой запроса мобильное приложение должно отсканировать QR-код, содержащий значение nonce.
suspend fun verify(
context: Context,
kid: String,
silent: Boolean,
)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| kid | String | Идентификатор набора ключей пользователя |
| silent | Boolean | Флаг для скрытия/отображения диалоговых окон SDK. Используется только для создания усиленной неквалифицированной электронной подписи (silent mode). Не используется по умолчанию |
Примечание
Метод отображает UI с данными учетной записи к которой привязывается мобильное устройство.
Метод removeAuthLocal
Удаление устройства пользователя и его вектора аутентификации без обращения на сервер.
fun removeAuthLocal(
context: Context,
kid: String,
callback: SdkResultCallback<Unit>
)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| kid | String | Идентификатор набора ключей пользователя |
| callback | SdkResultCallback<Unit> | Интерфейс обратного вызова |
Метод removeAuthLocal (suspend)
Удаление устройства пользователя и его вектора аутентификации без обращения на сервер.
suspend fun removeAuthLocal(
context: Context,
kid: String,
)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| kid | String | Идентификатор набора ключей пользователя |
Метод confirmNewDevice
Подтверждение запроса на добавление нового устройства.
fun confirmNewDevice(
context: Context,
kid: String,
confirmedKid: String,
silent: Boolean,
approve: Boolean,
callback: SdkResultCallback<ConfirmNewDeviceResult>
)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| kid | String | Идентификатор набора ключей пользователя |
| confirmedKid | String | Идентификатор устройства пользователя, добавление которого требуется подтвердить |
| silent | Boolean | Флаг для скрытия/отображения диалоговых окон SDK. Используется только для создания усиленной неквалифицированной электронной подписи (silent mode). Не используется по умолчанию |
| approve | Bool | Флаг для одобрения / отклонения добавления нового устройства |
| callback | SdkResultCallback<\ConfirmNewDeviceResult> | Интерфейс обратного вызова. Возвращает значения Approve или Reject |
Примечание
Метод отображает UI c данными добавляемого нового устройства пользователя и ввода пароля для доступа к ключам аутентификации.
Метод confirmNewDevice (suspend)
Подтверждение запроса на добавление нового устройства.
suspend fun confirmNewDevice(
context: Context,
kid: String,
confirmedKid: String,
silent: Boolean,
approve: Boolean,
): ConfirmNewDeviceResult
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| kid | String | Идентификатор набора ключей пользователя |
| confirmedKid | String | Идентификатор устройства пользователя, добавление которого требуется подтвердить |
| silent | Boolean | Флаг для скрытия/отображения диалоговых окон SDK. Используется только для создания усиленной неквалифицированной электронной подписи (silent mode). Не используется по умолчанию |
| approve | Bool | Флаг для одобрения / отклонения добавления нового устройства |
Возвращаемое значение:
- объект данных
ApproveилиReject- для подтвержденного или отклоненного устройства соответственно.
Примечание
Метод отображает UI c данными добавляемого нового устройства пользователя и ввода пароля для доступа к ключам аутентификации.
Метод scanQR
Метод сканирования QR-кода.
fun scanQr(
context: Context,
base64Qr: String?,
callback: SdkResultCallback<SdkResultType<RawQR>>
)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| base64Qr | String | Данные, содержащиеся в QR-коде (опциональный) |
| callback | SdkResultCallback<SdkResultType<RawQR>> | Интерфейс обратного вызова. В качестве аргумента принимает объект SdkResultType, который является sealed-классом с двумя возможными состояниями: OperationSuccess\<RawQr> — содержит объект типа RawQR, OperationCancel — сигнализирует о том, что операция была отменена пользователем или системой |
Возвращаемое значение:
RawQR - данные, содержащиеся в QR-коде. Возвращаются только для SdkResultType = OperationSuccess.
Примечание
Метод отображает UI для сканирования QR-кода.
Метод scanQR (suspend)
Метод сканирования QR-кода.
suspend fun scanQr(context: Context, base64Qr: String?): SdkResultType<RawQR>
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| base64Qr | String | Данные, содержащиеся в QR-коде (опциональный) |
Возвращаемое значение:
RawQR - данные, содержащиеся в QR-коде. Возвращаются только для SdkResultType = OperationSuccess.
Примечание
Метод отображает UI для сканирования QR-кода.