Класс Oauth
Стратегия аутентификации Oauth 1 для Cake\Http\Client
Этот объект не обрабатывает получение маркеров доступа Oauth от поставщика услуг. Он только обрабатывает запросы к клиенту после получения маркеров доступа Oauth.
Обычно не создается напрямую, а используется Cake\Http\Client, когда $options['auth']['type'] равен 'oauth'
Краткое описание методов
- _buildAuth() protectedСтроит значение заголовка авторизации Oauth.
- _encode() protectedКодирует значение по правилам rfc3986
- _hmacSha1() protectedИспользование подписи HMAC-SHA1.
- _normalizedParams() protectedСортирует и нормализует данные запроса и oauthValues
- _normalizedUrl() protectedСтроит нормализованный URL
- _plaintext() protectedПодпись в виде простого текста
- _rsaSha1() protectedИспользование подписи RSA-SHA1.
- authentication() publicДобавление заголовков для авторизации Oauth.
- baseString() publicГенерация базовой строки Oauth
Подробное описание методов
_buildAuth()source protected
_buildAuth( array $data )
Строит значение заголовка авторизации Oauth.
Параметры
- массив
$data - Значения oauth_* для построения
Возвращает
строка_encode()source protected
_encode( string $value )
Кодирует значение по правилам rfc3986
Параметры
- строка
$value - Значение для кодирования.
Возвращает
строка_hmacSha1()source protected
_hmacSha1( Cake\Http\Client\Request $request , array $credentials )
Использование подписи HMAC-SHA1.
Этот метод подходит для обычного HTTP или HTTPS.
Параметры
-
Cake\Http\Client\Request$request - Объект запроса.
- массив
$credentials - Данные аутентификации.
Возвращает
строка_normalizedParams()source protected
_normalizedParams( Cake\Http\Client\Request $request , array $oauthValues )
Сортирует и нормализует данные запроса и oauthValues
Раздел 9.1.1 спецификации Oauth.
- Кодирует ключи + значения.
- Сортирует ключи и значения по байтовому значению.
Параметры
-
Cake\Http\Client\Request$request - Объект запроса.
- массив
$oauthValues - Значения oauth.
Возвращает
строкаотсортированные и нормализованные значения
_normalizedUrl()source protected
_normalizedUrl( Psr\Http\Message\UriInterface $uri )
Строит нормализованный URL
Раздел 9.1.2 спецификации Oauth
Параметры
- Psr\Http\Message\UriInterface
$uri - Объект Uri для построения нормализованной версии.
Возвращает
строкаНормализованный URL
_plaintext()source protected
_plaintext( Cake\Http\Client\Request $request , array $credentials )
Подпись в виде простого текста
Этот метод не подходит для обычного HTTP. Вы должны использовать только PLAINTEXT при работе с SSL-сервисами.
Параметры
-
Cake\Http\Client\Request$request - Объект запроса.
- массив
$credentials - Данные аутентификации.
Возвращает
строкаЗаголовок авторизации.
_rsaSha1()source protected
_rsaSha1( Cake\Http\Client\Request $request , array $credentials )
Использование подписи RSA-SHA1.
Этот метод подходит для обычного HTTP или HTTPS.
Параметры
-
Cake\Http\Client\Request$request - Объект запроса.
- массив
$credentials - Данные аутентификации.
Возвращает
строкаИсключения
RuntimeExceptionauthentication()source public
authentication( Cake\Http\Client\Request $request , array $credentials )
Добавление заголовков для авторизации Oauth.
Параметры
-
Cake\Http\Client\Request$request - Объект запроса.
- массив
$credentials - Данные аутентификации.
Возвращает
Cake\Http\Client\RequestОбновлённый запрос.
Исключения
Cake\Core\Exception\ExceptionПри неверном типе подписи.
baseString()source public
baseString( Cake\Http\Client\Request $request , array $oauthValues )
Генерация базовой строки Oauth
- Комбинируются параметры запроса, данных и oauth_*.
- Значения сортируются по имени, а затем по значению.
- Значения запроса конкатенируются и кодируются по URL.
- Нормализуется URL запроса (без строки запроса).
- Конкатенируются метод HTTP, URL и параметры запроса и возвращаются.
Параметры
-
Cake\Http\Client\Request$request - Объект запроса.
- массив
$oauthValues - Значения oauth.
Возвращает
строка
© 2005–2017 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/3.3/class-Cake.Http.Client.Auth.Oauth.html