Конечная точка User
Конечная точка User Сервиса Управления Пользователями для Оператора представлена следующими группами HTTP-методов:
- Операции с пользователями
- Настройка различительного имени пользователя
- Настройка групп пользователей
- Настройка логина пользователя
- Настройка пароля пользователя
- Настройка номера телефона пользователя
- Настройка адреса электронной почты пользователя
- Настройка Push-адресов пользователей
- Настройка протокола OATH (одноразовые пароли на брелках)
- Общие настройки аутентификации
- Настройка аутентификации по методу SimAuth
- Настройка аутентификации по методу MobileAuth
- Настройка аутентификации DSS Client
- Настройка серверной лицензии на модуль аутентификации Cloud CSP
- Настройка политики подтверждения операций
- Настройка политики доступа к операциям
- Настройка политики оповещения
- Блокировка/разблокировка пользователя
Примечание
Обращение к Сервису Управления Пользователями (UMS) требует аутентификации Оператора в DSS в качестве привилегированного пользователя. Для этого необходимо предъявить соответствующий сертификат аутентификации (взаимодействие осуществляется по протоколу ГОСТ-TLS с двусторонней аутентификацией) или токен аутентификации. Для краткости примеры запросов в данном разделе предоставляются без указания аутентификационных данных.
Операции с пользователями
Данная группа методов предоставляет способы добавления, удаления и настройки пользователей.
Регистрация пользователя и добавление в группу по умолчанию
RegisterUser
Данный метод позволяет создать нового пользователя без явного указания его группы. При этом пользователь будет помещен в группу, в которой состоит создающий его Оператор. Если Оператор состоит в 2 и более группах, метод возвратит ошибку. В этом случае следует использовать метод "Регистрация пользователя и добавление в определенную группу" (см. ниже).
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user |
Параметры в строке запроса | - |
Параметры в теле запроса | Dictionary<IdentifierType, string> - Словарь идентификаторов пользователя |
Возвращаемое значение | id - Глобальный идентификатор пользователя |
Пример запроса
POST https://<hostname>/STS/ums/user HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 24
{
"Email": "sample@cp.ru"
}
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 38
"7c9f047f-d539-4be9-ae5d-a81ed8495ce1"
Регистрация пользователя и добавление в группу по умолчанию (2)
RegisterUser2
Данный метод позволяет создать нового пользователя без явного указания его группы. При этом пользователь будет помещен в группу, в которой состоит создающий его Оператор. Если Оператор состоит в 2 и более группах, метод возвратит ошибку. В этом случае следует использовать метод "Регистрация пользователя и добавление в определенную группу" (см. ниже).
Примечание
Данный метод отличается от предыдущего путем обращения и типом возвращаемых данных. В отличие от метода /user, в данном методе идентификатор пользователя возвращается не в виде строки, а в виде json-объекта (см. пример).
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/register |
Параметры в строке запроса | - |
Параметры в теле запроса | Dictionary<IdentifierType, string> - Словарь идентификаторов пользователя |
Возвращаемое значение | id - Глобальный идентификатор пользователя |
Пример запроса
POST https://<hostname>/STS/ums/user HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 24
{
"Email": "sample@cp.ru"
}
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Date: Wed, 13 Jul 2022 12:10:31 GMT
Content-Length: 45
{
"Id":"07ddacc4-cf5f-4ae4-8d9c-3caf7c6a9e3e"
}
Регистрация пользователя и добавление в определенную группу
RegisterUser
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/ |
Параметры в строке запроса | groupName - Имя группы, в которой будет состоять пользователь |
Параметры в теле запроса | Dictionary<IdentifierType, string> - Словарь идентификаторов пользователя |
Возвращаемое значение | id - Глобальный идентификатор пользователя |
Пример запроса
POST https://<hostname>/STS/ums/user?groupName=TestGroup HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 24
{
"Email": "sample@cp.ru"
}
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 38
"7c9f047f-d539-4be9-ae5d-a81ed8495ce2"
Получение информации о пользователе по глобальному идентификатору
GetUserById
Параметр | Значение |
---|---|
HTTP-метод | GET |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id} |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (без использования query string) |
Параметры в теле запроса | - |
Возвращаемое значение | DssUserInfo - Учетные данные пользователя |
Пример запроса
GET https://<hostname>/STS/ums/user/9fba6076-3509-4e8e-abc1-dae6d052a230 HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 415
{
"UserId": "9fba6076-3509-4e8e-abc1-dae6d052a230",
"Login": "Test1231231232",
"PhoneNumber": "78889996655",
"Email": null,
"PhoneConfirmed": true,
"EmailConfirmed": false,
"DisplayName": null,
"DistinguishName": "SN=Иванов, G=Иван Иванович, I=ИИИ, CN=Ivanov, C=RU",
"AccountLocked": false,
"Group": "CustomGroup",
"CreationDate": "2019-05-30T16: 25: 35.77",
"LockoutDate": null,
"LastLoginDate": "2019-05-30T16: 25: 35.77"
}
Получение информации о пользователе по идентификатору
Get
Параметр | Значение |
---|---|
HTTP-метод | GET |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user |
Параметры в строке запроса | type (тип IdentifierType) - Тип идентификатора пользователя value - Значение идентификатора пользователя issuerName - Имя ЦИ, в котором зарегистрирован пользователь (необязательно) |
Параметры в теле запроса | - |
Возвращаемое значение | DssUserInfo - Учетные данные пользователя |
Пример запроса
GET https://<hostname>/STS/ums/user?type=PhoneNumber&value=78889996655 HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 415
{
"UserId": "9fba6076-3509-4e8e-abc1-dae6d052a230",
"Login": "Test1231231232",
"PhoneNumber": "78889996655",
"Email": null,
"PhoneConfirmed": true,
"EmailConfirmed": false,
"DisplayName": null,
"DistinguishName": "SN=Иванов, G=Иван Иванович, I=ИИИ, CN=Ivanov, C=RU",
"AccountLocked": false,
"Group": "CustomGroup",
"CreationDate": "2019-05-30T16: 25: 35.77",
"LockoutDate": null,
"LastLoginDate": "2019-05-30T16: 25: 35.77"
}
Назначение отображаемого имени пользователя в общем списке пользователей
SetUserProperty
Параметр | Значение |
---|---|
HTTP-метод | PATCH, POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id} |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | UserProperty - Свойства учетной записи пользователя |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/9cddeb1f-a36c-4f79-bbda-ec0dece4873c HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 44
{
"PropertyType": 0,
"Value": "UserDisplayName"
}
Пример ответа
HTTP/1.1 200 OK
Удаление пользователя
DeleteUser
Параметр | Значение |
---|---|
HTTP-метод | DELETE |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id} |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Возвращаемое значение | - |
Пример запроса
DELETE https://<hostname>/STS/ums/user/486f64c8-d5da-4a61-ae0a-5ddb202f82bf HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Настройка различительного имени пользователя
Данная группа методов предоставляет способы работы с различительным именем пользователя.
Назначение различительного имени пользователю
SetUserDistinguishedName
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/dn |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) components - Словарь компонентов различительного имени формата IDictionary<int, string> |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/9b12bffc-3562-4db6-ada4-d857ad2c291a/dn HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 16
{
"1": "SampleCN"
}
Пример ответа
HTTP/1.1 200 OK
Получение списка компонентов различительного имени пользователя
GetUserDistinguishedName
Параметр | Значение |
---|---|
HTTP-метод | GET |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/dn |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | Dictionary<int, string> - Компоненты различительного имени пользователя |
Примечание: ключом словаря является идентификатор компонента имени пользователя. Список поддерживаемых ЦИ компонентов имени пользователя можно получить из политики Сервиса Управления Пользователями (ссылка на GetPolicy)
Пример запроса
GET https://<hostname>/STS/ums/user/81c71190-ff87-4457-9d6d-86cd66a22f83/dn HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 58
{
"1": "UmsSampleUser-f3d5fdfe-9da7-436f-8245-908aafa1213e"
}
Настройка групп пользователей
Данная группа методов предоставляет способы работы с группами пользователей.
Назначение группы пользователю
SetUserGroup
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/group |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) groupName - Имя группы |
Параметры в теле запроса | newRdns - Новый список компонентов имени пользователя |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/46778710-1d63-4691-885b-c0e895da3ba8/group?groupName=SampleGroup HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 58
{
"1": "UmsSampleUser-33a13f1f-b99d-4e71-8090-01e6aecff75e"
}
Пример ответа
HTTP/1.1 200 OK
Получение имени группы пользователя
GetUserGroup
Параметр | Значение |
---|---|
HTTP-метод | GET |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/group |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | Имя группы пользователя (String) |
Пример запроса
GET https://<hostname>/STS/ums/user/40181add-c27f-4491-ab66-d60dc69a583f/group HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 9
"Default"
Настройка логина пользователя
Данная группа методов позволяет добавлять, удалять и получать сведения о логине учетной записи пользователя.
Установка локального логина учетной записи пользователя
SetUserLocalLogin
Добавляет локальный логин пользователю или заменяет его, если логин уже существует.
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/login/local?newLogin={newLogin} |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) newLogin - Новый локальный логин пользователя |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/4de1b1be-2229-40fe-a0e6-ece733277ccb/login/local?newLogin=TestLogin123 HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Установка внешнего (или локального) логина учетной записи пользователя
SetUserLogin
Добавляет внешний (или локальный) логин пользователю или заменяет его, если логин уже существует. Добавляет локальный логин, если передано значение "IssuerName": "realsts". Если логин существует и передано пустое значение логина, логин будет удален.
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/login |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | ExternalLoginInfo - Структура для создания внешнего логина |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/4de1b1be-2229-40fe-a0e6-ece733277ccb/login HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 48
{
"Login": "SampleLogin",
"IssuerName": "SampleSts"
}
Пример ответа
HTTP/1.1 200 OK
Получение логинов пользователя
GetUserLogin
Параметр | Значение |
---|---|
HTTP-метод | GET |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/login |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | List<ExternalLoginInfo> - Список логинов пользователя |
Пример запроса
GET https://<hostname>/STS/ums/user/80c275a1-f375-4bf1-aac3-9c478aee950c/login HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 50
[{
"Login": "UmsSampleUser",
"IssuerName": "realsts"
}]
Удаление локального логина пользователя
DeleteUserLocalLogin
Метод удаляет локальный логин пользователя.
Параметр | Значение |
---|---|
HTTP-метод | DELETE |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/login/local |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
DELETE https://<hostname>/STS/ums/user/9fba6076-3509-4e8e-abc1-dae6d052a230/login/local HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Удаление логина пользователя
DeleteUserLogin
Метод удаляет локальный или внешний логин пользователя.
- Для удаления локального логина:
?issuerName=realsts
. - Для удаления внешнего логина: указать в параметре
issuerName
имя ЦИ, логин в котором необходимо удалить. - При выполнении метода без использования параметра
issuerName
будет удален тот внешний логин, (зарегистрированный для внешнего ЦИ) пользователя, из-под которого Оператор выполнил вход (получил соответствующий токен безопасности) для выполнения указанного метода.
Параметр | Значение |
---|---|
HTTP-метод | DELETE |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/login |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string); issuerName - имя ЦИ, в котором необходимо удалить логин (необязательный параметр) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
DELETE https://<hostname>/STS/ums/user/9fba6076-3509-4e8e-abc1-dae6d052a230/login?issuerName=SampleSTS HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Настройка пароля пользователя
Данная группа методов позволяет управлять паролями пользователей.
Сброс пароля пользователя
ResetPassword
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/password |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | Новый пароль пользователя (String) |
Пример запроса
POST https://<hostname>/STS/ums/user/ef2ab692-f457-432a-bbe8-392ec44b6ee1/password HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 10
"b9Ys83kH"
Примечание
Чтобы использовать данный метод, в настройках ЦИ необходимо добавить вариант отображения пароля "Screen" или "Frame" (параметр "PasswordDisplayFormatList"). Иначе пароль пользователя будет сброшен, но не будет возвращен в ответе на post-запрос.
Типовые ошибки
См. типовые ошибки общего метода сброса пароля
Сброс пароля пользователя с отправкой пароля пользователю
ResetPasswordAndSend
Это обобщенный метод сброса пароля пользователя, который позволяет несколькими способами получить новый пароль, а так же передать его пользователю.
Запрос на сброс пароля пользователя оператором представляет собой структуру ResetPasswordRequest, которая содержит информацию о том, требуется ли отправить пользователю новый пароль в СМС и/или на электронную почту, требуется ли получить новый пароль в ответе на запрос и требуется ли сформировать печтаную форму с информацией о новом пароле пользователя.
Подробнее о правилах заполнения запроса см. на странице ResetPasswordRequest.
В ответе на запрос, в структуре ResetPasswordResponse будут возвращен новый пароль и/или печатная форма с информацией о пароле, если в запроси были указаны соответствующие требования.
Подробнее о формате ответа на запрос см. на странице ResetPasswordResponse.
На сервисе могут быть настроены одновременно не все варианты получения нового пароля пользователя после сброса. Для получения более подробной информации см. раздел типовые ошибки.
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/password/send |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | ResetPasswordRequest - запрос на сброс пароля |
Возвращаемое значение | ResetPasswordResponse - ответ на запрос сброса пароля |
Пример запроса
Данный запрос на сброс пароля содержит требования:
- отправить новый пароль пользователя на номер телефона "+7(926)558-97-95" (в списке NotificationDestinations передан объект { "Type": "PhoneNumber", "Value": "79265589795" });
- отправить новый пароль пользователя на номер, назначенный для получения одноразовых паролей (в списке NotificationDestinations передан объект { "Type": "PhoneNumber" } без указания значения номера телефона);
- отправить новый пароль пользователя на адрес электронной почты "ivanov@gmail.com" (в списке NotificationDestinations передан объект { "Type": "EmailAddress", "Value": "ivanov@gmail.com" });
- отправить новый пароль пользователя на адрес электронной почты, назначенный для получения одноразовых паролей (в списке NotificationDestinations передан объект { "Type": "EmailAddress" } без указания значения адреса электронной почты);
- возвратить пароль в явном виде в ответе на запрос (поле ReturnRawPassword заполнено значением true);
- возвратить пароль в ответе на запрос в виде печатной формы (поле ReturnPrintedPasswordFormat заполнено желаемым форматом печатной формы: Html);
Подробнее о правилах заполнения запроса см. на странице ResetPasswordRequest.
POST https://<hostname>/STS/ums/user/ef2ab692-f457-432a-bbe8-392ec44b6ee1/password/send HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 325
{
"NotificationDestinations":
[
{ "Type": "PhoneNumber" },
{ "Type": "PhoneNumber", "Value": "79265589795" },
{ "Type": "EmailAddress", "Value": "ivanov@gmail.com" },
{ "Type": "EmailAddress" }
],
"ReturnRawPassword": true,
"ReturnPrintedPasswordFormat": "Html"
}
Пример ответа
В ответе на запрос был получен новый пароль в явном виде, а так же в виде печатной формы с информацией о новом пароле.
Подробнее о формате ответа на запрос см. на странице ResetPasswordResponse.
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 1472
{
"Password": "W3al9pB3",
"PrintForm": "77u/PGh0bWw+DQoAgIDxNRVRBIGh0dHAtZX8L2h0bWw...",
"PrintFormName": "Ivanov_PrintForm.html"
}
HTTP-код | Ошибка | Описание |
---|---|---|
404 | Пользователь не найден | |
400 | invalid_login | Пользователю не назначен идентификатор входа |
400 | wrong_operation | Настройки сервиса не позволяют использовать выбранный вариант полчучения значения нового пароля пользователя (параметр PasswordDisplayList). Для обеспечения возможности отправки нового пароля на номера телефона пользователя параметр PasswordDisplayList должен содержать значение Phone, а так же должны быть настроены соответствующие модули оповещения. Для обеспечения возможности отправки нового пароля на адрес электронной почты пользователя параметр PasswordDisplayList должен содержать значение Email, а так же должны быть настроены соответствующие модули оповещения. Для обеспечения возможности формирования печатной формы с информацией о новом пароле пользователя параметр PasswordDisplayList должен содержать значение Print. Для обеспечения возможности получения значения нового пароля пользователя в ответе на запрос параметр PasswordDisplayList должен содержать значение Screen или Frame. Для уточнения причины ошибки см. описание ошибки в теле http-ответа. |
400 | invalid_phone | В случае явного указания значения номера телефона - не найден соответствующий подтвержденный номер телефона среди контактов пользователя. В случае отсутствия значения - не найден телефон для отправки OTP. Для уточнения см. описание ошибки в теле http-ответа. |
400 | invalid_email | В случае явного указания значения адреса электронной почты - не найден соответствующий подтвержденный адрес электронной почты среди контактов пользователя. В случае отсутствия значения - не найден адрес электронной почты для отправки OTP. Для уточнения см. описание ошибки в теле http-ответа. |
500 | Внутренняя ошибка сервиса |
Примечание
Отправка нового пароля пользователя возможно только на подтвержденные контакты (почта/телефон) пользователя. Для получения сведений о наличии соответствующих контактов пользователя используейте конечные точки /phones и /emails.
Сброс пароля пользователя с отправкой пароля в смс
ResetPasswordAndSendSms
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/password/send/sms |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) destination - Опционально, подтвержденный номер телефона пользователя (передается в query string). При отсутствии этого параметра, новый пароль будет отправлен на номер телефона, назначенный для получения одноразовых паролей. Если такого номера телефона не имеется, сервис вернет ошибку. |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/ef2ab692-f457-432a-bbe8-392ec44b6ee1/password/send/sms?destination=79265465212 HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Типовые ошибки
См. типовые ошибки общего метода сброса пароля
Примечание
Чтобы использовать данный метод, в настройках ЦИ необходимо добавить вариант отображения пароля "Phone" (параметр "PasswordDisplayFormatList").
Сброс пароля пользователя с отправкой пароля на электронную почту
ResetPasswordAndSendEmail
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/password/send/email |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) destination - Опционально, подтвержденный адрес электронной почты пользователя (передается в query string). При отсутствии этого параметра, новый пароль будет отправлен на адрес электронной почты, назначенный для получения одноразовых паролей. Если такого адреса не имеется, сервис вернет ошибку. |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/ef2ab692-f457-432a-bbe8-392ec44b6ee1/password/send/email?destination=ivanov@gmail.com HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Типовые ошибки
См. типовые ошибки общего метода сброса пароля
Примечание
Чтобы использовать данный метод, в настройках ЦИ необходимо добавить вариант отображения пароля "Email" (параметр "PasswordDisplayFormatList").
Сброс пароля пользователя с получением печатной формы с новым паролем
ResetPasswordAndPrint
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/password/print |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) format - Формат документа с новым паролем для печати. Возможные значения: Html, Xml, Pdf, Word |
Параметры в теле запроса | - |
Возвращаемое значение | Файл для печати с новым паролем пользователя |
Пример запроса
POST https://<hostname>/STS/ums/user/ef2ab692-f457-432a-bbe8-392ec44b6ee1/password/print?format=Word HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/msword
Content-Length: 10752
Content-Disposition: attachment; filename=Ivanov_PrintForm.doc
%Содержимое файла%
Типовые ошибки
См. типовые ошибки общего метода сброса пароля
Примечание
Чтобы использовать данный метод, в настройках ЦИ необходимо добавить вариант отображения пароля "Print" (параметр "PasswordDisplayFormatList").
Настройка номера телефона пользователя
Данная группа методов позволяет управлять номерами телефонов пользователей.
Получение списка телефонов пользователя
GetUserPhones
Параметр | Значение |
---|---|
HTTP-метод | GET |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/phones |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | List<UserContactInfo> - Контактная информация пользователя |
Пример запроса
GET https://<hostname>/STS/ums/user/e5ec3a9e-76a8-4f99-8750-2180b47ef2e1/phones HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 115
[{
"Type": "PhoneNumber",
"Contact": "79991234568",
"Confirmed": false,
"Primary": false,
"Notification": false,
"Usages": []
}]
Добавление телефона пользователя
AddUserPhone
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/phones |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | phone - Номер телефона пользователя |
Возвращаемое значение | UserContactInfo - Контактная информация пользователя |
Пример запроса
POST https://<hostname>/STS/ums/user/136d0be8-aebf-4322-8840-4f441f576a91/phones HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 18
"+7(999)123-45-60"
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 110
{
"Type": "PhoneNumber",
"Contact": "79991234560",
"Confirmed": true,
"Primary": true,
"Notification": true,
"Usages": []
}
Подтверждение номера телефона пользователя
Метод используется, если не требуется отправка одноразового пароля.
ConfirmUserPhone
Параметр | Значение |
---|---|
HTTP-метод | POST, PATCH |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/phones/{phone}/confirm |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) phone - Номер телефона пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | UserContactInfo - Контактная информация пользователя |
Пример запроса
POST https://<hostname>/STS/ums/user/e5ec3a9e-76a8-4f99-8750-2180b47ef2e1/phones/79991234568/confirm HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 2
{}
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 110
{
"Type": "PhoneNumber",
"Contact": "79991234568",
"Confirmed": true,
"Primary": true,
"Notification": true,
"Usages": []
}
Запрос отправки одноразового пароля для подтверждения номера телефона
RequireUserPhoneConfirmation
Параметр | Значение |
---|---|
HTTP-метод | POST, PATCH |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/phones/{phone}/requireconfirm |
Параметры | id - Глобальный идентификатор пользователя (не является частью query string) phone - Номер телефона пользователя (не является частью query string) |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/3d540f99-8451-4ad3-b8aa-ea8b446eb6f9/phones/71238889900/requireconfirm HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 2
{}
Пример ответа
HTTP/1.1 200 OK
Подтверждение номера телефона при помощи кода подтверждения (одноразового пароля)
SubmitUserPhoneConfirmation
Параметр | Значение |
---|---|
HTTP-метод | POST, PATCH |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/phones/{phone}/submitconfirm |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) phone - Номер телефона пользователя (не является частью query string) |
Параметры в теле запроса | confirmationCode - Код подтверждения |
Возвращаемое значение | UserContactInfo - Контактная информация пользователя |
Пример запроса
POST https://<hostname>/STS/ums/user/3d540f99-8451-4ad3-b8aa-ea8b446eb6f9/phones/71238889900/submitconfirm HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 7
"91830"
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 110
{
"Type": "PhoneNumber",
"Contact": "71238889900",
"Confirmed": true,
"Primary": true,
"Notification": true,
"Usages": []
}
Установка номера телефона пользователя для идентификации (входа)
SetUserPrimaryPhone
Параметр | Значение |
---|---|
HTTP-метод | POST, PATCH |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/phones/{phone}/primary |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) phone - Номер телефона пользователя (не является частью query string) primary - флаг, отвечающий за назначение телефона в качестве логина для идентификации (если это не запрещено на сервере) |
Параметры в теле запроса | primary - флаг, отвечающий за назначение телефона в качестве логина для идентификации (если это не запрещено на сервере) |
Возвращаемое значение | UserContactInfo - Контактная информация пользователя |
Пример запроса
POST https://<hostname>/STS/ums/user/3538fb42-a6c1-442c-9a27-70de9f8aeed7/phones/79991234569/primary HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 5
false
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 111
{
"Type": "PhoneNumber",
"Contact": "79991234569",
"Confirmed": true,
"Primary": false,
"Notification": true,
"Usages": []
}
Установка номера телефона для получения уведомлений
SetUserNotificationPhone
Параметр | Значение |
---|---|
HTTP-метод | POST, PATCH |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/phones/{phone}/notification |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) phone - Номер телефона пользователя (не является частью query string) |
Параметры в теле запроса | notification - флаг, отвечающий за возможность получать уведомления на заданный номер |
Возвращаемое значение | UserContactInfo - Контактная информация пользователя |
Пример запроса
POST https://<hostname>/STS/ums/user/3538fb42-a6c1-442c-9a27-70de9f8aeed7/phones/79991234569/notification HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 5
false
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 112
{
"Type": "PhoneNumber",
"Contact": "79991234569",
"Confirmed": true,
"Primary": false,
"Notification": false,
"Usages": []
}
Назначение номера телефона для вторичной аутентификации и/или подтверждения операций
SetUserSecondaryAuthPhone
Параметр | Значение |
---|---|
HTTP-метод | POST, PATCH |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/phones/{phone}/secondaryauth |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) phone - Номер телефона пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/3d540f99-8451-4ad3-b8aa-ea8b446eb6f9/phones/71238889900/secondaryauth HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 2
{}
Пример ответа
HTTP/1.1 200 OK
Удаление номера телефона пользователя
DeleteUserPhone
Параметр | Значение |
---|---|
HTTP-метод | DELETE |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/phones/{phone}/ |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) phone - Номер телефона пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
DELETE https://<hostname>/STS/ums/user/136d0be8-aebf-4322-8840-4f441f576a91/phones/79991234560/ HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
(Для обратной совместимости) Назначение номера телефона для вторичной аутентификации и/или подтверждения операций
GetUserPhoneTokenInfo
Параметр | Значение |
---|---|
HTTP-метод | GET |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/phonenumber |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | UserPhoneInfo - Информация о номере телефона пользователя |
Пример запроса
GET https://<hostname>/STS/ums/user/530c285f-047f-40d1-8daa-f7f882347ee0/phonenumber HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 46
{
"PhoneNumber": "79150000000",
"Confirmed": true
}
(Для обратной совместимости) Установка номера телефона как основного (для входа, вторичной аутентификации, оповещения)
SetUserMainPhone
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/phonenumber |
Параметры в строке запроса | id - Глобальный идентификатор пользователя |
Параметры в теле запроса | phone - Номер телефона пользователя |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/a3a0a399-a918-4e8c-9008-2f652815de5f/phonenumber HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 13
"79150000000"
Пример ответа
HTTP/1.1 200 OK
(Для обратной совместимости) Открепление номера телефона от использования для вспомогательной аутентификации
Примечание
Данный метод может быть использован только если отключен соответствующий метод аутентификации (одноразовые пароли, доставляемые посредством SMS-сообщений, см. SetUserAuthenticationMethodOtpViaSms).
DeleteUserPhone
Параметр | Значение |
---|---|
HTTP-метод | DELETE |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/phonenumber |
Параметры в строке запроса | id - Глобальный идентификатор пользователя |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
DELETE https://<hostname>/STS/ums/user/84e67841-ceaa-4f18-a706-eab0d2a997a1/phonenumber HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Настройка адреса электронной почты пользователя
Данная группа методов позволяет управлять адресами электронной почты пользователей.
Получение списка адресов электронной почты пользователей
GetUserEmails
Параметр | Значение |
---|---|
HTTP-метод | GET |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/emails |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | UserContactInfo - Контактная информация пользователя |
Пример запроса
GET https://<hostname>/STS/ums/user/b6e54b50-b047-46d5-9915-3d2a72fc5a45/emails HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 320
[{
"Type": "EmailAddress",
"Contact": "asdad@asd.rrurururu",
"Confirmed": true,
"Primary": true,
"Notification": true,
"Usages": [{
"Type": "OTP",
"Title": "Одноразовые пароли",
"Description": "Адресат получения одноразовых паролей для подтверждения операций"
}]
}]
Добавление адреса электронной почты пользователя
AddUserEmail
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/emails |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | email - Адрес электронной почты пользователя |
Возвращаемое значение | UserContactInfo - Контактная информация пользователя |
Пример запроса
POST https://<hostname>/STS/ums/user/d0d6f46e-0361-48d0-af76-5a6206d93b75/emails HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 33
"umscontactinfotestuser@test1.ru"
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 131
{
"Type": "EmailAddress",
"Contact": "umscontactinfotestuser@test1.ru",
"Confirmed": true,
"Primary": true,
"Notification": true,
"Usages": []
}
Подтверждение адреса электронной почты пользователя
Метод используется, если не требуется отправка одноразового пароля.
ConfirmUserEmail
Параметр | Значение |
---|---|
HTTP-метод | POST, PATCH |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/emails/{email}/confirm |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) email - Адрес электронной почты пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | UserContactInfo - Контактная информация пользователя |
Примечание
Адрес электронной почты перед помещением в запрос должен быть перекодирован в соответствии с правилами кодирования URL-адресов.
Пример запроса
POST https://<hostname>/STS/ums/user/d5daff09-15bc-4519-928f-67aea39bae20/emails/umscontactinfotestuser@test2.ru/confirm HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 2
{}
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 131
{
"Type": "EmailAddress",
"Contact": "umscontactinfotestuser@test2.ru",
"Confirmed": true,
"Primary": true,
"Notification": true,
"Usages": []
}
Запрос отправки одноразового пароля для подтверждения адреса электронной почты пользователя
RequireUserEmailConfirmation
Параметр | Значение |
---|---|
HTTP-метод | POST, PATCH |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/emails/{email}/requireconfirm |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) email - Адрес электронной почты пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Примечание
Адрес электронной почты перед помещением в запрос должен быть перекодирован в соответствии с правилами кодирования URL-адресов.
Пример запроса
POST https://<hostname>/STS/ums/user/b6e54b50-b047-46d5-9915-3d2a72fc5a45/emails/asdad@asd.rrurururu/requireconfirm HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 2
{}
Пример ответа
HTTP/1.1 200 OK
Подтверждение адреса электронной почты при помощи кода подтверждения (одноразового пароля)
SubmitUserEmailConfirmation
Параметр | Значение |
---|---|
HTTP-метод | POST, PATCH |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/emails/{email}/submitconfirm |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) email - Адрес электронной почты пользователя (не является частью query string) |
Параметры в теле запроса | confirmationCode - Код подтверждения |
Возвращаемое значение | UserContactInfo - Контактная информация пользователя |
Примечание
Адрес электронной почты перед помещением в запрос должен быть перекодирован в соответствии с правилами кодирования URL-адресов.
Пример запроса
POST https://<hostname>/STS/ums/user/b6e54b50-b047-46d5-9915-3d2a72fc5a45/emails/asdad@asd.rrurururu/submitconfirm HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 7
"41069"
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 119
{
"Type": "EmailAddress",
"Contact": "asdad@asd.rrurururu",
"Confirmed": true,
"Primary": true,
"Notification": true,
"Usages": []
}
Установка адреса электронной почты пользователя для идентификации (входа)
SetUserPrimaryEmail
Параметр | Значение |
---|---|
HTTP-метод | POST, PATCH |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/emails/{email}/primary |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) email - Адрес электронной почты пользователя (не является частью query string) |
Параметры в теле запроса | primary - флаг, отвечающий за назначение почтового адреса в качестве логина для идентификации (если это не запрещено на сервере) |
Возвращаемое значение | UserContactInfo - Контактная информация пользователя |
Примечание
Адрес электронной почты перед помещением в запрос должен быть перекодирован в соответствии с правилами кодирования URL-адресов.
Пример запроса
POST https://<hostname>/STS/ums/user/1c4df002-ed3c-4c88-a395-8e2795a295c6/emails/umscontactinfotestuser@test3.ru/primary HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 5
false
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 132
{
"Type": "EmailAddress",
"Contact": "umscontactinfotestuser@test3.ru",
"Confirmed": true,
"Primary": false,
"Notification": true,
"Usages": []
}
Установка адреса электронной почты для получения уведомлений
SetUserNotificationEmail
Параметр | Значение |
---|---|
HTTP-метод | POST, PATCH |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/emails/{email}/notification |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) email - Адрес электронной почты пользователя (не является частью query string) |
Параметры в теле запроса | notification - флаг, отвечающий за возможность получать уведомления на заданный почтовый адрес |
Возвращаемое значение | UserContactInfo - Контактная информация пользователя |
Примечание
Адрес электронной почты перед помещением в запрос должен быть перекодирован в соответствии с правилами кодирования URL-адресов.
Пример запроса
POST https://<hostname>/STS/ums/user/1c4df002-ed3c-4c88-a395-8e2795a295c6/emails/umscontactinfotestuser@test3.ru/notification HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 5
false
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 133
{
"Type": "EmailAddress",
"Contact": "umscontactinfotestuser@test3.ru",
"Confirmed": true,
"Primary": false,
"Notification": false,
"Usages": []
}
Установка адреса электронной почты для вторичной аутентификации
SetUserSecondaryAuthEmail
Параметр | Значение |
---|---|
HTTP-метод | POST, PATCH |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/emails/{email}/secondaryauth |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) email - Адрес электронной почты пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Примечание
Адрес электронной почты перед помещением в запрос должен быть перекодирован в соответствии с правилами кодирования URL-адресов.
Пример запроса
POST https://<hostname>/STS/ums/user/b6e54b50-b047-46d5-9915-3d2a72fc5a45/emails/asdad@asd.rrurururu/secondaryauth HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 2
{}
Пример ответа
HTTP/1.1 200 OK
Удаление адреса электронной почты пользователя
DeleteUserEmail
Параметр | Значение |
---|---|
HTTP-метод | DELETE |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/emails/{email}/ |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) email - Адрес электронной почты пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Примечание
Адрес электронной почты перед помещением в запрос должен быть перекодирован в соответствии с правилами кодирования URL-адресов.
Для корректной обработки запроса сервером после адреса электронной почты необходимо
помещать символ /
.
Пример запроса
DELETE https://<hostname>/STS/ums/user/d2ebbe7d-55b1-468e-9e30-9c101377572f/emails/testuser4@dss.ru/ HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
(Для обратной совместимости) Получение информации об адресе электронной почты пользователя назначенном для вспомогательной аутентификации
GetUserEmailTokenInfo
Параметр | Значение |
---|---|
HTTP-метод | GET |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/email |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | UserEmailInfo - Информация об адресе электронной почты пользователя |
Пример запроса
GET https://<hostname>/STS/ums/user/0fd10693-f4a8-46b2-bb9b-aa9e0ae9760d/email HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 32
{
"Email": null,
"Confirmed": false
}
(Для обратной совместимости) Установка адреса электронной почты пользователя в качестве основного (для входа, вторичной аутентификации и оповещения)
SetUserMainEmail
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/email |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | email - Адрес электронной почты пользователя |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/0929c5b2-1ef3-4b23-b544-99a9658fe421/email HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 14
"sample@cp.ru"
Пример ответа
HTTP/1.1 200 OK
(Для обратной совместимости) Удаление адреса электронной почты пользователя
Примечание
Данный метод может быть использован только если отключен соответствующий метод аутентификации (одноразовые пароли, доставляемые посредством Email-сообщений, см. SetUserAuthenticationMethodOtpViaEmail).
DeleteUserEmail
Параметр | Значение |
---|---|
HTTP-метод | DELETE |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/email |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
DELETE https://<hostname>/STS/ums/user/7d68d4f6-c398-4ce1-a217-8a097da42294/email HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Настройка Push-адресов пользователей
Данная группа методов позволяет управлять Push-адресами пользователей.
Получение списка Push-адресов
GetUserPushAddresses
Параметр | Значение |
---|---|
HTTP-метод | GET |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/pushaddress/{activeOnly} |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) activeOnly - Получить сведения только об активных устройствах пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | List< PushAddressContactInfo > - список Push-адресов пользователя |
Пример запроса
GET https://<hostname>/STS/ums/user/7d68d4f6-c398-4ce1-a217-8a097da42294/pushaddress/false HTTP/1.1
Пример ответа
GET HTTP/1.1 200 OK
[
{
"PushAddress": {
"Address": "de0VprzIT9qXTT6fjhMTZv:APA91bFY2F3j-MfI4YqfUl_bVu-3MMj0mMh6_Sv1cLCKKSNtfBsxEcCtYzkV6z-5_HNGp169e0pWMJ_5410377u4Yx2xPHdUsqJv9zkV7tJNBRsXt-d6FmchqIlc4p7ptUUmZU2zIaZh",
"OsType": 2,
"SystemId": "4dd5e996-50e8-4d08-a68d-1ac2ce0a14e4"
},
"SystemId": "4dd5e996-50e8-4d08-a68d-1ac2ce0a14e4",
"SystemName": "feniksmydss",
"Kid": "1389544",
"DeviceName": "HUAWEI P30 Pro DD/*/d73b23435c947219",
"State": "Active",
"ExtendedInfo": null,
"DataSource": "Tokens",
"Type": "PushAddress",
"Contact": "{\"Address\":\"de0VprzIT9qXTT6fjhMTZv:APA91bFY2F3j-MfI4YqfUl_bVu-3MMj0mMh6_Sv1cLCKKSNtfBsxEcCtYzkV6z-5_HNGp169e0pWMJ_5410377u4Yx2xPHdUsqJv9zkV7tJNBRsXt-d6FmchqIlc4p7ptUUmZU2zIaZh\",\"OsType\":2,\"SystemId\":\"4dd5e996-50e8-4d08-a68d-1ac2ce0a14e4\"}",
"Confirmed": false,
"Primary": false,
"Notification": false,
"Usages": null
}
]
Получение списка Push-адресов с возможностью фильтрации
GetUserPushAddresses
Параметр | Значение |
---|---|
HTTP-метод | GET |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/pushaddress |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) PushAddressFilter - фильтр информации о PUSH-адресе пользователя |
Параметры в теле запроса | - |
Возвращаемое значение | List<PushAddressContactInfo> - список Push-адресов пользователя |
Пример запроса
GET https://{{FeniksStand}}/{{feniksidp}}/ums/user/07ddacc4-cf5f-4ae4-8d9c-3caf7c6a9e3e/pushaddress?DataSource=all&ActiveOnly=false
Пример ответа
HTTP/1.1 200 OK
[
{
"PushAddress": {
"Address": "de0VprzIT9qXTT6fjhMTZv:APA91bFY2F3j-MfI4YqfUl_bVu-3MMj0mMh6_Sv1cLCKKSNtfBsxEcCtYzkV6z-5_HNGp169e0pWMJ_5410377u4Yx2xPHdUsqJv9zkV7tJNBRsXt-d6FmchqIlc4p7ptUUmZU2zIaZh",
"OsType": 2,
"SystemId": "4dd5e996-50e8-4d08-a68d-1ac2ce0a14e4"
},
"SystemId": "4dd5e996-50e8-4d08-a68d-1ac2ce0a14e4",
"SystemName": "feniksmydss",
"Kid": "1389544",
"DeviceName": "HUAWEI P30 Pro DD/*/d73b23435c947219",
"State": "Active",
"ExtendedInfo": null,
"DataSource": "All",
"Type": "PushAddress",
"Contact": "{\"Address\":\"de0VprzIT9qXTT6fjhMTZv:APA91bFY2F3j-MfI4YqfUl_bVu-3MMj0mMh6_Sv1cLCKKSNtfBsxEcCtYzkV6z-5_HNGp169e0pWMJ_5410377u4Yx2xPHdUsqJv9zkV7tJNBRsXt-d6FmchqIlc4p7ptUUmZU2zIaZh\",\"OsType\":2,\"SystemId\":\"4dd5e996-50e8-4d08-a68d-1ac2ce0a14e4\"}",
"Confirmed": true,
"Primary": false,
"Notification": false,
"Usages": []
}
]
Восстановление PUSH-адреса для оповещения пользователя
Метод используется, если по некоторым причинам PUSH-адрес, связанный с мобильным устройством пользователя, был удален из контактной информации пользователя.
RestoreUserPushAdressContact
Параметр | Значение |
---|---|
HTTP-метод | POST, PATCH |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/pushaddress/restore |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | PushAddressInfo - информация о PUSH-адресе устройства пользователя |
Возвращаемое значение | PushAddressContactInfo - информация о Push-адресе пользователя |
Пример запроса
POST https://{{FeniksStand}}/{{feniksidp}}/ums/user/07ddacc4-cf5f-4ae4-8d9c-3caf7c6a9e3e/pushaddress/restore
{
"Address": "de0VprzIT9qXTT6fjhMTZv:APA91bFY2F3j-MfI4YqfUl_bVu-3MMj0mMh6_Sv1cLCKKSNtfBsxEcCtYzkV6z-5_HNGp169e0pWMJ_5410377u4Yx2xPHdUsqJv9zkV7tJNBRsXt-d6FmchqIlc4p7ptUUmZU2zIaZh",
"OsType": 2,
"SystemId": "4dd5e996-50e8-4d08-a68d-1ac2ce0a14e4"
}
Пример ответа
HTTP/1.1 200 OK
{
"PushAddress": {
"Address": "de0VprzIT9qXTT6fjhMTZv:APA91bFY2F3j-MfI4YqfUl_bVu-3MMj0mMh6_Sv1cLCKKSNtfBsxEcCtYzkV6z-5_HNGp169e0pWMJ_5410377u4Yx2xPHdUsqJv9zkV7tJNBRsXt-d6FmchqIlc4p7ptUUmZU2zIaZh",
"OsType": 2,
"SystemId": "4dd5e996-50e8-4d08-a68d-1ac2ce0a14e4"
},
"SystemId": "4dd5e996-50e8-4d08-a68d-1ac2ce0a14e4",
"SystemName": "feniksmydss",
"Kid": "1389544",
"DeviceName": "HUAWEI P30 Pro DD/*/d73b23435c947219",
"State": "Active",
"ExtendedInfo": null,
"DataSource": "All",
"Type": "PushAddress",
"Contact": "{\"Address\":\"de0VprzIT9qXTT6fjhMTZv:APA91bFY2F3j-MfI4YqfUl_bVu-3MMj0mMh6_Sv1cLCKKSNtfBsxEcCtYzkV6z-5_HNGp169e0pWMJ_5410377u4Yx2xPHdUsqJv9zkV7tJNBRsXt-d6FmchqIlc4p7ptUUmZU2zIaZh\",\"OsType\":2,\"SystemId\":\"4dd5e996-50e8-4d08-a68d-1ac2ce0a14e4\"}",
"Confirmed": true,
"Primary": false,
"Notification": false,
"Usages": null
}
Включение оповещения пользователя посредством PUSH-уведомлений
SetUserNotificationPushAdress
Параметр | Значение |
---|---|
HTTP-метод | POST, PATCH |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/pushaddress/notification/{notification} |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) notification - флаг, позволяющий включить (true) или отключить (false) оповещение при помощи PUSH-уведомлений (не является частью query string) |
Параметры в теле запроса | PushAddressInfo - информация о PUSH-адресе устройства пользователя |
Возвращаемое значение | PushAddressContactInfo - информация о Push-адресе пользователя |
Пример запроса
POST https://{{FeniksStand}}/{{feniksidp}}/ums/user/07ddacc4-cf5f-4ae4-8d9c-3caf7c6a9e3e/pushaddress/notification/true
{
"Address": "de0VprzIT9qXTT6fjhMTZv:APA91bFY2F3j-MfI4YqfUl_bVu-3MMj0mMh6_Sv1cLCKKSNtfBsxEcCtYzkV6z-5_HNGp169e0pWMJ_5410377u4Yx2xPHdUsqJv9zkV7tJNBRsXt-d6FmchqIlc4p7ptUUmZU2zIaZh",
"OsType": 2,
"SystemId": "4dd5e996-50e8-4d08-a68d-1ac2ce0a14e4"
}
Пример ответа
HTTP/1.1 200 OK
[
{
"PushAddress": {
"Address": "de0VprzIT9qXTT6fjhMTZv:APA91bFY2F3j-MfI4YqfUl_bVu-3MMj0mMh6_Sv1cLCKKSNtfBsxEcCtYzkV6z-5_HNGp169e0pWMJ_5410377u4Yx2xPHdUsqJv9zkV7tJNBRsXt-d6FmchqIlc4p7ptUUmZU2zIaZh",
"OsType": 2,
"SystemId": "4dd5e996-50e8-4d08-a68d-1ac2ce0a14e4"
},
"SystemId": "4dd5e996-50e8-4d08-a68d-1ac2ce0a14e4",
"SystemName": "feniksmydss",
"Kid": "1389544",
"DeviceName": "HUAWEI P30 Pro DD/*/d73b23435c947219",
"State": "Active",
"ExtendedInfo": null,
"DataSource": "All",
"Type": "PushAddress",
"Contact": "{\"Address\":\"de0VprzIT9qXTT6fjhMTZv:APA91bFY2F3j-MfI4YqfUl_bVu-3MMj0mMh6_Sv1cLCKKSNtfBsxEcCtYzkV6z-5_HNGp169e0pWMJ_5410377u4Yx2xPHdUsqJv9zkV7tJNBRsXt-d6FmchqIlc4p7ptUUmZU2zIaZh\",\"OsType\":2,\"SystemId\":\"4dd5e996-50e8-4d08-a68d-1ac2ce0a14e4\"}",
"Confirmed": true,
"Primary": false,
"Notification": true,
"Usages": []
}
]
Удаление PUSH-адреса пользователя
DeleteUserPushAddress
Параметр | Значение |
---|---|
HTTP-метод | DELETE |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/pushaddress/ |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | PushAddressInfo - информация о PUSH-адресе устройства пользователя |
Возвращаемое значение | PushAddressContactInfo - информация о Push-адресе пользователя |
Пример запроса
DELETE https://{{FeniksStand}}/{{feniksidp}}/ums/user/07ddacc4-cf5f-4ae4-8d9c-3caf7c6a9e3e/pushaddress/ HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
[
{
"PushAddress": {
"Address": "de0VprzIT9qXTT6fjhMTZv:APA91bFY2F3j-MfI4YqfUl_bVu-3MMj0mMh6_Sv1cLCKKSNtfBsxEcCtYzkV6z-5_HNGp169e0pWMJ_5410377u4Yx2xPHdUsqJv9zkV7tJNBRsXt-d6FmchqIlc4p7ptUUmZU2zIaZh",
"OsType": 2,
"SystemId": "4dd5e996-50e8-4d08-a68d-1ac2ce0a14e4"
},
"SystemId": "4dd5e996-50e8-4d08-a68d-1ac2ce0a14e4",
"SystemName": "feniksmydss",
"Kid": "1389544",
"DeviceName": "HUAWEI P30 Pro DD/*/d73b23435c947219",
"State": "Active",
"ExtendedInfo": null,
"DataSource": "All",
"Type": "PushAddress",
"Contact": "{\"Address\":\"de0VprzIT9qXTT6fjhMTZv:APA91bFY2F3j-MfI4YqfUl_bVu-3MMj0mMh6_Sv1cLCKKSNtfBsxEcCtYzkV6z-5_HNGp169e0pWMJ_5410377u4Yx2xPHdUsqJv9zkV7tJNBRsXt-d6FmchqIlc4p7ptUUmZU2zIaZh\",\"OsType\":2,\"SystemId\":\"4dd5e996-50e8-4d08-a68d-1ac2ce0a14e4\"}",
"Confirmed": true,
"Primary": false,
"Notification": true,
"Usages": []
}
]
Настройка протокола OATH (одноразовые пароли на брелках)
Назначение пользователю токена аутентификации HOTP или TOTP
SetUserOtpToken
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/oath |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | OAthTokenInfo - информация о токене, назначаемом пользователю |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/6e9eeeec-6a73-4b06-9274-4ba2e7216ed4/oath HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 62
{
"Serial": "AA000001",
"FirstOtp": "189034",
"SecondOtp": "223303"
}
Пример ответа
HTTP/1.1 200 OK
Получение информации о прикрепленном к пользователю токене
GetUserOtpTokenInfo
Параметр | Значение |
---|---|
HTTP-метод | GET |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/oath |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | UserOtpTokenInfo - Информация об OTP-токене пользователя |
Пример запроса
GET https://<hostname>/STS/ums/user/6e9eeeec-6a73-4b06-9274-4ba2e7216ed4/oath HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 35
{
"Serial": "AA000001",
"Type": "HOTP"
}
Удаление закрепленного за пользователем токена
RemoveUserOtpToken
Параметр | Значение |
---|---|
HTTP-метод | DELETE |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/oath |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
DELETE https://<hostname>/STS/ums/user/612a7f3f-49a1-48ed-ac27-d47062f68b1a/oath HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Общие настройки аутентификации
Получение схемы аутентификации пользователя
GetUserAuthenticationScheme
Параметр | Значение |
---|---|
HTTP-метод | GET |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/authmethod |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | List<AuthenticationInfo> - Список с информацией о шагах схемы аутентификации пользователя |
Пример запроса
GET https://<hostname>/STS/ums/user/b6e54b50-b047-46d5-9915-3d2a72fc5a45/authmethod HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 194
[{
"MethodUri": "http: //schemas.microsoft.com/ws/2012/09/identity/authenticationmethod/none",
"Level": 0
},
{
"MethodUri": "http: //dss.cryptopro.ru/identity/authenticationmethod/otpviaemail",
"Level": 1
}]
Назначение метода аутентификации пользователя Identification Only
SetUserAuthenticationMethodIdOnly
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/authmethod/idonly |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/e6c3240b-e9f8-44c1-b662-0e0937883eaa/authmethod/idonly HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 2
{}
Пример ответа
HTTP/1.1 200 OK
Удаление метода аутентификации пользователя Identification Only
DeleteUserAuthenticationMethodIdOnly
Параметр | Значение |
---|---|
HTTP-метод | DELETE |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/authmethod/idonly |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
DELETE https://<hostname>/STS/ums/user/e33d3b69-4461-4789-a9cc-ce07f8bfca07/authmethod/idonly HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Назначение метода аутентификации пользователя по паролю
SetUserAuthenticationMethodPassword
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/authmethod/password |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/958186d2-5514-4ab3-8f22-ae9c34417675/authmethod/password HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 2
{}
Пример ответа
HTTP/1.1 200 OK
Удаление метода аутентификации пользователя по паролю
DeleteUserAuthenticationMethodPasword
Параметр | Значение |
---|---|
HTTP-метод | DELETE |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/authmethod/password |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
DELETE https://<hostname>/STS/ums/user/87f0e53f-04d5-4462-8e8f-06a58e48e008/authmethod/password HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Назначение метода аутентификации пользователя по сертификату
SetUserAuthenticationMethodCert
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/authmethod/cert |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/dc723f91-2728-426c-a18b-fe5c5d2499b9/authmethod/cert HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 2
{}
Пример ответа
HTTP/1.1 200 OK
Удаление метода аутентификации пользователя по сертификату
DeleteUserAuthenticationMethodCert
Параметр | Значение |
---|---|
HTTP-метод | DELETE |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/authmethod/cert |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
DELETE https://<hostname>/STS/ums/user/87f0e53f-04d5-4462-8e8f-06a58e48e008/authmethod/cert HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Назначение метода аутентификации пользователя через внешний ЦИ
SetUserAuthenticationMethodSaml
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/authmethod/external |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/399397a2-7d86-42fa-a95a-5a943db1aea2/authmethod/external HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 2
{}
Пример ответа
HTTP/1.1 200 OK
Удаление метода аутентификации пользователя через внешний ЦИ
DeleteUserAuthenticationMethodSaml
Параметр | Значение |
---|---|
HTTP-метод | DELETE |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/authmethod/external |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
DELETE https://<hostname>/STS/ums/user/87f0e53f-04d5-4462-8e8f-06a58e48e008/authmethod/external HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Назначение метода аутентификации пользователя через одноразовые пароли по SMS
SetUserAuthenticationMethodOtpViaSms
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/authmethod/otpviasms |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) level - Шаг аутентификации (int) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/7184647a-fc20-4a23-a77f-9a1c6172c82b/authmethod/otpviasms?level=1 HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 2
{}
Пример ответа
HTTP/1.1 200 OK
Удаление метода аутентификации пользователя через одноразовые пароли по SMS
DeleteUserAuthenticationMethodOtpViaSms
Параметр | Значение |
---|---|
HTTP-метод | DELETE |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/authmethod/otpviasms |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
DELETE https://<hostname>/STS/ums/user/87f0e53f-04d5-4462-8e8f-06a58e48e008/authmethod/otpviasms HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Назначение метода аутентификации пользователя через одноразовые пароли по электронной почте
SetUserAuthenticationMethodOtpViaEmail
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/authmethod/otpviaemail |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) level - Шаг аутентификации (int) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/b6e54b50-b047-46d5-9915-3d2a72fc5a45/authmethod/otpviaemail?level=1 HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 2
{}
Пример ответа
HTTP/1.1 200 OK
Удаление метода аутентификации пользователя через одноразовые пароли по электронной почте
DeleteUserAuthenticationMethodOtpViaEmail
Параметр | Значение |
---|---|
HTTP-метод | DELETE |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/authmethod/otpviaemail |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
DELETE https://<hostname>/STS/ums/user/7f0f902e-dc9b-462e-a3c3-c4d6b21ba013/authmethod/otpviaemail HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Назначение метода аутентификации пользователя через OTP-токен
SetUserAuthenticationMethodOAth
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/authmethod/oath |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) level - Шаг аутентификации (int) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/6e9eeeec-6a73-4b06-9274-4ba2e7216ed4/authmethod/oath?level=1 HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 2
{}
Пример ответа
HTTP/1.1 200 OK
Удаление метода аутентификации пользователя через OTP-токен
DeleteUserAuthenticationMethodOAth
Параметр | Значение |
---|---|
HTTP-метод | DELETE |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/authmethod/oath |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
DELETE https://<hostname>/STS/ums/user/87f0e53f-04d5-4462-8e8f-06a58e48e008/authmethod/oath HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Назначение метода аутентификации пользователя при помощи апплета на SIM-карте (SimAuth)
SetUserAuthenticationMethodSimAuth
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/authmethod/simauth |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) level - Шаг аутентификации (int) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/58149f21-fbad-4606-a2d3-e80141e85a11/authmethod/simauth?level=1 HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 2
{}
Пример ответа
HTTP/1.1 200 OK
Удаление метода аутентификации пользователя при помощи апплета на SIM-карте (SimAuth)
DeleteUserAuthenticationMethodSimAuth
Параметр | Значение |
---|---|
HTTP-метод | DELETE |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/authmethod/simauth |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
DELETE https://<hostname>/STS/ums/user/4740e82c-0054-401c-aceb-c13ba6a0a4cd/authmethod/simauth HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Назначение метода аутентификации пользователя при помощи мобильного приложения myDSS (MobileAuth)
SetUserAuthenticationMethodMobileAuth
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/authmethod/mobileauth |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) level - Шаг аутентификации (int) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/58149f21-fbad-4606-a2d3-e80141e85a11/authmethod/mobileauth?level=1 HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 2
{}
Пример ответа
HTTP/1.1 200 OK
Удаление метода аутентификации пользователя при помощи мобильного приложения myDSS (MobileAuth)
DeleteUserAuthenticationMethodMobileAuth
Параметр | Значение |
---|---|
HTTP-метод | DELETE |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/authmethod/mobileauth |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
DELETE https://<hostname>/STS/ums/user/87f0e53f-04d5-4462-8e8f-06a58e48e008/authmethod/mobileauth HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Назначение метода аутентификации пользователя при помощи мобильного приложения на базе DSS SDK (DSS Client)
SetUserAuthenticationMethodMyDss
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/authmethod/mydss |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) level - Шаг аутентификации (int) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/58149f21-fbad-4606-a2d3-e80141e85a11/authmethod/mydss?level=1 HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 2
{}
Пример ответа
HTTP/1.1 200 OK
Удаление метода аутентификации пользователя при помощи мобильного приложения на базе DSS SDK (DSS Client)
DeleteUserAuthenticationMethodMyDss
Параметр | Значение |
---|---|
HTTP-метод | DELETE |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/authmethod/mydss |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
DELETE https://<hostname>/STS/ums/user/87f0e53f-04d5-4462-8e8f-06a58e48e008/authmethod/mydss HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
-->
Получение подробной аутентификационной информации пользователя
GetUserRawAuthenticationDataAsync
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/rawauthdata |
Параметры в строке запроса | - |
Параметры в теле запроса | UserRawAuthDataRequest - Запрос на аутентификационную информацию пользователя |
Возвращаемое значение | Сведения о запрошенных методах аутентификации пользователя (String) |
Пример запроса
POST https://<hostname>/STS/ums/user/rawauthdata HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 208
{
"UserId": "9fba6076-3509-4e8e-abc1-dae6d052a230",
"AuthnMethods": ["http: //dss.cryptopro.ru/identity/authenticationmethod/password", "http: //dss.cryptopro.ru/identity/authenticationmethod/otpviasms"],
"Format": 0
}
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 460
"{\"UserId\": \"9fba6076-3509-4e8e-abc1-dae6d052a230\",\"AuthMethodInfos\": [{\"AuthnMethod\": \"http: //dss.cryptopro.ru/identity/authenticationmethod/password\",\"Confirmed\": true,\"Parameters\": [{\"Key\": \"HasPassword\",\"Value\": \"True\"}]},{\"AuthnMethod\": \"http: //dss.cryptopro.ru/identity/authenticationmethod/otpviasms\",\"Confirmed\": true,\"Parameters\": [{\"Key\": \"PhoneNumber\",\"Value\": \"78889996655\"},{\"Key\": \"Confirmed\",\"Value\": \"true\"}]}]}"
Настройка аутентификации при помощи апплета на SIM-карте (SimAuth)
Назначение пользователю токена для аутентификации SimAuth
SetUserSimAuthToken
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/simauth |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | SimAuthTokenInfo - Информация о SIM-карте |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/58149f21-fbad-4606-a2d3-e80141e85a11/simauth HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 81
{
"IccId": "896010265977857677",
"ProfileId": "3e906aff-8639-463e-af59-07a44a96dd21",
"PhoneNumber": "79150000000"
}
Пример ответа
HTTP/1.1 200 OK
Получение сведений о назначенном пользователю токене аутентификации SimAuth
GetUserSimAuthTokenInfo
Параметр | Значение |
---|---|
HTTP-метод | GET |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/simauth |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | UserSimAuthInfo - Информация о SIM-карте пользователя |
Пример запроса
GET https://<hostname>/STS/ums/user/58149f21-fbad-4606-a2d3-e80141e85a11/simauth HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 151
{
"IccId": "896010265977857677",
"ProfileId": "3e906aff-8639-463e-af59-07a44a96dd21",
"PhoneNumber": "79150000000",
"ActivationCode": null,
"LastKnownStatus": 0
}
Обновление токена аутентификации SimAuth
UpdateSimAuthToken
Параметр | Значение |
---|---|
HTTP-метод | PATCH |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/simauth |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | keyId - идентификатор ключа SIM-карты |
Возвращаемое значение | - |
Пример запроса
PATCH https://<hostname>/STS/ums/user/58149f21-fbad-4606-a2d3-e80141e85a11/simauth HTTP/1.1
"896010265977857677"
Пример ответа
HTTP/1.1 200 OK
Удаление у пользователя токена для аутентификации SimAuth
RemoveUserSimAuthToken
Параметр | Значение |
---|---|
HTTP-метод | DELETE |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/simauth |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
DELETE https://<hostname>/STS/ums/user/4740e82c-0054-401c-aceb-c13ba6a0a4cd/simauth HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Отправка запроса к апплету на SIM-карте
SendSimAuthTokenMessage
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/simauth/message/{messageType} |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) LifecycleMessageType - Тип сообщения, связанного с жизненным циклом апплета (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | Идентификатор запроса к SIM-карте (String) |
Пример запроса
POST https://<hostname>/STS/ums/user/ed124c3b-e518-4a3e-9100-c492ae0b2f0c/simauth/message/GetStatus HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 2
{}
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 9
"7975336"
Отправка запроса к апплету на обновление ключа аутентификации SIM-карты
SendSimAuthTokenChangeKeyMessage
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/simauth/changekeymessage |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | SimAuthChangeKeyRequestResult - Результат отправки запроса на смену ключа аутентификации |
Пример запроса
POST https://<hostname>/STS/ums/user/e74dabec-6c91-4329-970f-361293c5f7a6/simauth/changekeymessage HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 2
{}
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 162
{
"TransactionId": "16211709",
"ActivationCode2": ["4899304416","4856874867","3298082352","4329367605","3563813072","1989944545","306179350","2431789802","14006880"]
}
Получение результата выполнения запроса к апплету на SIM-карте
GetSimAuthTokenMessage
Параметр | Значение |
---|---|
HTTP-метод | GET |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/simauth/message/{transactionId} |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) transactionId - Идентификатор транзакции\операции (Параметр RefID в ответе Сервиса Подписи\Сервиса Операций) |
Параметры в теле запроса | - |
Возвращаемое значение | SimAuthLifecycleMessageStatusRest - Статус операции |
Пример запроса
GET https://<hostname>/STS/ums/user/ed124c3b-e518-4a3e-9100-c492ae0b2f0c/simauth/message/7975336 HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 64
{
"AppletResult": 0,
"IsCompleted": false,
"MessageType": "GetStatus"
}
Настройка аутентификации при помощи мобильного приложения myDSS (MobileAuth)
Генерация и назначение пользователю токена аутентификации MobileAuth
CreateUserMobileAuthToken
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/mobileauth |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | MobileAuthTokenInfo - Информация о токене аутентификации MobileAuth |
Возвращаемое значение | MobileAuthCreateInfoEx - Информация о созданном ключе аутентификации MobileAuth |
Пример запроса
POST https://<hostname>/STS/ums/user/9fba6076-3509-4e8e-abc1-dae6d052a230/mobileauth HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 118
{
"UserContactInfo": "78889996655",
"UserContactInfoType": "PhoneNumber",
"NeedXmlKeyInfo": false,
"DelayedActivation": false
}
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 7687
{
"XmlKeyInfo": "",
"ExternalUserId": "6222662c-d0c5-4077-8942-be328999fdbd",
"QrCode": "R0lGODlhLAEsAfcA......AOw==",
"KeyExpirationTime": "2019-06-29T00: 00: 00"
}
Назначение пользователю существующего токена аутентификации MobileAuth
AssignUserMobileAuthToken
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/mobileauth/assign |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | AssignMobileAuthTokenInfo - Информация о существующем токене аутентификации MobileAuth |
Возвращаемое значение | UserMobileAuthInfo - Информация о созданном ключе аутентификации MobileAuth |
Пример запроса
POST https://<hostname>/STS/ums/user/9fba6076-3509-4e8e-abc1-dae6d052a230/mobileauth/assign HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 148
{
"Serial": "418551002761789440",
"UserContactInfo": "78889996655",
"UserContactInfoType": "PhoneNumber",
"NeedXmlKeyInfo": false,
"DelayedActivation": false
}
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 184
{
"UserId": "9c937c8e-7e27-4105-b306-974fce87cdd1",
"KeyExpirationTime": "2019-06-29T00: 00: 00",
"IsInstalled": false,
"InstallDate": "0001-01-01T00: 00: 00",
"HasDelayedKey": false,
"KeyVersion": 1
}
Получение информации о ключе аутентификации MobileAuth
GetUserMobileAuthTokenInfo
Параметр | Значение |
---|---|
HTTP-метод | GET |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/mobileauth |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | UserMobileAuthInfo - Информация о созданном ключе аутентификации MobileAuth |
Пример запроса
GET https://<hostname>/STS/ums/user/9fba6076-3509-4e8e-abc1-dae6d052a230/mobileauth HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 184
{
"UserId": "9c937c8e-7e27-4105-b306-974fce87cdd1",
"KeyExpirationTime": "2019-06-29T00: 00: 00",
"IsInstalled": false,
"InstallDate": "0001-01-01T00: 00: 00",
"HasDelayedKey": false,
"KeyVersion": 1
}
Повторная отправка кода активации MobileAuth
ResendUserMobileAuthActivationCode
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/mobileauth/activationcode |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | MobileAuthTokenInfo - Информация о токене аутентификации MobileAuth |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/9fba6076-3509-4e8e-abc1-dae6d052a230/mobileauth/activationcode HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 118
{
"UserContactInfo": "78889996655",
"UserContactInfoType": "PhoneNumber",
"NeedXmlKeyInfo": false,
"DelayedActivation": false
}
Пример ответа
HTTP/1.1 200 OK
Обновление ключевой информации MobileAuth пользователя
UpdateUserMobileAuthToken
Параметр | Значение |
---|---|
HTTP-метод | PATCH |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/mobileauth |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | MobileAuthTokenInfo - Информация о токене аутентификации MobileAuth |
Возвращаемое значение | MobileAuthUpdateInfoEx - Информация об обновленном ключе аутентификации MobileAuth |
Пример запроса
PATCH https://<hostname>/STS/ums/user/9fba6076-3509-4e8e-abc1-dae6d052a230/mobileauth HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 118
{
"UserContactInfo": "78889996655",
"UserContactInfoType": "PhoneNumber",
"NeedXmlKeyInfo": false,
"DelayedActivation": false
}
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 7671
{
"XmlKeyInfo": "",
"QrCode": "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",
"KeyExpirationTime": "2019-06-29T00: 00: 00"
}
Задание отпечатка мобильного устройства пользователя
SetUserMobileAuthDeviceThumbprint
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/mobileauth/thumbprint |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | deviceThumbprint - Отпечаток устройства пользователя |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/9fba6076-3509-4e8e-abc1-dae6d052a230/mobileauth/thumbprint HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 14
"12AC65BE0424"
Пример ответа
HTTP/1.1 200 OK
Удаление ключа аутентификации MobileAuth
DeleteUserMobileAuthToken
Параметр | Значение |
---|---|
HTTP-метод | DELETE |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/mobileauth |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
DELETE https://<hostname>/STS/ums/user/9fba6076-3509-4e8e-abc1-dae6d052a230/mobileauth HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Настройка аутентификации DSS Client
- Назначить пользователю существующее мобильное устройство
- Создание QR-кода с Kinit
- Получение существующего QR-кода с Kinit
- Повторная отправка кода активации на KInit
- Удалить QR-код с Kinit
Назначение пользователю существующего мобильного устройства
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/mydss/assign |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | MyDssAssignKeyRequest - Информация о добавляемом устройстве |
Возвращаемое значение | MyDssKeyInfo - Информация об устройстве |
Пример запроса
POST https://<hostname>/STS/ums/user/8d16086d-676c-49d6-bf49-09e6f936a596/mydss/assign HTTP/1.1
Content-Type: application/json; charset=utf-8
{"Kid":"73128110"}
Пример ответа
HTTP/1.1 200 OK
{
"Uid":"8d16086d-676c-49d6-bf49-09e6f936a596",
"Kid":"73128110",
"DeviceName":"MyApple",
"NotBefore":1574869065,
"NotAfter":1614440265,
"State":"NotVerified",
"UserName":"MdagTestUser-D547B268",
"Profile":"{\"Version\":1,\"Keys\":{\"1\":\"%D0%9E%D0%93%D0%A0%D0%9D\",\"2\":\"%D0%9E%D0%93%D0%A0%D0%9D%D0%98%D0%9F\",\"3\":\"%D0%A1%D0%9D%D0%98%D0%9B%D0%A1\",\"4\":\"%D0%98%D0%9D%D0%9D\",\"5\":\"%D0%AD%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%BE%D0%BD%D0%BD%D0%B0%D1%8F %D0%BF%D0%BE%D1%87%D1%82%D0%B0\",\"6\":\"%D0%A1%D1%82%D1%80%D0%B0%D0%BD%D0%B0\",\"7\":\"%D0%9E%D0%B1%D0%BB%D0%B0%D1%81%D1%82%D1%8C\",\"8\":\"%D0%93%D0%BE%D1%80%D0%BE%D0%B4\",\"9\":\"%D0%9E%D1%80%D0%B3%D0%B0%D0%BD%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F\",\"10\":\"%D0%9F%D0%BE%D0%B4%D1%80%D0%B0%D0%B7%D0%B4%D0%B5%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5\",\"11\":\"%D0%9E%D0%B1%D1%89%D0%B5%D0%B5 %D0%B8%D0%BC%D1%8F\",\"12\":\"%D0%90%D0%B4%D1%80%D0%B5%D1%81\",\"13\":\"%D0%94%D0%BE%D0%BB%D0%B6%D0%BD%D0%BE%D1%81%D1%82%D1%8C\",\"14\":\"%D0%98%D0%BD%D0%B8%D1%86%D0%B8%D0%B0%D0%BB%D1%8B\",\"15\":\"%D0%98%D0%BC%D1%8F\",\"16\":\"%D0%A4%D0%B0%D0%BC%D0%B8%D0%BB%D0%B8%D1%8F\"},\"Values\":{}}",
"NonceRequired":true
}
Типовые ошибки
HTTP-код | Ошибка | Описание |
---|---|---|
404 | Пользователь не найден | |
400 | key_not_found | Анонимное устройство с идентификатором [ kid ] не найдено. |
Создание QR-кода с Kinit
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/mydss/init |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (query string) |
Параметры в теле запроса | MyDssKInitRequest - Информация для отправки кода активации |
Возвращаемое значение | MyDssCreatedKeyInfo - Информация об устройстве и K-init |
Примечание
Если настройками сервера отключено требование кодов активации KInit, то параметры Msisdn
и Email
игнорируются.
Примечание
Если настройками сервера включено требование подтверждения контактной информации, то указанные в
параметрах Msisdn
и Email
должны быть заранее зарегистрированы в профиле пользователя.
Если требование подтверждения контактной информации отключено, то код активации KInit будет отправлен на указанный номер телефона или Email. Значения номера телефона или Email не заносятся в профиль пользователя.
Пример запроса
POST https://<hostname>/STS/ums/user/33f03deb-9e31-42ce-a660-1a456190f4a3/mydss/init HTTP/1.1
Content-Type: application/json; charset=utf-8
{}
Пример ответа
HTTP/1.1 200 OK
{
"KeyInfo":
{
"EncryptedBlobs":"ASAAA ... ADQBS9V",
"PublicKey":null,
"Seed":null,
"ActivationRequired":false,
"ServiceUrl":"https:/hostname:4430/mydss",
"Alias":null,
"Uid":"33f03deb-9e31-42ce-a660-1a456190f4a3",
"Kid":"73128502",
"DeviceName":null,
"NotBefore":1574880257,
"NotAfter":1614451457,
"State":"Active",
"UserName":null,
"Profile":null,
"NonceRequired":false
},
"QrCode":"R0lGODlhLAEsAf...",
"QRCodeData": "{\"type\":\"Kinit\",\"version\":1,\"data\":{\"kid\":\"73128502\",\"uid\":\"33f03deb-9e31-42ce-a660-1a456190f4a3\",\"service_url\":\"https://hostname:4430/mydss\",\"key_content\":\"ASAAAB5mAA ... BS9V\",\"activation_required\":false,\"weakness\":true}}"
}
HTTP-код | Ошибка | Описание |
---|---|---|
404 | Пользователь не найден | |
400 | initialization_key_already_exists | У пользователя уже есть ключ инициализации нового устойства. |
400 | invalid_contact_info | * Параметр [Msisdn] не задан или имеет невалидный формат. * Нет возможности отправить вторую часть ключевой информации: не задана контактная информация пользователя. |
400 | wrong_operation | * Нет возможности отправить вторую часть ключевой информации: не настроен модуль оповещения. * Контактная информация [ contact ] типа [contactType ] не добавлена для этого пользователя. |
400 | invalid_license | |
500 | internal_error | Внутренняя ошибка сервиса. Необходимо обратиться к Администратору. |
Получение существующего QR-кода с Kinit
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/mydss/init/get |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | MyDssCreatedKeyInfo - Информация об устройстве и K-init |
Пример запроса
POST https://<hostname>/STS/ums/user/9fba6076-3509-4e8e-abc1-dae6d052a230/mydss/init/get HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
{
"KeyInfo":
{
"EncryptedBlobs":"ASAAA ... ADQBS9V",
"PublicKey":null,
"Seed":null,
"ActivationRequired":false,
"ServiceUrl":"https:/hostname:4430/mydss",
"Alias":null,
"Uid":"33f03deb-9e31-42ce-a660-1a456190f4a3",
"Kid":"73128502",
"DeviceName":null,
"NotBefore":1574880257,
"NotAfter":1614451457,
"State":"Active",
"UserName":null,
"Profile":null,
"NonceRequired":false
},
"QrCode":"R0lGODlhLAEsAf...",
"QRCodeData": "{\"type\":\"Kinit\",\"version\":1,\"data\":{\"kid\":\"73128502\",\"uid\":\"33f03deb-9e31-42ce-a660-1a456190f4a3\",\"service_url\":\"https://hostname:4430/mydss\",\"key_content\":\"ASAAAB5mAA ... BS9V\",\"activation_required\":false,\"weakness\":true}}"
}
HTTP-код | Ошибка | Описание |
---|---|---|
404 | Пользователь не найден | |
400 | key_not_found | Ключ инициализации не найден. |
Повторная отправка кода активации на KInit
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}mydss/init/resendotp |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | MyDssKInitRequest - Информация для отправки кода активации |
Возвращаемое значение | MyDssCreatedKeyInfo - Информация об устройстве и K-init |
Примечание
Если настройками сервера включено требование подтверждения контактной информации, то указанные в
параметрах Msisdn
и Email
должны быть заранее зарегистрированы в профиле пользователя.
Если требование подтверждения контактной информации отключено, то код активации KInit будет отправлен на указанный номер телефона или Email. Значения номера телефона или Email не заносятся в профиль пользователя.
Пример запроса
POST https://<hostname>/STS/ums/user/33f03deb-9e31-42ce-a660-1a456190f4a3/mydss/init/resendotp HTTP/1.1
Content-Type: application/json; charset=utf-8
{"msisdn":"71234567890"}
Пример ответа
HTTP/1.1 200 OK
{
"KeyInfo":
{
"EncryptedBlobs":"ASAAA ... ADQBS9V",
"PublicKey":null,
"Seed":null,
"ActivationRequired":false,
"ServiceUrl":"https:/hostname:4430/mydss",
"Alias":null,
"Uid":"33f03deb-9e31-42ce-a660-1a456190f4a3",
"Kid":"73128502",
"DeviceName":null,
"NotBefore":1574880257,
"NotAfter":1614451457,
"State":"Active",
"UserName":null,
"Profile":null,
"NonceRequired":false
},
"QrCode":"R0lGODlhLAEsAf...",
"QRCodeData": "{\"type\":\"Kinit\",\"version\":1,\"data\":{\"kid\":\"73128502\",\"uid\":\"33f03deb-9e31-42ce-a660-1a456190f4a3\",\"service_url\":\"https://hostname:4430/mydss\",\"key_content\":\"ASAAAB5mAA ... BS9V\",\"activation_required\":false,\"weakness\":true}}"
}
HTTP-код | Ошибка | Описание |
---|---|---|
404 | Пользователь не найден | |
400 | key_not_found | Ключ инициализации не найден. |
400 | invalid_contact_info | * Параметр [Msisdn] не задан или имеет невалидный формат. * Нет возможности отправить вторую часть ключевой информации: не задана контактная информация пользователя. |
400 | wrong_operation | * У ключа инициализации нового устойства нет кода активации. * Нет возможности отправить вторую часть ключевой информации: не настроен модуль оповещения. * Контактная информация [ contact ] типа [contactType ] не добавлена для этого пользователя. |
Удаление QR-кода с Kinit
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/mydss/init/delete |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | Отсутствует |
Пример запроса
POST https://<hostname>/STS/ums/user/9fba6076-3509-4e8e-abc1-dae6d052a230/mydss/init/delete HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Типовые ошибки
HTTP-код | Ошибка | Описание |
---|---|---|
404 | Пользователь не найден | |
400 | wrong_operation | У пользователя нет ключа инициализации нового устойства. |
Получение QR-код с Nonce
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/mydss/verify/get |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | MyDssGetVerificationDataRequest - Информация об устройстве |
Возвращаемое значение | Отсутствует |
Пример запроса
POST https://<hostname>/STS/ums/user/9fba6076-3509-4e8e-abc1-dae6d052a230/mydss/verify/get HTTP/1.1
Content-Type: application/json; charset=utf-8
{"Kid":"73128110"}
Пример ответа
HTTP/1.1 200 OK
{
"QrCode":"R0lGODlhLA ... RczdZ8zdiczdq8zdzczd78zeAczuI8zuRczuZ8zuisEgEBADs=",
"QrCodeData":"{\"type\":\"Verification\",\"version\":1,\"data\":{\"kid\":\"73128110\",\"uid\":\"8d16086d-676c-49d6-bf49-09e6f936a596\",\"service_url\":\"https://teststand.cryptopro.ru:4430/mydss\",\"seed\":\"DQiMn1xAvdQFQlAR4ceB3NkWaevDppM7klIVOZZssTc=\",\"nonce\":\"cKx+pdmejI/SRz3OQex32wd6vNF7oVni6LsAf7SfOZw=\"}}",
"Data":
{
"type":"Verification",
"version":1,
"data":
{
"kid":"73128110",
"uid":"8d16086d-676c-49d6-bf49-09e6f936a596",
"service_url":"https://hostname:4430/mydss",
"seed":"DQiMn1xAvdQFQlAR4ceB3NkWaevDppM7klIVOZZssTc=",
"nonce":"cKx+pdmejI/SRz3OQex32wd6vNF7oVni6LsAf7SfOZw="
}
}
}
Получение информации о ключах аутентификации myDSS
Параметр | Значение |
---|---|
HTTP-метод | GET |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/mydss |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | UserMyDssAuthInfo - сведения об устройствах пользователя |
Пример запроса
POST https://<hostname>/STS/ums/user/8d16086d-676c-49d6-bf49-09e6f936a596/mydss HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
{
"UserId":"8d16086d-676c-49d6-bf49-09e6f936a596",
"Keys":
[
{
"Uid":"8d16086d-676c-49d6-bf49-09e6f936a596",
"Kid":"73128110",
"DeviceName":"MyApple",
"NotBefore":1574869065,
"NotAfter":1614440265,
"State":"NotVerified",
"UserName":"MdagTestUser-D547B268",
"Profile":"{\"Version\":1,\"Keys\":{\"1\":\"%D0%9E%D0%93%D0%A0%D0%9D\",\"2\":\"%D0%9E%D0%93%D0%A0%D0%9D%D0%98%D0%9F\",\"3\":\"%D0%A1%D0%9D%D0%98%D0%9B%D0%A1\",\"4\":\"%D0%98%D0%9D%D0%9D\",\"5\":\"%D0%AD%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%BE%D0%BD%D0%BD%D0%B0%D1%8F %D0%BF%D0%BE%D1%87%D1%82%D0%B0\",\"6\":\"%D0%A1%D1%82%D1%80%D0%B0%D0%BD%D0%B0\",\"7\":\"%D0%9E%D0%B1%D0%BB%D0%B0%D1%81%D1%82%D1%8C\",\"8\":\"%D0%93%D0%BE%D1%80%D0%BE%D0%B4\",\"9\":\"%D0%9E%D1%80%D0%B3%D0%B0%D0%BD%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F\",\"10\":\"%D0%9F%D0%BE%D0%B4%D1%80%D0%B0%D0%B7%D0%B4%D0%B5%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5\",\"11\":\"%D0%9E%D0%B1%D1%89%D0%B5%D0%B5 %D0%B8%D0%BC%D1%8F\",\"12\":\"%D0%90%D0%B4%D1%80%D0%B5%D1%81\",\"13\":\"%D0%94%D0%BE%D0%BB%D0%B6%D0%BD%D0%BE%D1%81%D1%82%D1%8C\",\"14\":\"%D0%98%D0%BD%D0%B8%D1%86%D0%B8%D0%B0%D0%BB%D1%8B\",\"15\":\"%D0%98%D0%BC%D1%8F\",\"16\":\"%D0%A4%D0%B0%D0%BC%D0%B8%D0%BB%D0%B8%D1%8F\"},\"Values\":{\"5\":\"E12\",\"7\":\"S10\",\"8\":\"L9\",\"9\":\"O8\",\"10\":\"OU7\",\"11\":\"CN6\",\"12\":\"Street5\",\"13\":\"T4\",\"14\":\"I3\",\"15\":\"G2\",\"16\":\"SN1\"}}",
"NonceRequired":true
}
],
"InitializationToken":null}
Блокировка/разблокировка устройства пользователя
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/mydss/lockout |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | MyDssLockoutDeviceRequest - Информация об устройстве |
Возвращаемое значение | MyDssKeyInfo - Обновленная нформация об устройстве |
Пример запроса
POST https://<hostname>/STS/ums/user/9fba6076-3509-4e8e-abc1-dae6d052a230/mydss/lockout HTTP/1.1
Content-Type: application/json; charset=utf-8
{
"Kid": "73128110",
"Lock": true
}
Пример ответа
HTTP/1.1 200 OK
{
"Uid": "9fba6076-3509-4e8e-abc1-dae6d052a230",
"Kid": "73128110",
"DeviceName": "MyApple",
"NotBefore":1574869065,
"NotAfter":1614440265,
"State": "NotVerified,Blocked",
"UserName": "MdagTestUser-D547B268",
"Profile":"{\"Version\":1,\"Keys\":{\"1\":\"%D0%9E%D0%93%D0%A0%D0%9D\",\"2\":\"%D0%9E%D0%93%D0%A0%D0%9D%D0%98%D0%9F\",\"3\":\"%D0%A1%D0%9D%D0%98%D0%9B%D0%A1\",\"4\":\"%D0%98%D0%9D%D0%9D\",\"5\":\"%D0%AD%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%BE%D0%BD%D0%BD%D0%B0%D1%8F %D0%BF%D0%BE%D1%87%D1%82%D0%B0\",\"6\":\"%D0%A1%D1%82%D1%80%D0%B0%D0%BD%D0%B0\",\"7\":\"%D0%9E%D0%B1%D0%BB%D0%B0%D1%81%D1%82%D1%8C\",\"8\":\"%D0%93%D0%BE%D1%80%D0%BE%D0%B4\",\"9\":\"%D0%9E%D1%80%D0%B3%D0%B0%D0%BD%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F\",\"10\":\"%D0%9F%D0%BE%D0%B4%D1%80%D0%B0%D0%B7%D0%B4%D0%B5%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5\",\"11\":\"%D0%9E%D0%B1%D1%89%D0%B5%D0%B5 %D0%B8%D0%BC%D1%8F\",\"12\":\"%D0%90%D0%B4%D1%80%D0%B5%D1%81\",\"13\":\"%D0%94%D0%BE%D0%BB%D0%B6%D0%BD%D0%BE%D1%81%D1%82%D1%8C\",\"14\":\"%D0%98%D0%BD%D0%B8%D1%86%D0%B8%D0%B0%D0%BB%D1%8B\",\"15\":\"%D0%98%D0%BC%D1%8F\",\"16\":\"%D0%A4%D0%B0%D0%BC%D0%B8%D0%BB%D0%B8%D1%8F\"},\"Values\":{\"5\":\"E12\",\"7\":\"S10\",\"8\":\"L9\",\"9\":\"O8\",\"10\":\"OU7\",\"11\":\"CN6\",\"12\":\"Street5\",\"13\":\"T4\",\"14\":\"I3\",\"15\":\"G2\",\"16\":\"SN1\"}}",
"NonceRequired":true
}
Удаление вектора аутентификации пользователя
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/mydss/delete |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | MyDssDeleteKeyRequest - Информация об устройстве |
Возвращаемое значение | Отсутствует |
Пример запроса
POST https://<hostname>/STS/ums/user/9fba6076-3509-4e8e-abc1-dae6d052a230/mydss/delete HTTP/1.1
Content-Type: application/json; charset=utf-8
{"Kid":"73128110"}
Пример ответа
HTTP/1.1 200 OK
Удаление всех векторов аутентификации myDSS
Параметр | Значение |
---|---|
HTTP-метод | DELETE |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/mydss |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
DELETE https://<hostname>/STS/ums/user/9fba6076-3509-4e8e-abc1-dae6d052a230/mydss HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Настройка серверной лицензии на модуль аутентификации Cloud CSP
Получение информации о состоянии серверной лицензии на модуль аутентификации Cloud CSP
GetUserCloudCspLicenseStateAsync
Параметр | Значение |
---|---|
HTTP-метод | GET |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/cloudcsp/serverlicense |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | IsLicenseActivated - флаг, обозначающий, назначена ли пользователю серверная лицензия на Cloud CSP LicenseAutoActivationAllowed - флаг, разрешающий или запрещающий активацию серверной лицензии пользователю, подключившемуся к Cloud CSP без клиентской лицензии на КриптоПро CSP |
Пример запроса
GET https://<hostname>/STS/ums/user/9fba6076-3509-4e8e-abc1-dae6d052a230/cloudcsp/serverlicense HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 38
{
"IsLicenseActivated": true,
"LicenseAutoActivationAllowed": true
}
Активация для пользователя серверной лицензии на модуль аутентификации Cloud CSP
AssignUserCloudCspLicenseStateAsync
Параметр | Значение |
---|---|
HTTP-метод | POST / PATCH |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/cloudcsp/serverlicense |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/9fba6076-3509-4e8e-abc1-dae6d052a230/cloudcsp/serverlicense HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Удаление для пользователя серверной лицензии на модуль аутентификации Cloud CSP
RemoveUserCloudCspLicenseStateAsync
Параметр | Значение |
---|---|
HTTP-метод | DELETE |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/cloudcsp/serverlicense |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
DELETE https://<hostname>/STS/ums/user/9fba6076-3509-4e8e-abc1-dae6d052a230/cloudcsp/serverlicense HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Настройка политики подтверждения операций
Получение политики подтверждения операций пользователя
GetUserOperationPolicy
Параметр | Значение |
---|---|
HTTP-метод | GET |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/operationpolicy |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) full (true или false) - представление ответа в виде модели Policy (true). Параметр используется для обратной совместимости. |
Параметры в теле запроса | - |
Возвращаемое значение | List<OperationPolicy> - Политика подтверждения операций пользователя |
Пример запроса
GET https://<hostname>/STS/ums/user/1e4ba67f-937d-48a4-9852-93bcff012486/operationpolicy HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 680
[{
"Action": "Issue",
"ConfirmationRequired": false
},
{
"Action": "SignDocument",
"ConfirmationRequired": true
},
{
"Action": "SignDocuments",
"ConfirmationRequired": false
},
{
"Action": "DecryptDocument",
"ConfirmationRequired": false
},
{
"Action": "CreateRequest",
"ConfirmationRequired": true
},
{
"Action": "ChangePin",
"ConfirmationRequired": false
},
{
"Action": "RenewCertificate",
"ConfirmationRequired": false
},
{
"Action": "RevokeCertificate",
"ConfirmationRequired": false
},
{
"Action": "HoldCertificate",
"ConfirmationRequired": false
},
{
"Action": "UnholdCertificate",
"ConfirmationRequired": false
},
{
"Action": "DeleteCertificate",
"ConfirmationRequired": false
},
{
"Action": "PrivateKeyAccess",
"ConfirmationRequired": false
}]
Установка политики подтверждения операции пользователя
SetUserOperationPolicy
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/operationpolicy |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | IList<DSSActions> - Список операций, для которых требуется подтверждение |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/519900cc-fb54-40ab-8b44-794d5fd7dc1b/operationpolicy HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 8
[2,
1024]
Пример ответа
HTTP/1.1 200 OK
Настройка политики доступа к операциям
Получение политики доступа к операциям
GetUserAccessPolicy
Параметр | Значение |
---|---|
HTTP-метод | GET |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/accesspolicy |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | List<AccessPolicy> - Политика доступа к операциям пользователя |
Пример запроса
GET https://<hostname>/STS/ums/user/55cd94d3-3cb4-48b0-90a0-6f3ead9cb0bd/accesspolicy HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 445
[{
"Action": "SignDocument",
"AccessDenied": true
},
{
"Action": "DecryptDocument",
"AccessDenied": false
},
{
"Action": "CreateRequest",
"AccessDenied": true
},
{
"Action": "DeleteCertificate",
"AccessDenied": false
},
{
"Action": "RenewCertificate",
"AccessDenied": false
},
{
"Action": "RevokeCertificate",
"AccessDenied": false
},
{
"Action": "HoldCertificate",
"AccessDenied": false
},
{
"Action": "UnholdCertificate",
"AccessDenied": false
},
{
"Action": "ChangePin",
"AccessDenied": false
}]
Установка политики доступа к операциям
SetUserAccessPolicy
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/accesspolicy |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | IList<DSSActions> - Список операций, для которых требуется подтверждение |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/55cd94d3-3cb4-48b0-90a0-6f3ead9cb0bd/accesspolicy HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 6
[2,
16]
Пример ответа
HTTP/1.1 200 OK
Настройка политики оповещения
Получение политики оповещения
GetNotificationPolicy
Параметр | Значение |
---|---|
HTTP-метод | GET |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/notificationpolicy |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | UserNotificationPolicy - Политика оповещения пользователя |
Пример запроса
GET https://<hostname>/STS/ums/user/55cd94d3-3cb4-48b0-90a0-6f3ead9cb0bd/notificationpolicy HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 445
{
"Policy": {},
"ChangesAllowed": false,
"AvailableNotifiers": [
"SMS",
"Push"
]
}
Установка политики оповещения
SetNotificationPolicy
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/notificationpolicy |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | notifications - Dictionary<EventTypeEnum, List<DssNotifier>> - словарь событий и соответствующих им способов оповещения дл каждого из событий |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/55cd94d3-3cb4-48b0-90a0-6f3ead9cb0bd/notificationpolicy HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 6
{
"CertificatesRequested": [ "Email", "SMS" ],
"RevokeRequestsRequested": [ "Email", "SMS", "Push" ],
}
Примечание
При отправке запроса текущая политика оповещения пользователя будет перезаписана. В словаре необходимо указывать все события, для которых требуется оповещение.
Пример ответа
HTTP/1.1 200 OK
Получение списка событий о которых может быть оповещен пользователь
GetNotificationEvents
Параметр | Значение |
---|---|
HTTP-метод | GET |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/notificationpolicy/events |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) |
Параметры в теле запроса | - |
Возвращаемое значение | UserEventsInfo |
Пример запроса
GET https://<hostname>/STS/ums/user/55cd94d3-3cb4-48b0-90a0-6f3ead9cb0bd/notificationpolicy/events HTTP/1.1
Пример ответа
HTTP/1.1 200 OK
{
"Events": [
{
"Type": "UserAccountChanged",
"Category": "UserAccount",
"Description": "Изменение данных учетной записи пользователя"
},
{
"Type": "UserPasswordChanged",
"Category": "UserAccount",
"Description": "Изменение пароля пользователем"
},
<...>
{
"Type": "ArchivedCertificateKeyExportFail",
"Category": "Certificates",
"Description": "Ошибка экспорта архивированного ключа пользователя"
}
],
"EventCategories": [
{
"Category": "Certificates",
"Description": "Операции с сертификатами"
},
{
"Category": "CertificatesV2",
"Description": "Операции с сертификатами (v2 API)"
},
<...>
{
"Category": "Authentication",
"Description": "Аутентификация пользователей"
}
]
}
Блокировка/разблокировка пользователя
SetUserLockoutState
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/lockout |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) lock - Требуемое состояние учетной записи (True или False) |
Параметры в теле запроса | - |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/9fba6076-3509-4e8e-abc1-dae6d052a230/lockout?lock=True HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 2
{}
Пример ответа
HTTP/1.1 200 OK
Отложенная блокировка пользователя
SetUserLockoutStateEx
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://<адрес сервера>/<имя приложения ЦИ>/ums/user/{id}/lockoutex |
Параметры в строке запроса | id - Глобальный идентификатор пользователя (не является частью query string) UserLockoutRequest - Параметры блокировки |
Параметры в теле запроса | UserLockoutRequest - Параметры блокировки |
Возвращаемое значение | - |
Пример запроса
POST https://<hostname>/STS/ums/user/9fba6076-3509-4e8e-abc1-dae6d052a230/lockoutex HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 58
{
"LockUser": true,
"UseLockoutDelay": true,
"LockoutDelay": 30
}
Пример ответа
HTTP/1.1 200 OK