Class Oauth

Oauth 1 authentication strategy for Cake\Network\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\Network\Http\Client when $options['auth']['type'] is 'oauth'

Method Detail

_buildAuthsource protected

_buildAuth( array $data )

Builds the Oauth Authorization header value.

Parameters

array $data
The oauth_* values to build

Returns

string
string

_encodesource protected

_encode( string $value )

URL Encodes a value based on rules of rfc3986

Parameters

string $value
Value to encode.

Returns

string
string

_hmacSha1source protected

_hmacSha1( Cake\Network\Http\Request $request , array $credentials )

Use HMAC-SHA1 signing.

This method is suitable for plain HTTP or HTTPS.

Parameters

Cake\Network\Http\Request $request
The request object.
array $credentials
Authentication credentials.

Returns

string
string

_normalizedParamssource protected

_normalizedParams( Cake\Network\Http\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\Network\Http\Request $request
The request object.
array $oauthValues
Oauth values.

Returns

string
sorted and normalized values

_normalizedUrlsource protected

_normalizedUrl( string $url )

Builds a normalized URL

Section 9.1.2. of the Oauth spec

Parameters

string $url
URL

Returns

string
Normalized URL

Throws

Cake\Core\Exception\Exception
On invalid URLs

_plaintextsource protected

_plaintext( Cake\Network\Http\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\Network\Http\Request $request
The request object.
array $credentials
Authentication credentials.

Returns

string
Authorization header.

authenticationsource public

authentication( Cake\Network\Http\Request $request , array $credentials )

Add headers for Oauth authorization.

Parameters

Cake\Network\Http\Request $request
The request object.
array $credentials
Authentication credentials.

Throws

Cake\Core\Exception\Exception
On invalid signature types.

baseStringsource public

baseString( Cake\Network\Http\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\Network\Http\Request $request
The request object.
array $oauthValues
Oauth values.

Returns

string
string

© 2005–2016 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.
http://api.cakephp.org/3.1/class-Cake.Network.Http.Auth.Oauth.html