Interface Authenticator

All Superinterfaces:
PostAuthenticationHandler

@Api @Provides(Authenticator.class) public interface Authenticator extends PostAuthenticationHandler
Interfejs dostarczający możliwość implementacji zewnętrznego uwierzytelniania użytkowników.
Author:
Rafał Nowacki 2019-06-17
  • Method Summary

    Modifier and Type
    Method
    Description
    authenticate(javax.servlet.http.HttpServletRequest request)
    Uwierzytelnianie użytkownika na podstawie danych zawartych w parametrze request.
    Przycisk dostępny na stronie logowania, który umożliwia wywołanie uwierzytelniania w zewnętrznej aplikacji.
    getLogoutRequest(javax.servlet.http.HttpServletRequest request)
    Pobiera logout request
    getLogoutResponse(javax.servlet.http.HttpServletRequest request)
    Pobiera logout response
    Nazwa aplikacji uwierzytelniającej.
    default boolean
    sendLogoutRequest(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, String userName)
    Wysyłanie request'a do SSO informującego, że chcemy wylogować użytkownika w systemie PlusWorkflow Jeżeli request zostanie wysłany, to wylogowanie zostanie przerwane i będzie wznowione po odpowiedzi z SSO na endpoint authentication/sso/logout Jeżeli nie robimy obsługi SLO to zwracamy false.
    void
    sendLogoutResponse(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, String logoutRequest, SSOLogoutStatusCode status)
    Wysyła do SSO odpowiedź o wylogowaniu użytkownika
    boolean
    validLogoutRequest(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, String encodedRequest, String userName)
    Dekoduje, waliduje i sprawdza podpis (o ile jest wymagany) z logout request
    boolean
    validLogoutResponse(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, String logoutResponse)
    Dekoduje, waliduje i sprawdza podpis (o ile jest wymagany) z logout response
  • Method Details

    • getName

      String getName()
      Nazwa aplikacji uwierzytelniającej.
    • authenticate

      AuthenticationResult authenticate(javax.servlet.http.HttpServletRequest request)
      Uwierzytelnianie użytkownika na podstawie danych zawartych w parametrze request.
      Parameters:
      request - Odpowiedź z logowania w zewnętrznej aplikacji.
      Returns:
      Informacja, czy system powinien uwierzytelnić użytkownika.
    • authenticationButtonDefinition

      AuthenticationButton authenticationButtonDefinition()
      Przycisk dostępny na stronie logowania, który umożliwia wywołanie uwierzytelniania w zewnętrznej aplikacji.
    • getLogoutRequest

      String getLogoutRequest(javax.servlet.http.HttpServletRequest request)
      Pobiera logout request
      Parameters:
      request -
      Returns:
      logout request
    • validLogoutRequest

      boolean validLogoutRequest(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, String encodedRequest, String userName) throws Exception
      Dekoduje, waliduje i sprawdza podpis (o ile jest wymagany) z logout request
      Parameters:
      request -
      response -
      encodedRequest -
      userName - nazwa użytkownika którego SSO chce wylogować
      Returns:
      true/false
      Throws:
      Exception
    • getLogoutResponse

      String getLogoutResponse(javax.servlet.http.HttpServletRequest request)
      Pobiera logout response
      Parameters:
      request -
      Returns:
      logout response
    • validLogoutResponse

      boolean validLogoutResponse(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, String logoutResponse) throws Exception
      Dekoduje, waliduje i sprawdza podpis (o ile jest wymagany) z logout response
      Parameters:
      request -
      response -
      logoutResponse -
      Returns:
      true/false - czy w SSO użytkownik został prawidłowo wylogowany
      Throws:
      Exception
    • sendLogoutResponse

      void sendLogoutResponse(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, String logoutRequest, SSOLogoutStatusCode status) throws Exception
      Wysyła do SSO odpowiedź o wylogowaniu użytkownika
      Parameters:
      request -
      response -
      logoutRequest -
      status - status wylogowania użytkownika
      Throws:
      Exception
    • sendLogoutRequest

      default boolean sendLogoutRequest(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, String userName) throws Exception
      Wysyłanie request'a do SSO informującego, że chcemy wylogować użytkownika w systemie PlusWorkflow Jeżeli request zostanie wysłany, to wylogowanie zostanie przerwane i będzie wznowione po odpowiedzi z SSO na endpoint authentication/sso/logout Jeżeli nie robimy obsługi SLO to zwracamy false.
      Parameters:
      request -
      response -
      userName - nazwa użytkownika którego chcemy wylogować w SSO
      Returns:
      Informacja, czy zapytanie o wylogowanie do SSO zostało wysłane
      Throws:
      Exception