Move library\OAuth1.php to class structure Friendica\Security\OAuth1
This commit is contained in:
parent
8318a0b640
commit
fe653b652a
18 changed files with 1121 additions and 1055 deletions
49
src/Security/OAuth1/OAuthSignatureMethod.php
Normal file
49
src/Security/OAuth1/OAuthSignatureMethod.php
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
<?php
|
||||
|
||||
namespace Friendica\Security\OAuth1;
|
||||
|
||||
use Friendica\Security\OAuth1\OAuthRequest;
|
||||
|
||||
/**
|
||||
* A class for implementing a Signature Method
|
||||
* See section 9 ("Signing Requests") in the spec
|
||||
*/
|
||||
abstract class OAuthSignatureMethod
|
||||
{
|
||||
/**
|
||||
* Needs to return the name of the Signature Method (ie HMAC-SHA1)
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
abstract public function get_name();
|
||||
|
||||
/**
|
||||
* Build up the signature
|
||||
* NOTE: The output of this function MUST NOT be urlencoded.
|
||||
* the encoding is handled in OAuthRequest when the final
|
||||
* request is serialized
|
||||
*
|
||||
* @param OAuthRequest $request
|
||||
* @param \Friendica\Security\OAuth1\OAuthConsumer $consumer
|
||||
* @param \Friendica\Security\OAuth1\OAuthToken $token
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
abstract public function build_signature(OAuthRequest $request, \Friendica\Security\OAuth1\OAuthConsumer $consumer, \Friendica\Security\OAuth1\OAuthToken $token = null);
|
||||
|
||||
/**
|
||||
* Verifies that a given signature is correct
|
||||
*
|
||||
* @param OAuthRequest $request
|
||||
* @param \Friendica\Security\OAuth1\OAuthConsumer $consumer
|
||||
* @param \Friendica\Security\OAuth1\OAuthToken $token
|
||||
* @param string $signature
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public function check_signature(OAuthRequest $request, \Friendica\Security\OAuth1\OAuthConsumer $consumer, $signature, \Friendica\Security\OAuth1\OAuthToken $token = null)
|
||||
{
|
||||
$built = $this->build_signature($request, $consumer, $token);
|
||||
return ($built == $signature);
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue