Class RestSamlCompleteLogoutAction

java.lang.Object
org.elasticsearch.rest.BaseRestHandler
All Implemented Interfaces:
org.elasticsearch.rest.RestHandler

public class RestSamlCompleteLogoutAction extends SamlBaseRestHandler
This Rest endpoint handles SAML LogoutResponse sent from idP with either HTTP-Redirect or HTTP-Post binding. For HTTP-Redirect binding, it expects SamlCompleteLogoutRequest.getPayload() be set to the query string of the redirect URI. For HTTP-Post binding, it expects SamlCompleteLogoutRequest.getPayload() be set to the value of SAMLResponse form parameter, i.e. caller of this API must do the work to extract the SAMLResponse value from body of the HTTP-Post request. The value must also be URL decoded if necessary.
  • Nested Class Summary

    Nested classes/interfaces inherited from class org.elasticsearch.rest.BaseRestHandler

    org.elasticsearch.rest.BaseRestHandler.RestChannelConsumer, org.elasticsearch.rest.BaseRestHandler.Wrapper

    Nested classes/interfaces inherited from interface org.elasticsearch.rest.RestHandler

    org.elasticsearch.rest.RestHandler.Route
  • Field Summary

    Fields inherited from class org.elasticsearch.xpack.security.rest.action.SecurityBaseRestHandler

    licenseState, settings

    Fields inherited from class org.elasticsearch.rest.BaseRestHandler

    DEFAULT_INCLUDE_TYPE_NAME_POLICY, INCLUDE_TYPE_NAME_PARAMETER, MULTI_ALLOW_EXPLICIT_INDEX
  • Constructor Summary

    Constructors
    Constructor
    Description
    RestSamlCompleteLogoutAction(org.elasticsearch.common.settings.Settings settings, org.elasticsearch.license.XPackLicenseState licenseState)
     
  • Method Summary

    Modifier and Type
    Method
    Description
     
    protected org.elasticsearch.rest.BaseRestHandler.RestChannelConsumer
    innerPrepareRequest(org.elasticsearch.rest.RestRequest request, org.elasticsearch.client.internal.node.NodeClient client)
    Implementers should implement this method as they normally would for BaseRestHandler.prepareRequest(RestRequest, NodeClient) and ensure that all request parameters are consumed prior to returning a value.
    List<org.elasticsearch.rest.RestHandler.Route>
     

    Methods inherited from class org.elasticsearch.xpack.security.rest.action.saml.SamlBaseRestHandler

    checkFeatureAvailable

    Methods inherited from class org.elasticsearch.xpack.security.rest.action.SecurityBaseRestHandler

    prepareRequest

    Methods inherited from class org.elasticsearch.rest.BaseRestHandler

    getUsageCount, handleRequest, mediaTypesValid, responseParams, responseParams, unrecognized

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.elasticsearch.rest.RestHandler

    allowsUnsafeBuffers, allowSystemIndexAccessByDefault, canTripCircuitBreaker, supportsContentStream
  • Constructor Details

    • RestSamlCompleteLogoutAction

      public RestSamlCompleteLogoutAction(org.elasticsearch.common.settings.Settings settings, org.elasticsearch.license.XPackLicenseState licenseState)
  • Method Details

    • getName

      public String getName()
      Specified by:
      getName in class org.elasticsearch.rest.BaseRestHandler
    • routes

      public List<org.elasticsearch.rest.RestHandler.Route> routes()
      Specified by:
      routes in interface org.elasticsearch.rest.RestHandler
      Specified by:
      routes in class org.elasticsearch.rest.BaseRestHandler
    • innerPrepareRequest

      protected org.elasticsearch.rest.BaseRestHandler.RestChannelConsumer innerPrepareRequest(org.elasticsearch.rest.RestRequest request, org.elasticsearch.client.internal.node.NodeClient client) throws IOException
      Description copied from class: SecurityBaseRestHandler
      Implementers should implement this method as they normally would for BaseRestHandler.prepareRequest(RestRequest, NodeClient) and ensure that all request parameters are consumed prior to returning a value. The returned value is not guaranteed to be executed unless security is licensed and all request parameters are known
      Specified by:
      innerPrepareRequest in class SecurityBaseRestHandler
      Throws:
      IOException