Подписываемый запрос на сертификат
Type Method
sign(certificateRequest:user:keyInfo:pin:queue:completion:)
Подписывает запрос на сертификат и отправляет на сервер
Declaration
static func sign(certificateRequest: Certificate, user: User, keyInfo: KeyInfo?, pin: String, queue: DispatchQueue = .main, completion: @escaping (_ result: Result<Void, Error>) -> Void)
Parameters
certificateRequest
-
user
-
Пользователь, которым будет подписан запрос
keyInfo
-
Информация о контейнере ключа подписи
pin
-
Пин-код контейнера ключа подписи
queue
-
Очередь на которой будет вызвано замыкание
Discussion
В метод необходимо передать ключевую пару пользователя KeyInfo
и экземпляр Certificate
, для которого выполняются условия:
certificateRequest.type == .request
&& certificateRequest.state == .signWait
&& certificateRequest.isClient == true
Если условия не будут выполнены, то метод вернёт ошибку SDKError.wrongCertificateRequest
Предварительно необходимо вызвать метод UsersManager.submitPassword(user:callback:)
. Иначе вернётся ошибка SDKError.handleInvalid
.