io.quarkus.oidc.runtime.AbstractOidcAuthenticationMechanism Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of quarkus-oidc Show documentation
Show all versions of quarkus-oidc Show documentation
Secure your applications with OpenID Connect Adapter and IDP such as Keycloak
package io.quarkus.oidc.runtime;
import io.quarkus.security.credential.TokenCredential;
import io.quarkus.security.identity.IdentityProviderManager;
import io.quarkus.security.identity.SecurityIdentity;
import io.quarkus.security.identity.request.TokenAuthenticationRequest;
import io.quarkus.vertx.http.runtime.security.HttpAuthenticationMechanism;
import io.quarkus.vertx.http.runtime.security.HttpSecurityUtils;
import io.smallrye.mutiny.Uni;
import io.vertx.ext.web.RoutingContext;
abstract class AbstractOidcAuthenticationMechanism {
protected DefaultTenantConfigResolver resolver;
private HttpAuthenticationMechanism parent;
protected Uni authenticate(IdentityProviderManager identityProviderManager,
RoutingContext context, TokenCredential token) {
context.put(HttpAuthenticationMechanism.class.getName(), parent);
return identityProviderManager.authenticate(HttpSecurityUtils.setRoutingContextAttribute(
new TokenAuthenticationRequest(token), context));
}
void init(HttpAuthenticationMechanism parent, DefaultTenantConfigResolver resolver) {
this.parent = parent;
this.resolver = resolver;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy