Class Oauth
Oauth 1 authentication strategy for Cake\Http\Client
This object does not handle getting Oauth access tokens from the service provider. It only handles make client requests after you have obtained the Oauth tokens.
Generally not directly constructed, but instead used by Cake\Http\Client when $options['auth']['type'] is 'oauth'
Method Summary
Method Detail
_buildAuth() protected
_buildAuth(array $data)
Builds the Oauth Authorization header value.
Parameters
-
array
$data The oauth_* values to build
Returns
string
_encode() protected
_encode(string $value)
URL Encodes a value based on rules of rfc3986
Parameters
-
string
$value Value to encode.
Returns
string
_hmacSha1() protected
_hmacSha1(\Cake\Http\Client\Request $request, array $credentials)
Use HMAC-SHA1 signing.
This method is suitable for plain HTTP or HTTPS.
Parameters
-
\Cake\Http\Client\Request
$request The request object.
-
array
$credentials Authentication credentials.
Returns
string
_normalizeData() protected
_normalizeData(array $args, string $path)
Recursively convert request data into the normalized form.
Parameters
-
array
$args The arguments to normalize.
-
string
$path optional The current path being converted.
Returns
array
See Also
_normalizedParams() protected
_normalizedParams(\Cake\Http\Client\Request $request, array $oauthValues)
Sorts and normalizes request data and oauthValues
Section 9.1.1 of Oauth spec.
- URL encode keys + values.
- Sort keys & values by byte value.
Parameters
-
\Cake\Http\Client\Request
$request The request object.
-
array
$oauthValues Oauth values.
Returns
string
sorted and normalized values
_normalizedUrl() protected
_normalizedUrl(\Psr\Http\Message\UriInterface $uri)
Builds a normalized URL
Section 9.1.2. of the Oauth spec
Parameters
-
\Psr\Http\Message\UriInterface
$uri Uri object to build a normalized version of.
Returns
string
Normalized URL
_plaintext() protected
_plaintext(\Cake\Http\Client\Request $request, array $credentials)
Plaintext signing
This method is not suitable for plain HTTP. You should only ever use PLAINTEXT when dealing with SSL services.
Parameters
-
\Cake\Http\Client\Request
$request The request object.
-
array
$credentials Authentication credentials.
Returns
string
Authorization header.
_rsaSha1() protected
_rsaSha1(\Cake\Http\Client\Request $request, array $credentials)
Use RSA-SHA1 signing.
This method is suitable for plain HTTP or HTTPS.
Parameters
-
\Cake\Http\Client\Request
$request The request object.
-
array
$credentials Authentication credentials.
Returns
string
Throws
RuntimeException
authentication() public
authentication(\Cake\Http\Client\Request $request, array $credentials)
Add headers for Oauth authorization.
Parameters
-
\Cake\Http\Client\Request
$request The request object.
-
array
$credentials Authentication credentials.
Returns
\Cake\Http\Client\Request
The updated request.
Throws
Cake\Core\Exception\Exception
On invalid signature types.
baseString() public
baseString(\Cake\Http\Client\Request $request, array $oauthValues)
Generate the Oauth basestring
- Querystring, request data and oauth_* parameters are combined.
- Values are sorted by name and then value.
- Request values are concatenated and urlencoded.
- The request URL (without querystring) is normalized.
- The HTTP method, URL and request parameters are concatenated and returned.
Parameters
-
\Cake\Http\Client\Request
$request The request object.
-
array
$oauthValues Oauth values.
Returns
string
© 2005–present 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/4.1/class-Cake.Http.Client.Auth.Oauth.html