Audit-события
Неизменяемая лента за каждой мутацией, resolve и reveal — что записывается и как долго хранится.
Каждое значимое действие оставляет неизменяемую запись: кто (actor_id, с ролями), что сделал (event_type), с каким credential какого провайдера, когда и под каким correlation_id. Метаданные несут структурированный контекст — имена изменённых полей, флаги resolve, причины сбоев — и никогда секретные значения.
Читайте её через GET /v1/admin/audit-events (люди provider_admin/auditor) или GET /internal/v1/admin/audit-events (операторский инструментарий), фильтруя по event_type, provider_code, credential_id, actor_id и временному окну from/to.
Типы событий
| Событие | Когда |
|---|---|
credential.created / credential.updated |
создание; переименование/переконфигурация/ротация (метаданные перечисляют изменённые поля) |
credential.default_changed |
make-default и повышения при замене |
credential.disabled / credential.enabled / credential.deleted |
переходы жизненного цикла (Defaults and Lifecycle) |
credential.resolved |
каждое попадание [[Resolve-Chain |
credential.resolve_failed |
каждый промах resolve — с причиной сбоя и контекстом |
credential.revealed |
каждый [[Reveal |
credential.decryption_failed |
шифротекст, который не расшифровался, с операцией (resolve/reveal) |
credential.purged |
физическое удаление после окна восстановления |
Формы актора различают плоскости: UUID пользователя на пользовательской плоскости; service:<client_id> для простых сервисных вызовов; service:<client_id>!<operator>, когда Internal Admin API атрибутирует названного оператора.
Ретенция
Лента ограничена (по умолчанию 10 дней) и очищается ежедневно; окно восстановления мягко удалённых credentials — отдельное (по умолчанию 5 дней). Два следствия:
- Экспортируйте то, что обязаны хранить. Комплаенс-архивам место ниже по течению; листайте API постранично и храните события у себя.
credential.revealedосвобождено от очистки. Окно ретенции подбиралось под поток событийcredential.resolved, а не под тот единственный след, который оставляет доступ человека к plaintext — этот след остаётся.
Разобранный пример (отфильтровать ленту до истории одного credential): сценарий cookbook 09.