Files
ipwhitelist-app/docs/iam-impersonation-api.md

2.5 KiB

IAM Impersonation API

Источник: Swagger https://auth-api-dev.ngcloud.ru/api/v1/documentation/ Дата: 2026-06-16

Все эндпоинты имперсонации

Метод Путь Описание
POST /api/v1/impersonation/start Начать имперсонацию
POST /api/v1/impersonation/end Завершить имперсонацию
POST /api/v1/impersonation/extend Продлить сессию имперсонации
GET /api/v1/impersonation/status Статус текущей имперсонации
GET /api/v1/impersonation/history История своих имперсонаций
GET /api/v1/impersonation/history/all История имперсонаций всех админов

Формат ImpersonationStartRequest

{
  "type": "user",
  "entity_id": "UUID контакта (contactId из userInfo)",
  "reason": "описание причины"
}
  • entity_idUUID таргета (кого имперсонируем), не свой
  • type — всегда "user"

curl-команды

Начать имперсонацию

curl --http2 -X POST \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  "https://auth-api.ngcloud.ru/api/v1/impersonation/start" \
  -d '{"type":"user","entity_id":"UUID_таргета","reason":"тест"}'

Статус

curl --http2 \
  -H "Authorization: Bearer $TOKEN" \
  -H "Accept: application/json" \
  "https://auth-api.ngcloud.ru/api/v1/impersonation/status"

История

curl --http2 \
  -H "Authorization: Bearer $TOKEN" \
  -H "Accept: application/json" \
  "https://auth-api.ngcloud.ru/api/v1/impersonation/history"

Продлить

curl --http2 -X POST \
  -H "Authorization: Bearer $TOKEN" \
  -H "Accept: application/json" \
  "https://auth-api.ngcloud.ru/api/v1/impersonation/extend"

Завершить

curl --http2 -X POST \
  -H "Authorization: Bearer $TOKEN" \
  -H "Accept: application/json" \
  "https://auth-api.ngcloud.ru/api/v1/impersonation/end"

Примечания

  • Требуется роль IAM-админа или право на объект impersonation
  • --http2 обязателен для обхода ddos-guard
  • Стенды: auth-api.ngcloud.ru (prod), auth-api-test.ngcloud.ru (test), auth-api-dev.ngcloud.ru (dev)