Замена API-ключа AI-интеграции: инвентаризация, переключение и отзыв
Создание нового ключа — лишь часть замены. Нужно найти потребителей, переключить их без путаницы личностей и проверить отказ старых учётных данных. Предлагаемый runbook описывает цикл в AdAce Ads без повторения инструкции создания, раскрытия секрета и предположения, что внешний AI уже подключён.
Потребители до замены ключа
Начните с инвентаря: ID или безопасный prefix, владелец, пространство, потребитель, scopes, срок, ссылка на место хранения и рабочий контакт. Записывайте местонахождение секрета, не значение. Различайте ключ задания отчётности и интерактивной сессии. Неизвестный потребитель — открытый вопрос, а не основание оставлять ключ бессрочно. Недавнее использование помогает, но его отсутствие не составляет полную карту зависимостей.
AdAce Ads хранит хеш ключа, показывает полное значение при создании и проверяет scopes вместе с текущими правами владельца. Замена сохраняет или сужает границы, не добавляет propose ради удобства. Задаче отчётности нужен соответствующий read-доступ. API-ключ и OAuth-грант — разные авторизации: замена одного не отзывает другое. Сначала выясните фактический путь входа.
Учебный пример: ключ используют скрипт подготовки отчёта и временная сессия аналитика. Скрипту нужна плановая замена, завершённой сессии — закрытие вместо переноса. В runbook одно переключение и одно удаление доступа. Новый секрет не копируется на все известные устройства. Неизвестный потребитель после переключения требует исследования, а не бессрочного восстановления старого ключа.
Переключение отдельно от отзыва
- Причина определяет режим. Плановая замена может допускать короткое контролируемое пересечение, если оно поддерживается. Подозрение на раскрытие может требовать немедленного отзыва и временного перерыва. Непрерывность не всегда важнее ограничения риска.
- Матрица проверки содержит старый ключ, новый ключ и потребителей. Успешное чтение новым подтверждает только этот путь. Оно не доказывает отзыв старого или обновление всех заданий.
- В документе остаются ID и время, не снимки секретных полей и заголовков авторизации. Отчёт замены должен помогать оператору, не становясь ещё одним каналом распространения ключей.
Заменить, проверить, закрыть
- Определите владельца и документированных потребителей. Проверьте scopes и клиентов, выберите плановый или аварийный режим. Назначьте уполномоченного исполнителя и условие окончания пересечения ключей.
- При необходимости создайте замену обычным разрешённым процессом. Текущие ограничения и права проверяйте в системе, не зашивайте их в инструкцию. Сохраните значение прямо в утверждённом месте, без вставки в заметки, чат и журналы.
- Обновите одного контролируемого потребителя и проверьте безвредное разрешённое чтение нужного пространства. Не вызывайте propose_change и другие записи. При разных средах и секретах повторите проверку для каждого соответствующего потребителя.
- Уполномоченно отзовите старый ключ и подтвердите отказ изолированного чтения с ним. Используйте инструменты, скрывающие секрет и заголовки. Не помещайте значение в команду оболочки, URL, снимок экрана или отчёт проверки.
- Закройте замену доказательствами без секретов: ID нового и старого, результаты потребителей, отказ старого, проверяющий, время. Ошибки потребителей исправляйте миграцией либо закрытием. Отозванный секрет не становится способом восстановления.
Граница изменённой авторизации
- Отзыв блокирует будущий вход этим ключом, но не возвращает прочитанные сведения и не закрывает независимые авторизации или прямое членство в рекламной платформе. При прекращении отношений проверьте границы отдельно.
- Это предложенный runbook, не отчёт о выполненной live-замене. Код и локальные тесты показывают ожидаемое поведение; результат проверяется в конкретной среде. Рекламные API writes для примера не нужны.
Источники и дополнительные материалы



Попробуйте на своих кабинетах
Создайте рабочее пространство, подключите Google или Meta в пару кликов и увидьте свои кабинеты ясно. Изменения проходят согласование или разрешаются настроенной вами политикой.
Создать пространство