Приложения и доступ к API · проверено по источникам

PKCE

PKCE — расширение OAuth, которое связывает запрос авторизации с последующим запросом токена через случайное проверочное значение и производную от него строку.

Также ищут: Proof Key for Code Exchange · защита обмена кода · проверочное значение PKCE

Практический смысл

Почему это важно

Перехвативший код не сможет обменять его без исходного значения, но PKCE не подтверждает пользователя и не отменяет проверку Redirect URI.

Доказательная часть

Что подтверждено

  1. Клиент создаёт секретное проверочное значение, отправляет производную от него строку в запросе авторизации и предъявляет исходное значение при обмене кода на токен.

    Граница применимости: Последовательность PKCE по RFC 7636.

  2. PKCE защищает обмен кода авторизации, но не подтверждает личность пользователя и не заменяет точное сопоставление Redirect URI.

    Граница применимости: Граница PKCE относительно проверки пользователя и адреса возврата.

Перед спецификацией

Что проверить

  1. Создавайте новое проверочное значение для каждого запроса.
  2. Используйте метод S256.
  3. Принимайте проверочное значение только один раз.
Открытые основания

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

  • Первичная спецификация

    Proof Key for Code Exchange by OAuth Public Clients

    Internet Engineering Task Force · RFC 7636, September 2015

    Определяет code verifier и derived code challenge для привязки authorization code к начавшему flow client instance.

    Открыть первоисточник
  • Первичная спецификация

    Best Current Practice for OAuth 2.0 Security

    Internet Engineering Task Force · RFC 9700, January 2025

    Актуализирует OAuth security: exact redirect matching, PKCE, sender-constrained tokens и безопасный refresh-token lifecycle.

    Открыть первоисточник
Сообщить об ошибке

Опишите проблему — постараемся исправить как можно скорее.

Спасибо!

Получили ваше сообщение.
Подтвердите действие