myDSSSDK Documentation

Class DSSUsers​Manager​Non​Qual

public final class DSSUsersManagerNonQual  

Класс для управления и выполнения "активных" действий над пользователями DSS на стороне SDK. Используется для работы с УНЭП (Неквалифицированная подпись)

Methods

create​DSSUser​With​Init​QR(qr​Code:​push​Notifications​Data:​device​Name:​external​Id:​alias:​callback:​)

public static func createDSSUserWithInitQR(
        qrCode: DSSQRCodeKinit,
        pushNotificationsData: PushNotificationsData? = nil,
        deviceName: String,
        externalId: String?,
        alias: String?,
        callback: @escaping (_ result: Result<DSSUser, Error>) -> Void
    )  

Создание "неподтвержденной" учетной записи в DSS с получением "вектора аутентификации" к ней с использованием QR-кода

Parameters

qr​Code DSSQRCode​Kinit

Экземпляр DSSQRCodeKinit с данными для инициализации

push​Notifications​Data Push​Notifications​Data?

Данные для отправки пуш-уведомлений

device​Name String

Отображаемое дружественное имя устройства

external​Id String?

Внешний идентификатор

alias String?

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

callback @escaping (_ result:​ Result<DSSUser, Error>) -> Void

Замыкание возвращает результат

result

В случае успеха вернёт экземпляр неподтверждённого пользователя. Иначе — возвращает ошибку

create​DSSUser(service​URL:​push​Notifications​Data:​device​Name:​external​Id:​alias:​callback:​)

public static func createDSSUser(
        serviceURL: URL,
        pushNotificationsData: PushNotificationsData? = nil,
        deviceName: String,
        externalId: String?,
        alias: String?,
        callback: @escaping (_ result: Result<DSSUser, Error>) -> Void
    )  

Создание "неподтвержденной" учетной записи в DSS с получением "вектора аутентификации" к ней

Parameters

service​URL URL

Адрес сервера

push​Notifications​Data Push​Notifications​Data?

Данные для отправки пуш-уведомлений

device​Name String

Отображаемое дружественное имя устройства

external​Id String?

Внешний идентификатор

alias String?

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

callback @escaping (_ result:​ Result<DSSUser, Error>) -> Void

Замыкание возвращает результат

result

В случае успеха вернёт экземпляр неподтверждённого пользователя. Иначе — возвращает ошибку

accept​Account​Changes(user:​verification​QRCode:​callback:​)

public static func acceptAccountChanges(
        user: DSSUser,
        verificationQRCode: DSSQRCodeVerification?,
        callback: @escaping (_ result: Result<DSSUser, Error>) -> Void
    )  

Подтверждение присоединения мобильного устройства к учётной записи

Перед выполнением user.isReadyToSign должен быть true. Если user.verification == .qrRequired, то нужно обязательно указать значение verificationQRValue

Parameters

user DSSUser

Пользователь для подтверждения

verification​QRValue

QR-код с данными для подтверждения

callback @escaping (_ result:​ Result<DSSUser, Error>) -> Void

Замыкание возвращает результат

result

В случае успеха вернёт экземпляр подтверждённого пользователя. Иначе — возвращает ошибку

create​DSSUser​With​Approval(service​URL:​uid:​push​Notifications​Data:​device​Name:​external​Id:​alias:​callback:​)

public static func createDSSUserWithApproval(
        serviceURL: URL,
        uid: String,
        pushNotificationsData: PushNotificationsData? = nil,
        deviceName: String,
        externalId: String?,
        alias: String?,
        callback: @escaping (_ result: Result<DSSUser, Error>) -> Void
    )  

Создание запроса на добавление устройства к учетной записи DSS

Parameters

service​URL URL

Адрес сервера

uid String

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

push​Notifications​Data Push​Notifications​Data?

Данные для отправки пуш-уведомлений

device​Name String

Отображаемое дружественное имя устройства

external​Id String?

Внешний идентификатор

alias String?

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

callback @escaping (_ result:​ Result<DSSUser, Error>) -> Void

Замыкание возвращает результат

result

В случае успеха вернёт экземпляр неподтверждённого пользователя. Иначе — возвращает ошибку

check​Approval​Status(user:​callback:​)

public static func checkApprovalStatus(
        user: DSSUser,
        callback: @escaping (_ result: Result<DSSUser, Error>) -> Void
    )  

Проверка статуса подключения устройства

Parameters

user DSSUser

Пользователь, чей статус нужно проверить

callback @escaping (_ result:​ Result<DSSUser, Error>) -> Void

Замыкание возвращает результат

result

Возвращает пользователя, если он подтверждён. Иначе — возвращает ошибку

store(user:​name:​password:​callback:​)

public static func store(
        user: DSSUser,
        name: String,
        password: String,
        callback: @escaping (_ result: Result<DSSUser, Error>) -> Void
    )  

Сохранение пользователя в БД

Parameters

user DSSUser

Пользователь, которого нужно сохранить

name String

Имя, под которым пользователь будет сохранён

password String

Пароль для сохранения

callback @escaping (_ result:​ Result<DSSUser, Error>) -> Void

Замыкание возвращает результат

result

Возвращает экземпляр сохранённого пользователя или ошибку

submit​Password(user:​password:​)

public static func submitPassword(
        user: DSSUser,
        password: String
    ) throws  

Предъявление пароля на "вектор аутентификации"

После выполнения user.isReadyToSign станет true

Parameters

user DSSUser

Пользователь, для которого предъявляется пароль

password String

Предъявляемый пароль

Throws

Если пароль не верный, вернётся ошибка DSSError.wrongPassword

change​Password(user:​new​Password:​)

public static func changePassword(
        user: DSSUser,
        newPassword: String
    ) throws  

Сохранение с новым паролем на "вектор аутентификации"

Перед выполнением user.isReadyToSign должен быть true

Parameters

user DSSUser

Пользователь, для которого устанавливается новый пароль

new​Password String

Новый пароль

Throws

Вернётся ошибка, если не удастся сменить пароль

revoke(user:​callback:​)

public static func revoke(
        user: DSSUser,
        callback: @escaping (_ result: Result<Void, Error>) -> Void
    )  

Отзыв "вектора аутентификации" на сервере DSS.

Перед выполнением user.isReadyToSign должен быть true

Parameters

user DSSUser

Пользователь, для которого отзывается "вектор аутентификации"

callback @escaping (_ result:​ Result<Void, Error>) -> Void

Замыкание возвращает результат

result

В случае успеха не возвращает ничего. Иначе — возвращает ошибку