Interface AuthProvider

All Known Implementing Classes:
SamlAuthProvider, ShiroAuthProvider

public interface AuthProvider
An interface which configures the authentication layer for the Central Dogma server.
  • Field Details

    • LOGIN_PATH

      static final String LOGIN_PATH
      A login page path for the web console. If a user, who has not logged into the web console yet, opens the web console, the web browser would bring the user to the login page.
      See Also:
    • LOGOUT_PATH

      static final String LOGOUT_PATH
      A logout page path for the web console. If a user clicks the logout button on the navigation bar, the web browser would bring the user to the logout page.
      See Also:
    • BUILTIN_WEB_BASE_PATH

      static final String BUILTIN_WEB_BASE_PATH
      A base path of the built-in web app.
      See Also:
    • BUILTIN_WEB_LOGIN_PATH

      static final String BUILTIN_WEB_LOGIN_PATH
      A path which provides a built-in HTML login form to a user.
      See Also:
    • BUILTIN_WEB_LOGOUT_PATH

      static final String BUILTIN_WEB_LOGOUT_PATH
      A path which provides a built-in HTML logout page to a user.
      See Also:
    • LOGIN_API_ROUTES

      static final Set<Route> LOGIN_API_ROUTES
      A set of Routes which handles a login request. It is necessary only if an authentication protocol requires a login feature provided by the server.
    • LOGOUT_API_ROUTES

      static final Set<Route> LOGOUT_API_ROUTES
      A set of Routes which handles a logout request. It is necessary only if an authentication protocol requires a logout feature provided by the server.
  • Method Details

    • webLoginService

      default HttpService webLoginService()
      Returns a Service which handles a login request from a web browser. By default, the browser would bring a user to the built-in web login page served on "/web/auth/login".
    • webLogoutService

      default HttpService webLogoutService()
      Returns a Service which handles a logout request from a web browser. By default, the browser would bring a user to the built-in web logout page served on "/web/auth/logout".
    • loginApiService

      @Nullable default HttpService loginApiService()
      Returns a Service which handles a login request sent from the built-in web login page or somewhere implemented by an AuthProvider. This service would be added to the server with LOGIN_API_ROUTES only if it is provided.
    • logoutApiService

      @Nullable default HttpService logoutApiService()
      Returns a Service which handles a logout request sent from the built-in web logout page or somewhere implemented by an AuthProvider. This service would be added to the server with LOGOUT_API_ROUTES. If it is not provided, a default service would be added because the web console provides a logout button on the navigation bar by default.
    • moreServices

      default Iterable<HttpServiceWithRoutes> moreServices()
      Returns additional Services which are required for working this AuthProvider well.