SYSTEM ATLASЗагрузка материала

Подписи HTTP-сообщений

HTTP Message Signatures

HTTP Message Signatures задаёт способ подписывать выбранные компоненты HTTP-запроса или ответа и проверять их целостность и происхождение.

Простыми словами

Например, поставщик webhook подписывает метод, путь, дату и digest тела; получатель проверяет подпись до обработки события. Поэтому правило проверяют ещё на этапе проектирования - иначе одна удобная лазейка может превратиться в доступ, которого у пользователя или процесса быть не должно.

Пример от @Vibeclakr

Пример при разработке

Поставщик webhook подписывает метод, путь, дату и digest тела; получатель проверяет подпись до обработки события.

Это редакционный пример применения, а не часть определения или доказательство концепции.

Формальное определение

HTTP Message Signatures задаёт способ подписывать выбранные компоненты HTTP-запроса или ответа и проверять их целостность и происхождение.

Механизм действия

Подписант канонизирует перечисленные компоненты, формирует Signature-Input и Signature; проверяющая сторона повторяет вычисление.

Пример в работе

Нерабочий подход

Внедрить «Подписи HTTP-сообщений» как формальную настройку, не проверив сценарий отказа и ограничение: Нужно управлять ключами, временем, повторным воспроизведением и допустимыми преобразованиями посредников.

Системный подход

Применять «Подписи HTTP-сообщений» только для заявленной цели, проверять поведение на реальном контуре и сохранять наблюдаемый критерий результата.

Ограничения

Нужно управлять ключами, временем, повторным воспроизведением и допустимыми преобразованиями посредников.

Источник

IETF, “HTTP Message Signatures”, 2024.

Первоисточник