5.6. ДОСТУП К ЗАЩИЩЕННОМУ РЕСУРСУ

5.6.1. Доступ клиента к защищенному ресурсу обеспечивает сервер ресурсов. Выполняя запрос, клиент передает ему полученный от сервера авторизации токен доступа. Сервер ресурса проверяет этот токен доступа: его срок действия, присутствие запрашиваемого ресурса в области действия токена. При этом предполагается использование связи сервера ресурса с сервером авторизации.

5.6.2. При запросе защищенного ресурса токен доступа может быть передан клиентом серверу ресурса в заголовке авторизации HTTP (Authorization Request Header). В этом случае значение заголовка <Authorization> должно иметь формат:

Authorization = "Bearer" || <token>,

где <token> - значение токена доступа в кодировании Base64url.

Примечание. Спецификации структуры и алгоритмов работы с заголовком авторизации HTTP приведены в RFC 2617 [33] (раздел 2).

Клиенту рекомендуется использовать этот метод авторизации. Сервер ресурса должен его поддерживать.

5.6.3. Альтернативный вариант передачи токена доступа от клиента серверу ресурса - в теле HTTP-запроса как значение параметра <access_token>. При этом должны быть выполнены следующие условия:

- поле <Content-Type> заголовка HTTP-запроса имеет значение "application/x-www-form-urlencoded";

- тело запроса соответствует требованиям кодирования контента "application/x-www-form-urlencoded";

- тело HTTP-запроса состоит из одной части, то есть запрос не является запросом типа "multipart/form-data";

- содержимое тела запроса должно состоять исключительно из ASCII-символов;

- должен использоваться HTTP метод, семантика тела запроса которого строго определена. В частности, это означает, что HTTP метод GET не должен использоваться.

Клиенту не рекомендуется использовать такой метод авторизации, кроме случаев, когда браузер не имеет доступа к <Authorization> заголовку HTTP-запроса. Сервер ресурсов может поддерживать этот метод.

Примечание. Дополнительные сведения о протоколе доступа клиента к защищенному ресурсу с использованием токена доступа приведены в RFC 6750 [13].

5.6.4. Канал передачи информации между клиентом и сервером ресурса должен быть защищен с помощью протокола TLS с обеспечением конфиденциальности и целостности.