作者:cass-projec
项目:cas
private function moveToAuth(AbstractProvider $provider)
{
$authorizationUrl = $provider->getAuthorizationUrl();
$_SESSION['oauth2state'] = $provider->getState();
header('Location: ' . $authorizationUrl);
exit;
}
作者:cass-projec
项目:cas
protected function makeRegistrationRequest(AbstractProvider $provider, AccessToken $accessToken) : RegistrationRequest
{
/** @var GoogleUser $resourceOwner */
$resourceOwner = $provider->getResourceOwner($accessToken);
$email = $resourceOwner->getEmail();
$providerAccountId = (string) $resourceOwner->getId();
return new RegistrationRequest('google', $providerAccountId, $email, $resourceOwner);
}
作者:bigfor
项目:silverstripe-oauth-logi
/**
* @param AbstractProvider $provider
* @param AccessToken $token
* @param string $providerName
* @param SS_HTTPRequest $request
*/
public function afterGetAccessToken(AbstractProvider $provider, AccessToken $token, $providerName, SS_HTTPRequest $request)
{
$user = $provider->getResourceOwner($token);
try {
$member = $this->memberFromResourceOwner($user, $providerName);
$this->owner->setMember($member);
} catch (TokenlessUserExistsException $e) {
return Security::permissionFailure($this->owner, $e->getMessage());
}
$result = $member->canLogIn();
if (!$result->valid()) {
return Security::permissionFailure($this->owner, $result->message());
}
$member->logIn();
}
作者:godmodelab
项目:flora-client-php-aut
/**
* {@inheritdoc}
*/
public function authenticate(RequestInterface $request)
{
// TODO: add error handling
// TODO: support other grant types?
$accessToken = $this->provider->getAccessToken('client_credentials');
return $request->withHeader('Authorization', 'Bearer ' . $accessToken);
}
作者:codeforameric
项目:oakland-bet
public function testSetRedirectHandler()
{
$this->testFunction = false;
$callback = function ($url) {
$this->testFunction = $url;
};
$this->provider->setRedirectHandler($callback);
$this->provider->authorize('http://test.url/');
$this->assertNotFalse($this->testFunction);
}
作者:slowpro
项目:oauth2-modulban
/**
* Constructs an OAuth 2.0 service provider.
*
* @param array $options An array of options to set on this provider.
* Options include `clientId`, `clientSecret`, `redirectUri`, and `state`.
* Individual providers may introduce more options, as needed.
* @param array $collaborators An array of collaborators that may be used to
* override this provider's default behavior. Collaborators include
* `grantFactory`, `requestFactory`, `httpClient`, and `randomFactory`.
* Individual providers may introduce more collaborators, as needed.
*/
public function __construct(array $options = [], array $collaborators = [])
{
parent::__construct($options, $collaborators);
if ($this->token) {
$this->token = new ModulbankAccessToken(['accessToken' => $this->token]);
}
}
作者:stevenmaguir
项目:oauth2-elanc
/**
* Prepares an parsed access token response for a grant.
*
* Custom mapping of expiration, etc should be done here. Always call the
* parent method when overloading this method.
*
* @param mixed $result
* @return array
*/
protected function prepareAccessTokenResponse(array $result)
{
if (isset($result['data'])) {
$result = $result['data'];
}
return parent::prepareAccessTokenResponse($result);
}
作者:thenetwor
项目:oauth2-azur
public function getAccessToken($grant, array $options = [])
{
if ($this->authWithResource) {
$options['resource'] = $this->resource ? $this->resource : $this->urlAPI;
}
return parent::getAccessToken($grant, $options);
}
作者:6by
项目:freeagent-ph
/**
* Provider constructor.
* @param array $options
*/
public function __construct(array $options = array())
{
parent::__construct($options);
if (isset($options['sandbox']) && $options['sandbox']) {
$this->baseURL = 'https://api.sandbox.freeagent.com/v2/';
}
}
作者:ed
项目:oauth-clien
public function __construct($options = [])
{
if (!array_has($options, 'redirectUri')) {
$options['redirectUri'] = 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'] . '?' . $_SERVER['QUERY_STRING'];
}
parent::__construct($options);
}
作者:stevenmaguir
项目:oauth2-zendes
/**
* Constructs an OAuth 2.0 service provider.
*
* @param array $options An array of options to set on this provider.
* Options include `clientId`, `clientSecret`, `redirectUri`, and `state`.
* Individual providers may introduce more options, as needed.
* @param array $collaborators An array of collaborators that may be used to
* override this provider's default behavior. Collaborators include
* `grantFactory`, `requestFactory`, `httpClient`, and `randomFactory`.
* Individual providers may introduce more collaborators, as needed.
*/
public function __construct(array $options = [], array $collaborators = [])
{
parent::__construct($options, $collaborators);
if (empty($this->subdomain)) {
throw new Exception\ProviderConfigurationException('No subdomain has been configured for this Zendesk provider; it has to have a subdomain.');
}
}
作者:ursuleac
项目:oauth2-lightspee
/**
* @param $grant
* @param array $params
*/
public function getAccessToken($grant = 'authorization_code', array $params = [])
{
if (isset($params['refresh_token'])) {
throw new LightspeedProviderException('Lightspeed does not support token refreshing.');
}
return parent::getAccessToken($grant, $params);
}
作者:omine
项目:oauth2-gitla
/**
* Gitlab constructor.
*
* @param array $options
* @param array $collaborators
*/
public function __construct(array $options, array $collaborators = [])
{
if (isset($options['domain'])) {
$this->domain = $options['domain'];
}
parent::__construct($options, $collaborators);
}
作者:wheniwor
项目:oauth2-ven
public function __construct($options = [])
{
if (empty($options['domainPrefix'])) {
throw new \RuntimeException('Vend provider requires a "domainPrefix" option');
}
parent::__construct($options);
}
作者:tmannher
项目:oauth2-ringcentra
/**
* @param array $options
* @param array $collaborators
*/
public function __construct($options = [], array $collaborators = [])
{
parent::__construct($options);
if (isset($options['devMode'])) {
$this->setDevMode($options['devMode']);
}
}
作者:xintes
项目:socialite
public function __construct($options = array())
{
if (empty($options['rootUrl'])) {
throw new UnexpectedValueException('Missing rootUrl configuration');
}
parent::__construct($options);
$this->_domain = rtrim($options['rootUrl'], '/');
}
作者:stevenmaguir
项目:oauth2-keycloa
/**
* Constructs an OAuth 2.0 service provider.
*
* @param array $options An array of options to set on this provider.
* Options include `clientId`, `clientSecret`, `redirectUri`, and `state`.
* Individual providers may introduce more options, as needed.
* @param array $collaborators An array of collaborators that may be used to
* override this provider's default behavior. Collaborators include
* `grantFactory`, `requestFactory`, `httpClient`, and `randomFactory`.
* Individual providers may introduce more collaborators, as needed.
*/
public function __construct(array $options = [], array $collaborators = [])
{
if (isset($options['encryptionKeyPath'])) {
$this->setEncryptionKeyPath($options['encryptionKeyPath']);
unset($options['encryptionKeyPath']);
}
parent::__construct($options, $collaborators);
}
作者:angelca
项目:angelcam-sdk-ph
/**
* {@inheritdoc}
*/
public function __construct(array $options = [], array $collaborators = [])
{
if (!empty($options['domain'])) {
$this->domain = $options['domain'];
// for custom environments
}
parent::__construct($options, $collaborators);
}
作者:lemonstan
项目:oauth2-amazo
public function getAuthorizationUrl($options = [])
{
$url = parent::getAuthorizationUrl($options);
if ($this->testMode) {
$url .= '&sandbox=true';
}
return $url;
}
作者:LigorioSalgad
项目:Slyfe
public function getAuthorizationUrl($options = array())
{
$url = parent::getAuthorizationUrl($options);
if (!empty($this->hostedDomain)) {
$url .= '&' . $this->httpBuildQuery(['hd' => $this->hostedDomain]);
}
return $url;
}