Package com.suncode.pwfl.security
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 TypeMethodDescriptionauthenticate
(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 requestgetLogoutResponse
(javax.servlet.http.HttpServletRequest request) Pobiera logout responsegetName()
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żytkownikaboolean
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 requestboolean
validLogoutResponse
(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, String logoutResponse) Dekoduje, waliduje i sprawdza podpis (o ile jest wymagany) z logout responseMethods inherited from interface com.suncode.pwfl.security.PostAuthenticationHandler
afterSuccessLogIn, getExtraAuthVerifiers, getRedirections, getUserCreationStrategyDuringAuthentication
-
Method Details
-
getName
String getName()Nazwa aplikacji uwierzytelniającej. -
authenticate
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
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
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
-