Class RestGetTokenAction
java.lang.Object
org.elasticsearch.rest.BaseRestHandler
org.elasticsearch.xpack.security.rest.action.SecurityBaseRestHandler
org.elasticsearch.xpack.security.rest.action.oauth2.RestGetTokenAction
- All Implemented Interfaces:
org.elasticsearch.rest.RestHandler,org.elasticsearch.rest.RestRequestFilter
public final class RestGetTokenAction
extends SecurityBaseRestHandler
implements org.elasticsearch.rest.RestRequestFilter
An implementation of a OAuth2-esque API for retrieval of an access token.
This API does not conform to the RFC completely as it uses XContent for the request body
instead for form encoded data. This is a relatively common modification of the OAuth2
specification as this aspect does not make the most sense since the response body is
expected to be JSON
-
Nested Class Summary
Nested classes/interfaces inherited from class org.elasticsearch.rest.BaseRestHandler
org.elasticsearch.rest.BaseRestHandler.RestChannelConsumer, org.elasticsearch.rest.BaseRestHandler.WrapperNested classes/interfaces inherited from interface org.elasticsearch.rest.RestHandler
org.elasticsearch.rest.RestHandler.Route -
Field Summary
FieldsFields inherited from class org.elasticsearch.xpack.security.rest.action.SecurityBaseRestHandler
licenseState, settingsFields inherited from class org.elasticsearch.rest.BaseRestHandler
DEFAULT_INCLUDE_TYPE_NAME_POLICY, INCLUDE_TYPE_NAME_PARAMETER, MULTI_ALLOW_EXPLICIT_INDEX -
Constructor Summary
ConstructorsConstructorDescriptionRestGetTokenAction(org.elasticsearch.common.settings.Settings settings, org.elasticsearch.license.XPackLicenseState xPackLicenseState) -
Method Summary
Modifier and TypeMethodDescriptionprotected ExceptioncheckFeatureAvailable(org.elasticsearch.rest.RestRequest request) Check whether the given request is allowed within the current license state and setup, and return the name of any unlicensed feature.getName()protected org.elasticsearch.rest.BaseRestHandler.RestChannelConsumerinnerPrepareRequest(org.elasticsearch.rest.RestRequest request, org.elasticsearch.client.internal.node.NodeClient client) Implementers should implement this method as they normally would forBaseRestHandler.prepareRequest(RestRequest, NodeClient)and ensure that all request parameters are consumed prior to returning a value.List<org.elasticsearch.rest.RestHandler.Route>routes()Methods inherited from class org.elasticsearch.xpack.security.rest.action.SecurityBaseRestHandler
prepareRequestMethods inherited from class org.elasticsearch.rest.BaseRestHandler
getUsageCount, handleRequest, mediaTypesValid, responseParams, responseParams, unrecognizedMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.elasticsearch.rest.RestHandler
allowsUnsafeBuffers, allowSystemIndexAccessByDefault, canTripCircuitBreaker, supportsContentStreamMethods inherited from interface org.elasticsearch.rest.RestRequestFilter
getFilteredRequest
-
Field Details
-
logger
protected org.apache.logging.log4j.Logger logger
-
-
Constructor Details
-
RestGetTokenAction
public RestGetTokenAction(org.elasticsearch.common.settings.Settings settings, org.elasticsearch.license.XPackLicenseState xPackLicenseState)
-
-
Method Details
-
routes
- Specified by:
routesin interfaceorg.elasticsearch.rest.RestHandler- Specified by:
routesin classorg.elasticsearch.rest.BaseRestHandler
-
getName
- Specified by:
getNamein classorg.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:SecurityBaseRestHandlerImplementers should implement this method as they normally would forBaseRestHandler.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:
innerPrepareRequestin classSecurityBaseRestHandler- Throws:
IOException
-
getFilteredFields
- Specified by:
getFilteredFieldsin interfaceorg.elasticsearch.rest.RestRequestFilter
-
checkFeatureAvailable
Description copied from class:SecurityBaseRestHandlerCheck whether the given request is allowed within the current license state and setup, and return the name of any unlicensed feature. By default this returns an exception if security is not enabled. Sub-classes can override this method if they have additional requirements.- Overrides:
checkFeatureAvailablein classSecurityBaseRestHandler- Returns:
nullif all required features are available, otherwise an exception to be sent to the requestor
-