Class AuthServiceImpl

java.lang.Object
ru.averkiev.socialmediaapi.services.impl.AuthServiceImpl
All Implemented Interfaces:
AuthService

@Service public class AuthServiceImpl extends Object implements AuthService
Класс предоставляет функционал для аутентификации и авторизации пользователей.
Author:
mrGreenNV
  • Constructor Details

    • AuthServiceImpl

      public AuthServiceImpl()
  • Method Details

    • login

      public JwtResponse login(JwtRequest authRequest)
      Осуществляет вход пользователя в систему
      Specified by:
      login in interface AuthService
      Parameters:
      authRequest - запрос аутентификации.
      Returns:
      объект JwtResponse содержащий пару токенов.
    • getAccessToken

      public JwtResponse getAccessToken(RefreshToken refreshToken) throws AuthException
      Позволяет получить новый AccessToken по заданному refresh токену.
      Specified by:
      getAccessToken in interface AuthService
      Parameters:
      refreshToken - refresh токен.
      Returns:
      объект JwtResponse содержащий новый access токен.
      Throws:
      AuthException - выбрасывает при ошибке обновления токена.
    • refresh

      public JwtResponse refresh(RefreshToken refreshToken)
      Позволяет обновить пару токенов на заданному refresh токену.
      Specified by:
      refresh in interface AuthService
      Parameters:
      refreshToken - refresh токен.
      Returns:
      объект JwtResponse содержащий пару новых токенов.
    • getAuthInfo

      public JwtAuthentication getAuthInfo()
      Позволяет получить информацию об аутентификации.
      Specified by:
      getAuthInfo in interface AuthService
      Returns:
      объект JwtAuthentication.
    • logout

      public boolean logout(RefreshToken refreshToken)
      Позволяет осуществить выход пользователя из системы, при этом access и refresh токены удаляются.
      Specified by:
      logout in interface AuthService
      Parameters:
      refreshToken - refresh токен.
      Returns:
      true, если выход осуществлен иначе - false.
    • validateRefreshToken

      public boolean validateRefreshToken(RefreshToken refreshToken) throws AuthException
      Осуществляет валидацию refresh токена и, если требуется, обновляет его.
      Specified by:
      validateRefreshToken in interface AuthService
      Parameters:
      refreshToken - refresh токен.
      Returns:
      true, если токен валиден, иначе - false.
      Throws:
      AuthException
    • validateAccessToken

      public boolean validateAccessToken(AccessToken accessToken)
      Осуществляет валидацию access токена и, если требуется, обновляет его.
      Specified by:
      validateAccessToken in interface AuthService
      Parameters:
      accessToken - access токен.
      Returns:
      true, если токен валиден, иначе - false.
    • getUserIdFromAuthentication

      public Long getUserIdFromAuthentication() throws AuthException
      Description copied from interface: AuthService
      Позволяет получить идентификатор пользователя из аутентификации.
      Specified by:
      getUserIdFromAuthentication in interface AuthService
      Returns:
      идентификатор пользователя.
      Throws:
      AuthException - выбрасывает если возникает ошибка аутентификации.