mirror of
				https://github.com/elyby/accounts.git
				synced 2025-05-31 14:11:46 +05:30 
			
		
		
		
	Объединены сущности для авторизации посредством JWT токенов и токенов, выданных через oAuth2.
Все действия, связанные с аккаунтами, теперь вызываются через url `/api/v1/accounts/<id>/<action>`. Добавлена вменяемая система разграничения прав на основе RBAC. Теперь oAuth2 токены генерируются как случайная строка в 40 символов длинной, а не UUID. Исправлен баг с неправильным временем жизни токена в ответе успешного запроса аутентификации. Теперь все unit тесты можно успешно прогнать без наличия интернета.
This commit is contained in:
		@@ -15,9 +15,6 @@ return [
 | 
			
		||||
            'class' => api\components\User\Component::class,
 | 
			
		||||
            'secret' => getenv('JWT_USER_SECRET'),
 | 
			
		||||
        ],
 | 
			
		||||
        'apiUser' => [
 | 
			
		||||
            'class' => api\components\ApiUser\Component::class,
 | 
			
		||||
        ],
 | 
			
		||||
        'log' => [
 | 
			
		||||
            'traceLevel' => YII_DEBUG ? 3 : 0,
 | 
			
		||||
            'targets' => [
 | 
			
		||||
@@ -85,14 +82,9 @@ return [
 | 
			
		||||
            'class' => api\modules\authserver\Module::class,
 | 
			
		||||
            'host' => $params['authserverHost'],
 | 
			
		||||
        ],
 | 
			
		||||
        'session' => [
 | 
			
		||||
            'class' => api\modules\session\Module::class,
 | 
			
		||||
        ],
 | 
			
		||||
        'mojang' => [
 | 
			
		||||
            'class' => api\modules\mojang\Module::class,
 | 
			
		||||
        ],
 | 
			
		||||
        'internal' => [
 | 
			
		||||
            'class' => api\modules\internal\Module::class,
 | 
			
		||||
        ],
 | 
			
		||||
        'session' => api\modules\session\Module::class,
 | 
			
		||||
        'mojang' => api\modules\mojang\Module::class,
 | 
			
		||||
        'internal' => api\modules\internal\Module::class,
 | 
			
		||||
        'accounts' => api\modules\accounts\Module::class,
 | 
			
		||||
    ],
 | 
			
		||||
];
 | 
			
		||||
 
 | 
			
		||||
@@ -3,15 +3,16 @@
 | 
			
		||||
 * @var array $params
 | 
			
		||||
 */
 | 
			
		||||
return [
 | 
			
		||||
    '/accounts/change-email/initialize' => 'accounts/change-email-initialize',
 | 
			
		||||
    '/accounts/change-email/submit-new-email' => 'accounts/change-email-submit-new-email',
 | 
			
		||||
    '/accounts/change-email/confirm-new-email' => 'accounts/change-email-confirm-new-email',
 | 
			
		||||
 | 
			
		||||
    'POST /two-factor-auth' => 'two-factor-auth/activate',
 | 
			
		||||
    'DELETE /two-factor-auth' => 'two-factor-auth/disable',
 | 
			
		||||
 | 
			
		||||
    '/oauth2/v1/<action>' => 'oauth/<action>',
 | 
			
		||||
 | 
			
		||||
    'GET /v1/accounts/<id:\d+>' => 'accounts/default/get',
 | 
			
		||||
    'GET /v1/accounts/<id:\d+>/two-factor-auth' => 'accounts/default/get-two-factor-auth-credentials',
 | 
			
		||||
    'POST /v1/accounts/<id:\d+>/two-factor-auth' => 'accounts/default/enable-two-factor-auth',
 | 
			
		||||
    'DELETE /v1/accounts/<id:\d+>/two-factor-auth' => 'accounts/default/disable-two-factor-auth',
 | 
			
		||||
    'POST /v1/accounts/<id:\d+>/ban' => 'accounts/default/ban',
 | 
			
		||||
    'DELETE /v1/accounts/<id:\d+>/ban' => 'accounts/default/pardon',
 | 
			
		||||
    '/v1/accounts/<id:\d+>/<action>' => 'accounts/default/<action>',
 | 
			
		||||
 | 
			
		||||
    '/account/v1/info' => 'identity-info/index',
 | 
			
		||||
 | 
			
		||||
    '/minecraft/session/join' => 'session/session/join',
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user