Заголовок авторизации OAuth 2.0

Я хочу разработать SDK, который инкапсулирует функции OAuth 2.0. Я проверил различия между OAuth 1.0 и 2.0, и у меня есть некоторая путаница в заголовке авторизации (1.0 и 2.0), параметры протокола OAuth 1.0 могут передаваться с использованием заголовка HTTP "Авторизация", но я не могу найти это в текущей черновике OAuth 2.0.

Поддерживает ли OAuth 2.0 заголовки авторизации?

В OAuth 1.0 ваш заголовок будет выглядеть так:

Authorization: OAuth realm="Example",
    oauth_consumer_key="0685bd9184jfhq22",
    oauth_token="ad180jjd733klru7",
    oauth_signature_method="HMAC-SHA1",
    oauth_signature="wOJIO9A2W5mFwDgiDvZbTSMK%2FPY%3D",
    oauth_timestamp="137131200",
    oauth_nonce="4572616e48616d6d65724c61686176",
    oauth_version="1.0"

Ответ 1

Для тех, кто ищет пример того, как передать авторизацию OAuth2 (токен доступа) в заголовке (в отличие от использования параметра запроса или тела), вот как это делается:

Authorization: Bearer 0b79bab50daca910b000d4f1a2b675d604257e42

Ответ 2

Вы все еще можете использовать заголовок авторизации с OAuth 2.0. Существует тип Bearer, указанный в заголовке авторизации для использования с токенами на предъявителя OAuth (это означает, что клиентское приложение просто должно представить ( "медведь" ) токен). Значение заголовка - это токен доступа, полученный клиентом от сервера авторизации.

Он задокументирован в этой спецификации: https://tools.ietf.org/html/rfc6750#section-2.1

например:.

   GET /resource HTTP/1.1
   Host: server.example.com
   Authorization: Bearer mF_9.B5f-4.1JqM

Где mF_9.B5f-4.1JqM - ваш токен доступа OAuth.