Получение токена аутентификации
Чтобы получить токен аутентификации, нужно отправить POST запрос на сервер к которому необходимо получить токен доступа:
POST http(s)://<domain>/v3/keycloak/realms/Visiology/protocol/openid-connect/token
где <domain> – домен или IP-адрес сервера платформы.
Пример запроса в Postman:
POST http://192.168.42.87/v3/keycloak/realms/Visiology/protocol/openid-connect/token
| Key | Value |
|---|---|---|
Headers | content-type |
|
Body x-www-form-urlencoded | username | Имя пользователя. |
password | Пароль пользователя. | |
grant_type |
| |
client_id |
| |
scope |
|
Нажмите Send в правом верхнем углу окна, чтобы отправить запрос:
Для работы с API рекомендуется создать отдельного пользователя.
Получить токен аутентификации можно также с помощью Python-скрипта. Например:
import requests
import json
from urllib.parse import urljoin
def get_auth_header(server):
data = {
'client_id': 'visiology_designer',
'grant_type': 'password',
'scope': 'openid data_management_service formula_engine workspace_service forms_service',
'username': '****',
'password': '****',
}
response = requests.post(urljoin(server, 'keycloak/realms/Visiology/protocol/openid-connect/token'),
data=data,
verify=False) # TODO: Оставьте False или используйте сертификат verify='/path/to/server_cert.pem'
response_data = response.json()
headers = {
'Authorization': f'Bearer {response_data["access_token"]}',
}
return headers
SERVER = 'http://192.168.42.87/v3/'
headers = get_auth_header(SERVER) Нужна дополнительная помощь?
Смотрите также