Search in sources :

Example 1 with HttpHeader

use of io.gravitee.common.http.HttpHeader in project gravitee-access-management by gravitee-io.

the class HttpUserProvider method create.

@Override
public Single<User> create(User user) {
    try {
        // prepare request
        final HttpUsersResourceConfiguration usersResourceConfiguration = configuration.getUsersResource();
        final HttpResourceConfiguration createResourceConfiguration = usersResourceConfiguration.getPaths().getCreateResource();
        final String createUserURI = usersResourceConfiguration.getBaseURL() + createResourceConfiguration.getBaseURL();
        final HttpMethod createUserHttpMethod = HttpMethod.valueOf(createResourceConfiguration.getHttpMethod().toString());
        final List<HttpHeader> createUserHttpHeaders = createResourceConfiguration.getHttpHeaders();
        final String createUserBody = createResourceConfiguration.getHttpBody();
        // prepare context
        AuthenticationContext authenticationContext = new SimpleAuthenticationContext();
        TemplateEngine templateEngine = authenticationContext.getTemplateEngine();
        // sanitize password
        if (!StringUtils.isEmpty(user.getCredentials())) {
            ((DefaultUser) user).setCredentials(SanitizeUtils.sanitize(passwordEncoder.encode(user.getCredentials()), createUserBody, createUserHttpHeaders));
        }
        templateEngine.getTemplateContext().setVariable(USER_CONTEXT_KEY, user);
        // process request
        final Single<HttpResponse<Buffer>> requestHandler = processRequest(templateEngine, createUserURI, createUserHttpMethod, createUserHttpHeaders, createUserBody);
        return requestHandler.map(httpResponse -> {
            final List<HttpResponseErrorCondition> errorConditions = createResourceConfiguration.getHttpResponseErrorConditions();
            Map<String, Object> userAttributes = processResponse(templateEngine, errorConditions, httpResponse);
            return convert(user.getUsername(), userAttributes);
        }).onErrorResumeNext(ex -> {
            if (ex instanceof AbstractManagementException) {
                return Single.error(ex);
            }
            LOGGER.error("An error has occurred while creating user {} from the remote HTTP identity provider", user.getUsername(), ex);
            return Single.error(new TechnicalManagementException("An error has occurred while creating user from the remote HTTP identity provider", ex));
        });
    } catch (Exception ex) {
        LOGGER.error("An error has occurred while creating the user {}", user.getUsername(), ex);
        return Single.error(new TechnicalManagementException("An error has occurred while creating the user", ex));
    }
}
Also used : HttpResourceConfiguration(io.gravitee.am.identityprovider.http.configuration.HttpResourceConfiguration) java.util(java.util) HttpHeaders(io.gravitee.common.http.HttpHeaders) HttpResponseErrorCondition(io.gravitee.am.identityprovider.http.configuration.HttpResponseErrorCondition) Completable(io.reactivex.Completable) Maybe(io.reactivex.Maybe) LoggerFactory(org.slf4j.LoggerFactory) Autowired(org.springframework.beans.factory.annotation.Autowired) Single(io.reactivex.Single) Constructor(java.lang.reflect.Constructor) HttpIdentityProviderConfiguration(io.gravitee.am.identityprovider.http.configuration.HttpIdentityProviderConfiguration) HttpHeader(io.gravitee.common.http.HttpHeader) TemplateEngine(io.gravitee.el.TemplateEngine) TechnicalManagementException(io.gravitee.am.service.exception.TechnicalManagementException) SanitizeUtils(io.gravitee.am.identityprovider.http.utils.SanitizeUtils) HttpUsersResourceConfiguration(io.gravitee.am.identityprovider.http.configuration.HttpUsersResourceConfiguration) HttpRequest(io.vertx.reactivex.ext.web.client.HttpRequest) io.gravitee.am.identityprovider.api(io.gravitee.am.identityprovider.api) Qualifier(org.springframework.beans.factory.annotation.Qualifier) JsonObject(io.vertx.core.json.JsonObject) Logger(org.slf4j.Logger) HttpResponse(io.vertx.reactivex.ext.web.client.HttpResponse) Import(org.springframework.context.annotation.Import) AbstractManagementException(io.gravitee.am.service.exception.AbstractManagementException) WebClient(io.vertx.reactivex.ext.web.client.WebClient) JsonArray(io.vertx.core.json.JsonArray) MultiMap(io.vertx.reactivex.core.MultiMap) MediaType(io.gravitee.common.http.MediaType) PasswordEncoder(io.gravitee.am.service.authentication.crypto.password.PasswordEncoder) HttpMethod(io.vertx.core.http.HttpMethod) HttpIdentityProviderResponse(io.gravitee.am.identityprovider.http.HttpIdentityProviderResponse) HttpUserProviderConfiguration(io.gravitee.am.identityprovider.http.user.spring.HttpUserProviderConfiguration) Buffer(io.vertx.reactivex.core.buffer.Buffer) StringUtils(org.springframework.util.StringUtils) AbstractManagementException(io.gravitee.am.service.exception.AbstractManagementException) HttpResponse(io.vertx.reactivex.ext.web.client.HttpResponse) HttpResourceConfiguration(io.gravitee.am.identityprovider.http.configuration.HttpResourceConfiguration) TechnicalManagementException(io.gravitee.am.service.exception.TechnicalManagementException) AbstractManagementException(io.gravitee.am.service.exception.AbstractManagementException) TemplateEngine(io.gravitee.el.TemplateEngine) HttpUsersResourceConfiguration(io.gravitee.am.identityprovider.http.configuration.HttpUsersResourceConfiguration) HttpHeader(io.gravitee.common.http.HttpHeader) MultiMap(io.vertx.reactivex.core.MultiMap) HttpMethod(io.vertx.core.http.HttpMethod) TechnicalManagementException(io.gravitee.am.service.exception.TechnicalManagementException)

Example 2 with HttpHeader

use of io.gravitee.common.http.HttpHeader in project gravitee-access-management by gravitee-io.

the class HttpUserProvider method findByUser.

private Maybe<User> findByUser(HttpUsersResourceConfiguration usersResourceConfiguration, HttpResourceConfiguration readResourceConfiguration, User user) {
    try {
        // prepare context
        AuthenticationContext authenticationContext = new SimpleAuthenticationContext();
        TemplateEngine templateEngine = authenticationContext.getTemplateEngine();
        templateEngine.getTemplateContext().setVariable(USER_CONTEXT_KEY, user);
        // prepare request
        final String readUserURI = usersResourceConfiguration.getBaseURL() + readResourceConfiguration.getBaseURL();
        final HttpMethod readUserHttpMethod = HttpMethod.valueOf(readResourceConfiguration.getHttpMethod().toString());
        final List<HttpHeader> readUserHttpHeaders = readResourceConfiguration.getHttpHeaders();
        final String readUserBody = readResourceConfiguration.getHttpBody();
        final Single<HttpResponse<Buffer>> requestHandler = processRequest(templateEngine, readUserURI, readUserHttpMethod, readUserHttpHeaders, readUserBody);
        return requestHandler.toMaybe().map(httpResponse -> {
            final List<HttpResponseErrorCondition> errorConditions = readResourceConfiguration.getHttpResponseErrorConditions();
            Map<String, Object> userAttributes = processResponse(templateEngine, errorConditions, httpResponse);
            return convert(user.getUsername(), userAttributes);
        }).onErrorResumeNext(ex -> {
            if (ex instanceof AbstractManagementException) {
                return Maybe.error(ex);
            }
            LOGGER.error("An error has occurred while searching user {} from the remote HTTP identity provider", user.getUsername() != null ? user.getUsername() : user.getEmail(), ex);
            return Maybe.error(new TechnicalManagementException("An error has occurred while searching user from the remote HTTP identity provider", ex));
        });
    } catch (Exception ex) {
        LOGGER.error("An error has occurred while searching the user {}", user.getUsername() != null ? user.getUsername() : user.getEmail(), ex);
        return Maybe.error(new TechnicalManagementException("An error has occurred while searching the user", ex));
    }
}
Also used : HttpResourceConfiguration(io.gravitee.am.identityprovider.http.configuration.HttpResourceConfiguration) java.util(java.util) HttpHeaders(io.gravitee.common.http.HttpHeaders) HttpResponseErrorCondition(io.gravitee.am.identityprovider.http.configuration.HttpResponseErrorCondition) Completable(io.reactivex.Completable) Maybe(io.reactivex.Maybe) LoggerFactory(org.slf4j.LoggerFactory) Autowired(org.springframework.beans.factory.annotation.Autowired) Single(io.reactivex.Single) Constructor(java.lang.reflect.Constructor) HttpIdentityProviderConfiguration(io.gravitee.am.identityprovider.http.configuration.HttpIdentityProviderConfiguration) HttpHeader(io.gravitee.common.http.HttpHeader) TemplateEngine(io.gravitee.el.TemplateEngine) TechnicalManagementException(io.gravitee.am.service.exception.TechnicalManagementException) SanitizeUtils(io.gravitee.am.identityprovider.http.utils.SanitizeUtils) HttpUsersResourceConfiguration(io.gravitee.am.identityprovider.http.configuration.HttpUsersResourceConfiguration) HttpRequest(io.vertx.reactivex.ext.web.client.HttpRequest) io.gravitee.am.identityprovider.api(io.gravitee.am.identityprovider.api) Qualifier(org.springframework.beans.factory.annotation.Qualifier) JsonObject(io.vertx.core.json.JsonObject) Logger(org.slf4j.Logger) HttpResponse(io.vertx.reactivex.ext.web.client.HttpResponse) Import(org.springframework.context.annotation.Import) AbstractManagementException(io.gravitee.am.service.exception.AbstractManagementException) WebClient(io.vertx.reactivex.ext.web.client.WebClient) JsonArray(io.vertx.core.json.JsonArray) MultiMap(io.vertx.reactivex.core.MultiMap) MediaType(io.gravitee.common.http.MediaType) PasswordEncoder(io.gravitee.am.service.authentication.crypto.password.PasswordEncoder) HttpMethod(io.vertx.core.http.HttpMethod) HttpIdentityProviderResponse(io.gravitee.am.identityprovider.http.HttpIdentityProviderResponse) HttpUserProviderConfiguration(io.gravitee.am.identityprovider.http.user.spring.HttpUserProviderConfiguration) Buffer(io.vertx.reactivex.core.buffer.Buffer) StringUtils(org.springframework.util.StringUtils) AbstractManagementException(io.gravitee.am.service.exception.AbstractManagementException) HttpResponse(io.vertx.reactivex.ext.web.client.HttpResponse) TechnicalManagementException(io.gravitee.am.service.exception.TechnicalManagementException) AbstractManagementException(io.gravitee.am.service.exception.AbstractManagementException) TemplateEngine(io.gravitee.el.TemplateEngine) HttpHeader(io.gravitee.common.http.HttpHeader) MultiMap(io.vertx.reactivex.core.MultiMap) HttpMethod(io.vertx.core.http.HttpMethod) TechnicalManagementException(io.gravitee.am.service.exception.TechnicalManagementException)

Example 3 with HttpHeader

use of io.gravitee.common.http.HttpHeader in project gravitee-access-management by gravitee-io.

the class HttpAuthenticationProvider method loadByUsername0.

private Maybe<User> loadByUsername0(AuthenticationContext authenticationContext, User user) {
    // prepare request
    final HttpAuthResourcePathsConfiguration authResourceConfiguration = configuration.getAuthenticationResource().getPaths();
    if (authResourceConfiguration == null) {
        return Maybe.empty();
    }
    if (authResourceConfiguration.getLoadPreAuthUserResource() == null) {
        return Maybe.empty();
    }
    final HttpResourceConfiguration readResourceConfiguration = authResourceConfiguration.getLoadPreAuthUserResource();
    if (readResourceConfiguration.getBaseURL() == null) {
        LOGGER.warn("Missing pre-authenticated user resource base URL");
        return Maybe.empty();
    }
    if (readResourceConfiguration.getHttpMethod() == null) {
        LOGGER.warn("Missing pre-authenticated user resource HTTP method");
        return Maybe.empty();
    }
    try {
        // prepare context
        TemplateEngine templateEngine = authenticationContext.getTemplateEngine();
        templateEngine.getTemplateContext().setVariable(USER_CONTEXT_KEY, user);
        // prepare request
        final String readUserURI = readResourceConfiguration.getBaseURL();
        final HttpMethod readUserHttpMethod = HttpMethod.valueOf(readResourceConfiguration.getHttpMethod().toString());
        final List<HttpHeader> readUserHttpHeaders = readResourceConfiguration.getHttpHeaders();
        final String readUserBody = readResourceConfiguration.getHttpBody();
        final Single<HttpResponse<Buffer>> requestHandler = processRequest(templateEngine, readUserURI, readUserHttpMethod, readUserHttpHeaders, readUserBody);
        return requestHandler.toMaybe().map(httpResponse -> {
            final List<HttpResponseErrorCondition> errorConditions = readResourceConfiguration.getHttpResponseErrorConditions();
            Map<String, Object> userAttributes = processResponse(templateEngine, errorConditions, httpResponse);
            return createUser(authenticationContext, userAttributes);
        }).onErrorResumeNext(ex -> {
            if (ex instanceof AbstractManagementException) {
                return Maybe.error(ex);
            }
            LOGGER.error("An error has occurred when loading pre-authenticated user {} from the remote HTTP identity provider", user.getUsername() != null ? user.getUsername() : user.getEmail(), ex);
            return Maybe.error(new TechnicalManagementException("An error has occurred when loading pre-authenticated user from the remote HTTP identity provider", ex));
        });
    } catch (Exception ex) {
        LOGGER.error("An error has occurred when loading pre-authenticated user {}", user.getUsername() != null ? user.getUsername() : user.getEmail(), ex);
        return Maybe.error(new TechnicalManagementException("An error has occurred when when loading pre-authenticated user", ex));
    }
}
Also used : HttpResourceConfiguration(io.gravitee.am.identityprovider.http.configuration.HttpResourceConfiguration) java.util(java.util) HttpHeaders(io.gravitee.common.http.HttpHeaders) HttpAuthenticationProviderConfiguration(io.gravitee.am.identityprovider.http.authentication.spring.HttpAuthenticationProviderConfiguration) InternalAuthenticationServiceException(io.gravitee.am.common.exception.authentication.InternalAuthenticationServiceException) HttpResponseErrorCondition(io.gravitee.am.identityprovider.http.configuration.HttpResponseErrorCondition) Maybe(io.reactivex.Maybe) LoggerFactory(org.slf4j.LoggerFactory) Autowired(org.springframework.beans.factory.annotation.Autowired) Single(io.reactivex.Single) Constructor(java.lang.reflect.Constructor) HttpIdentityProviderConfiguration(io.gravitee.am.identityprovider.http.configuration.HttpIdentityProviderConfiguration) HttpHeader(io.gravitee.common.http.HttpHeader) TemplateEngine(io.gravitee.el.TemplateEngine) TechnicalManagementException(io.gravitee.am.service.exception.TechnicalManagementException) SanitizeUtils(io.gravitee.am.identityprovider.http.utils.SanitizeUtils) AuthenticationException(io.gravitee.am.common.exception.authentication.AuthenticationException) HttpRequest(io.vertx.reactivex.ext.web.client.HttpRequest) io.gravitee.am.identityprovider.api(io.gravitee.am.identityprovider.api) Qualifier(org.springframework.beans.factory.annotation.Qualifier) JsonObject(io.vertx.core.json.JsonObject) StandardClaims(io.gravitee.am.common.oidc.StandardClaims) Logger(org.slf4j.Logger) HttpResponse(io.vertx.reactivex.ext.web.client.HttpResponse) Import(org.springframework.context.annotation.Import) AbstractManagementException(io.gravitee.am.service.exception.AbstractManagementException) WebClient(io.vertx.reactivex.ext.web.client.WebClient) HttpAuthResourcePathsConfiguration(io.gravitee.am.identityprovider.http.configuration.HttpAuthResourcePathsConfiguration) JsonArray(io.vertx.core.json.JsonArray) MultiMap(io.vertx.reactivex.core.MultiMap) MediaType(io.gravitee.common.http.MediaType) PasswordEncoder(io.gravitee.am.service.authentication.crypto.password.PasswordEncoder) HttpMethod(io.vertx.core.http.HttpMethod) HttpIdentityProviderResponse(io.gravitee.am.identityprovider.http.HttpIdentityProviderResponse) Buffer(io.vertx.reactivex.core.buffer.Buffer) AbstractManagementException(io.gravitee.am.service.exception.AbstractManagementException) HttpResponse(io.vertx.reactivex.ext.web.client.HttpResponse) HttpResourceConfiguration(io.gravitee.am.identityprovider.http.configuration.HttpResourceConfiguration) InternalAuthenticationServiceException(io.gravitee.am.common.exception.authentication.InternalAuthenticationServiceException) TechnicalManagementException(io.gravitee.am.service.exception.TechnicalManagementException) AuthenticationException(io.gravitee.am.common.exception.authentication.AuthenticationException) AbstractManagementException(io.gravitee.am.service.exception.AbstractManagementException) TemplateEngine(io.gravitee.el.TemplateEngine) HttpHeader(io.gravitee.common.http.HttpHeader) HttpAuthResourcePathsConfiguration(io.gravitee.am.identityprovider.http.configuration.HttpAuthResourcePathsConfiguration) MultiMap(io.vertx.reactivex.core.MultiMap) HttpMethod(io.vertx.core.http.HttpMethod) TechnicalManagementException(io.gravitee.am.service.exception.TechnicalManagementException)

Example 4 with HttpHeader

use of io.gravitee.common.http.HttpHeader in project gravitee-access-management by gravitee-io.

the class HttpUserProviderTestConfiguration method httpIdentityProviderConfiguration.

@Bean
public HttpIdentityProviderConfiguration httpIdentityProviderConfiguration() {
    HttpIdentityProviderConfiguration configuration = new HttpIdentityProviderConfiguration();
    HttpResourceConfiguration createResource = new HttpResourceConfiguration();
    createResource.setBaseURL("/users");
    createResource.setHttpMethod(HttpMethod.POST);
    HttpHeader createHttpHeader = new HttpHeader();
    createHttpHeader.setName("Content-Type");
    createHttpHeader.setValue("application/json");
    createResource.setHttpHeaders(Collections.singletonList(createHttpHeader));
    JsonObject createJsonObject = new JsonObject();
    createJsonObject.put("username", "{#user.username}");
    createResource.setHttpBody(createJsonObject.encode());
    HttpResponseErrorCondition createErrorCondition = new HttpResponseErrorCondition();
    createErrorCondition.setValue("{#usersResponse.status == 400}");
    createErrorCondition.setException("io.gravitee.am.service.exception.UserAlreadyExistsException");
    createResource.setHttpResponseErrorConditions(Arrays.asList(createErrorCondition));
    HttpResourceConfiguration readResource = new HttpResourceConfiguration();
    readResource.setBaseURL("/users?username={#user.username}");
    readResource.setHttpMethod(HttpMethod.GET);
    HttpResponseErrorCondition readErrorCondition = new HttpResponseErrorCondition();
    readErrorCondition.setValue("{#usersResponse.status == 404}");
    readErrorCondition.setException("io.gravitee.am.service.exception.UserNotFoundException");
    readResource.setHttpResponseErrorConditions(Arrays.asList(readErrorCondition));
    HttpResourceConfiguration readByEmailResource = new HttpResourceConfiguration();
    readByEmailResource.setBaseURL("/users?email={#user.email}");
    readByEmailResource.setHttpMethod(HttpMethod.GET);
    HttpResponseErrorCondition readByEmailErrorCondition = new HttpResponseErrorCondition();
    readByEmailErrorCondition.setValue("{#usersResponse.status == 404}");
    readByEmailErrorCondition.setException("io.gravitee.am.service.exception.UserNotFoundException");
    readByEmailResource.setHttpResponseErrorConditions(Arrays.asList(readByEmailErrorCondition));
    HttpResourceConfiguration updateResource = new HttpResourceConfiguration();
    updateResource.setBaseURL("/users/{#user.id}");
    updateResource.setHttpMethod(HttpMethod.PUT);
    HttpHeader updateHttpHeader = new HttpHeader();
    updateHttpHeader.setName("Content-Type");
    updateHttpHeader.setValue("application/json");
    updateResource.setHttpHeaders(Collections.singletonList(updateHttpHeader));
    JsonObject updateJsonObject = new JsonObject();
    createJsonObject.put("username", "{#user.username}");
    updateResource.setHttpBody(updateJsonObject.encode());
    HttpResponseErrorCondition updateErrorCondition = new HttpResponseErrorCondition();
    updateErrorCondition.setValue("{#usersResponse.status == 404}");
    updateErrorCondition.setException("io.gravitee.am.service.exception.UserNotFoundException");
    updateResource.setHttpResponseErrorConditions(Arrays.asList(updateErrorCondition));
    HttpResourceConfiguration deleteResource = new HttpResourceConfiguration();
    deleteResource.setBaseURL("/users/{#user.id}");
    deleteResource.setHttpMethod(HttpMethod.DELETE);
    HttpResponseErrorCondition deleteErrorCondition = new HttpResponseErrorCondition();
    deleteErrorCondition.setValue("{#usersResponse.status == 404}");
    deleteErrorCondition.setException("io.gravitee.am.service.exception.UserNotFoundException");
    deleteResource.setHttpResponseErrorConditions(Arrays.asList(deleteErrorCondition));
    HttpUsersResourceConfiguration usersResourceConfiguration = new HttpUsersResourceConfiguration();
    usersResourceConfiguration.setBaseURL("http://localhost:19998/api");
    usersResourceConfiguration.setIdentifierAttribute("id");
    HttpUsersResourcePathsConfiguration pathsConfiguration = new HttpUsersResourcePathsConfiguration();
    pathsConfiguration.setCreateResource(createResource);
    pathsConfiguration.setReadResource(readResource);
    pathsConfiguration.setReadResourceByEmail(readByEmailResource);
    pathsConfiguration.setUpdateResource(updateResource);
    pathsConfiguration.setDeleteResource(deleteResource);
    usersResourceConfiguration.setPaths(pathsConfiguration);
    configuration.setUsersResource(usersResourceConfiguration);
    return configuration;
}
Also used : HttpHeader(io.gravitee.common.http.HttpHeader) JsonObject(io.vertx.core.json.JsonObject) Bean(org.springframework.context.annotation.Bean)

Example 5 with HttpHeader

use of io.gravitee.common.http.HttpHeader in project gravitee-api-management by gravitee-io.

the class AlertMapper method createAlertWebhookNotifications.

private List<Notification> createAlertWebhookNotifications(AlertInput alertInput) {
    if (alertInput.getWebhook() != null) {
        try {
            WebhookNotifierConfiguration webhookConfig = new WebhookNotifierConfiguration(alertInput.getWebhook().getHttpMethod().getValue(), alertInput.getWebhook().getUrl().strip());
            if (alertInput.getWebhook().getHttpMethod() == HttpMethod.PUT || alertInput.getWebhook().getHttpMethod() == HttpMethod.POST || alertInput.getWebhook().getHttpMethod() == HttpMethod.PATCH) {
                webhookConfig.getHeaders().add(new HttpHeader(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_JSON));
                webhookConfig.setBody(objectMapper.writeValueAsString(alertInput));
            }
            Notification webhookNotification = new Notification();
            webhookNotification.setType(DEFAULT_WEBHOOK_NOTIFIER);
            webhookNotification.setConfiguration(objectMapper.writeValueAsString(webhookConfig));
            return List.of(webhookNotification);
        } catch (JsonProcessingException e) {
            LOGGER.error("Failed to convert AlertWebhook to List<Notification>", e);
        }
    }
    return Collections.emptyList();
}
Also used : HttpHeader(io.gravitee.common.http.HttpHeader) WebhookNotifierConfiguration(io.gravitee.rest.api.service.impl.alert.WebhookNotifierConfiguration) JsonProcessingException(com.fasterxml.jackson.core.JsonProcessingException) Notification(io.gravitee.notifier.api.Notification)

Aggregations

HttpHeader (io.gravitee.common.http.HttpHeader)9 JsonObject (io.vertx.core.json.JsonObject)8 HttpIdentityProviderConfiguration (io.gravitee.am.identityprovider.http.configuration.HttpIdentityProviderConfiguration)7 HttpResourceConfiguration (io.gravitee.am.identityprovider.http.configuration.HttpResourceConfiguration)7 HttpResponseErrorCondition (io.gravitee.am.identityprovider.http.configuration.HttpResponseErrorCondition)7 io.gravitee.am.identityprovider.api (io.gravitee.am.identityprovider.api)6 HttpIdentityProviderResponse (io.gravitee.am.identityprovider.http.HttpIdentityProviderResponse)6 SanitizeUtils (io.gravitee.am.identityprovider.http.utils.SanitizeUtils)6 PasswordEncoder (io.gravitee.am.service.authentication.crypto.password.PasswordEncoder)6 AbstractManagementException (io.gravitee.am.service.exception.AbstractManagementException)6 TechnicalManagementException (io.gravitee.am.service.exception.TechnicalManagementException)6 HttpHeaders (io.gravitee.common.http.HttpHeaders)6 MediaType (io.gravitee.common.http.MediaType)6 TemplateEngine (io.gravitee.el.TemplateEngine)6 Maybe (io.reactivex.Maybe)6 Single (io.reactivex.Single)6 HttpMethod (io.vertx.core.http.HttpMethod)6 JsonArray (io.vertx.core.json.JsonArray)6 MultiMap (io.vertx.reactivex.core.MultiMap)6 Buffer (io.vertx.reactivex.core.buffer.Buffer)6