integration
Словарь ↗Отзыв токена
Отзыв токена — это прекращение выданного доступа до того, как он истечёт сам. Происходит это по самым обычным поводам: пользователь нажимает «отключить доступ» в настройках своего аккаунта, администратор вычищает сторонние приложения, подключённые к рабочему пространству, поставщик обнуляет токены после инцидента безопасности, а сброс пароля или увольнение прокатывается по всем сессиям и разрешениям, привязанным к человеку. Для того, кто строит интеграцию, под всем этим лежит один и тот же факт: разрешение никогда не было вашим. Оно живёт в чужом аккаунте за кнопкой, и человек, нажимающий эту кнопку, обычно не знает, что ниже по цепочке стоит ваш продукт. В логах отзыв поначалу неотличим от истёкшего токена: ошибки авторизации на вызовах, работавших вчера. Различающая проверка — обновление. Истёкший токен доступа заменяется успешным обновлением; при отозванном разрешении обновление тоже не проходит, и именно этот отказ является настоящим сигналом. Код, считающий любую ошибку авторизации временной, будет бесконечно повторять запросы по отозванному подключению: это ничего не даёт, а у части поставщиков ещё и засчитывается в лимиты злоупотребления. Обрабатывайте это как состояние, а не как ошибку. Помечайте подключение сломанным, а не удаляйте его, чтобы сопоставления полей, идентификаторы и история клиента пережили повторное подключение, а не собирались заново. Сообщайте человеку по каналу, который кто-то читает, помня, что аккаунт, потерявший доступ, может принадлежать уже уволившемуся сотруднику. И перестаньте отдавать скопированные данные так, будто они актуальны: интеграция, которая после смерти подключения тихо продолжает показывать вчерашние записи, — это тот вариант отказа, который стоит доверия, а не только сервиса. Вторая половина — ваша собственная. Возможность отозвать выданный вами доступ по одному клиенту, без выкладки, — первая способность, о которой спрашивают во время инцидента безопасности, и крайне неприятная вещь, чтобы обнаружить её отсутствие прямо посреди него.
Похожие термины