mirror of
				https://github.com/elyby/accounts.git
				synced 2025-05-31 14:11:46 +05:30 
			
		
		
		
	Merge branch 'develop'
This commit is contained in:
		@@ -49,6 +49,7 @@ test:frontend:
 | 
			
		||||
        - cd frontend
 | 
			
		||||
        - npm i --silent > /dev/null
 | 
			
		||||
        - npm run lint --silent
 | 
			
		||||
        # - npm run flow --silent # disabled due to missing libelf.so.1 in docker container
 | 
			
		||||
        - npm run test --silent
 | 
			
		||||
 | 
			
		||||
build:production:
 | 
			
		||||
 
 | 
			
		||||
@@ -2,6 +2,7 @@
 | 
			
		||||
namespace api\components\OAuth2\Grants;
 | 
			
		||||
 | 
			
		||||
use api\components\OAuth2\Entities;
 | 
			
		||||
use League\OAuth2\Server\Entity\ClientEntity;
 | 
			
		||||
 | 
			
		||||
class AuthCodeGrant extends \League\OAuth2\Server\Grant\AuthCodeGrant {
 | 
			
		||||
 | 
			
		||||
@@ -17,4 +18,19 @@ class AuthCodeGrant extends \League\OAuth2\Server\Grant\AuthCodeGrant {
 | 
			
		||||
        return new Entities\SessionEntity($this->server);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * По стандарту OAuth2 scopes должны разделяться пробелом, а не запятой. Косяк.
 | 
			
		||||
     * Так что оборачиваем функцию разбора скоупов, заменяя пробелы на запятые.
 | 
			
		||||
     *
 | 
			
		||||
     * @param string       $scopeParam
 | 
			
		||||
     * @param ClientEntity $client
 | 
			
		||||
     * @param string $redirectUri
 | 
			
		||||
     *
 | 
			
		||||
     * @return \League\OAuth2\Server\Entity\ScopeEntity[]
 | 
			
		||||
     */
 | 
			
		||||
    public function validateScopes($scopeParam = '', ClientEntity $client, $redirectUri = null) {
 | 
			
		||||
        $scopes = str_replace(' ', $this->server->getScopeDelimiter(), $scopeParam);
 | 
			
		||||
        return parent::validateScopes($scopes, $client, $redirectUri);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -2,6 +2,7 @@
 | 
			
		||||
namespace api\components\OAuth2\Grants;
 | 
			
		||||
 | 
			
		||||
use api\components\OAuth2\Entities;
 | 
			
		||||
use League\OAuth2\Server\Entity\ClientEntity;
 | 
			
		||||
 | 
			
		||||
class ClientCredentialsGrant extends \League\OAuth2\Server\Grant\ClientCredentialsGrant {
 | 
			
		||||
 | 
			
		||||
@@ -17,4 +18,19 @@ class ClientCredentialsGrant extends \League\OAuth2\Server\Grant\ClientCredentia
 | 
			
		||||
        return new Entities\SessionEntity($this->server);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * По стандарту OAuth2 scopes должны разделяться пробелом, а не запятой. Косяк.
 | 
			
		||||
     * Так что оборачиваем функцию разбора скоупов, заменяя пробелы на запятые.
 | 
			
		||||
     *
 | 
			
		||||
     * @param string       $scopeParam
 | 
			
		||||
     * @param ClientEntity $client
 | 
			
		||||
     * @param string $redirectUri
 | 
			
		||||
     *
 | 
			
		||||
     * @return \League\OAuth2\Server\Entity\ScopeEntity[]
 | 
			
		||||
     */
 | 
			
		||||
    public function validateScopes($scopeParam = '', ClientEntity $client, $redirectUri = null) {
 | 
			
		||||
        $scopes = str_replace(' ', $this->server->getScopeDelimiter(), $scopeParam);
 | 
			
		||||
        return parent::validateScopes($scopes, $client, $redirectUri);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -4,6 +4,7 @@ namespace api\components\OAuth2\Grants;
 | 
			
		||||
use api\components\OAuth2\Entities;
 | 
			
		||||
use ErrorException;
 | 
			
		||||
use League\OAuth2\Server\Entity\ClientEntity as OriginalClientEntity;
 | 
			
		||||
use League\OAuth2\Server\Entity\ClientEntity;
 | 
			
		||||
use League\OAuth2\Server\Entity\RefreshTokenEntity as OriginalRefreshTokenEntity;
 | 
			
		||||
use League\OAuth2\Server\Event;
 | 
			
		||||
use League\OAuth2\Server\Exception;
 | 
			
		||||
@@ -25,6 +26,21 @@ class RefreshTokenGrant extends \League\OAuth2\Server\Grant\RefreshTokenGrant {
 | 
			
		||||
        return new Entities\SessionEntity($this->server);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * По стандарту OAuth2 scopes должны разделяться пробелом, а не запятой. Косяк.
 | 
			
		||||
     * Так что оборачиваем функцию разбора скоупов, заменяя пробелы на запятые.
 | 
			
		||||
     *
 | 
			
		||||
     * @param string       $scopeParam
 | 
			
		||||
     * @param ClientEntity $client
 | 
			
		||||
     * @param string $redirectUri
 | 
			
		||||
     *
 | 
			
		||||
     * @return \League\OAuth2\Server\Entity\ScopeEntity[]
 | 
			
		||||
     */
 | 
			
		||||
    public function validateScopes($scopeParam = '', ClientEntity $client, $redirectUri = null) {
 | 
			
		||||
        $scopes = str_replace(' ', $this->server->getScopeDelimiter(), $scopeParam);
 | 
			
		||||
        return parent::validateScopes($scopes, $client, $redirectUri);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Метод таки пришлось переписать по той причине, что нынче мы храним access_token в redis с expire значением,
 | 
			
		||||
     * так что он может банально несуществовать на тот момент, когда к нему через refresh_token попытаются обратиться.
 | 
			
		||||
 
 | 
			
		||||
@@ -1,6 +1,6 @@
 | 
			
		||||
<?php
 | 
			
		||||
return [
 | 
			
		||||
    'version' => '1.1.14',
 | 
			
		||||
    'version' => '1.1.15',
 | 
			
		||||
    'vendorPath' => dirname(dirname(__DIR__)) . '/vendor',
 | 
			
		||||
    'components' => [
 | 
			
		||||
        'cache' => [
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user