Метод идентификации и аутентификации по сертификату доступа

POST API – Аутентификация с помощью сертификата

URL – x509-provider-service/api/v3/public/auth/sign-in/x509

Swagger: https://HOST/external-integration-service/swagger/swagger-ui/index.html#/%5Bv3%5D%20Контроллер%3A%20Авторизации/signInByX509

Query

-

Request

-

Response

ResponseEntity -> ItemResponse -> {

Ответ JSON в HTTP-body

token (string),

Маркер доступа

refresh (string)

Токен обновления

}


Пример использования метода для аутентификации по сертификату доступа

sudo curl --request POST -k --cert cert.crt.pem --cert-type PEM --key test.key.pem --key-type PEM 'https://localhost/x509-provider-service/api/v3/public/auth/sign-in/x509'
  • В примере указаны: crt.pem – сертификат открытого ключа; test.key.pem – закрытый ключ.
  • Ключ и сертификат можно получить из контейнера p12, используя утилиту openssl:
openssl pkcs12 -in INITIAL_ADMIN.p12 -out test.key.pem -nocerts -nodes
 
openssl pkcs12 -in INITIAL_ADMIN.p12 -out cert.crt.pem -clcerts -nokeys

Пример ответа на запрос к данному методу

{
 
    "status": 200,
 
    "data": {
 
        "token""eyJhbGciOiJSUzUxMiJ9.eyJzZXNzaW9uSWQiOiJiYzMwMDQ5ZC1hM2EwLTQ4ZjQtYjE0Ny02YmYzNmRjYjZhNGIiLCJpYXQiOjE3MDE5ODU2MjYsImV4cCI6MTcwMTk4NTgwNn0.aX7pbvPHtP8tQ0vg9upBR7AlYXbgwr8XX1tlcdggcySzehA6qi2mJGE-MlMf0iNeAOy0L_QJ7YVsB_080yTwcw2E6ipsTRI1rRbq1VHKw4xTNcVh2UVCXXTxz4WaYw3uSkNJfPPLgs7wyxyAlu3Is4d7JuiCSgONOj-rArjam_ccTuEHJnHp7PTnrDLOUNm8elu-VkP9qvQPqLb0P_K7-XLp3lQrWOZWMPPM4im1diA70fBD4QeNiruQjYHK4ENbqCArIMiPnV0GFTz7JMnLLPlliFrnOgHhUUhp6JylKOTKxddLgUjTU03BmucUwAl_ccThZZPzpwNLd6Cx67X0Og",
 
        "refresh""8b73de98-721d-4d0b-98f7-f19745272f0c"
 
    }
 
}

В результате успешной аутентификации сервер возвращает cookies-файл с маркером доступа и токеном обновления. Для дальнейшей аутентификации используется данный маркер доступа (см. примеры использования методов далее).

Маркер доступа необходимо передать в http-header “token”, либо приложить к запросу полученный cookies-файл с маркером доступа (http-header “cookie”).

Метод обновления маркера доступа

POST API – Обновление токена доступа

Метод доступен администратору и оператору

URL – security-service/api/v3/public/auth/refresh-token

Swagger: https://HOST/external-integration-service/swagger/swagger-ui/index.html#/[v2a] Контроллер%3A Авторизации/refreshToken

Query

-

Request

-

Response

ResponseEntity -> ItemResponse -> {

Ответ JSON в HTTP-body

token (string),

Маркер доступа

refresh (string)

Токен обновления

}


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

curl --location -k --request POST 'https://172.17.152.213/security-service/api/v3/ui/auth/refresh-token' --header 'Cookie: token=eyJhbGciOiJSUzUxMiJ9.eyJzZXNzaW9uSWQiOiI2YTZhNmM4Yi0zYWQyLTQwYjMtYWI5NS05NDgxNmZlYjBkZGQiLCJpYXQiOjE3MDIwMjEyNzEsImV4cCI6MTcwMjAyMTQ1MX0.LJUcxBCuiClMWfMVNoYy8pe1iYgdDw4eQ-v4Blp5mYRcOxSOswGipUGZ_0cTrV3QyjVXXrty9CHTM2virdnvU7xp_4lASug5MRUCjOhsWnN
 
Figu21bDoFbK7jQPDDdG5LfCxfsWqVAXrY-G4BPsT8azPdY-CVtsjXIPyUmkL-vo7_7b4Prs2OwNeewYn_9KsdHXV56XJHEo4nBM0wsew830Q813pFe7LpLXNuQ8SvekEr9QKGSspBgYT3qC9D_57NhWzEgKqVRsLxk4f4p8x7TI4zIsFI1v1VaqwrnAiDnElwxFHNnvXVDuyxh54g6BkLfoHj3DGnCijiopPCti_pw; refresh=7aaad966-b417-418e-b2bb-63574ddcc8d1'

Пример ответа на запрос к данному методу:

{"status":200,"data":{"token":"eyJhbGciOiJSUzUxMiJ9.eyJzZXNzaW9uSWQiOiI2YTZhNmM4Yi0zYWQyLTQwYjMtYWI5NS05NDgxNmZlYjBkZGQiLCJpYXQiOjE3MDIwMjEzNzMsImV4cCI6MTcwMjAyMTU1M30.CUO3CaTt7JsIAg8LYMlURx0tetbsPw5iHT33i14JwSAos8DmNFSe1ylnfEHNlb2U8Q0G1KvJlhm84FqWR45RgBuvsQkgzzR5aDDiVzLhhpkbPGqAUbILmFdiqLmDokyS0SyybUO4-SSfueV8lzo5aF6ly80c
 
2cWpwRrRQgNhBDdc1LgjACmdD29urmBqlQsFV6AFRdlN6l3EZkP2ragZInQQllM9D4e5d3mlugCP7pJ2bp39pOVLLWC1czusPfS9tDoIyigkZBkSTi7xPYAWUdghzBfc--eK1kepoWilV5r4hln4bT6grZ7Yyi-J5JLVycuGOzkle3ByIcBExmFwtQ","refresh":"3071f779-f4f7-47db-91a4-13acfcb50005"}}

Метод обновления последней активности учетной записи

PUT API – Обновление последней активности учетной записи по ее идентификатору

Метод должен быть доступен только администратору

URL – security-service/api/v3/public/accounts/{accountId}/activity

Swagger: https://HOST/external-integration-service/swagger/swagger-ui/index.html#/%5Bv3%5D%20Контроллер%3A%20Учетные%20записи/updateActivity

Query

{(id – обязательный параметр)

id (UUID)

Идентификатор учетной записи

}

Request
-

Response
-