Package io.quarkus.oidc.runtime
Class OidcUtils
java.lang.Object
io.quarkus.oidc.runtime.OidcUtils
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) static final Stringstatic final Stringstatic final String(package private) static final BlockingTaskRunner<Void>static final Stringstatic final Integerstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final String(package private) static final Stringstatic final String(package private) static final io.smallrye.mutiny.Uni<Void> -
Method Summary
Modifier and TypeMethodDescription(package private) static voidaddTokenScopesAsPermissions(QuarkusSecurityIdentity.Builder builder, Collection<String> scopes) static io.vertx.core.json.JsonObjectdecodeJwtContent(String jwt) static Stringstatic io.vertx.core.json.JsonObjectdecodeJwtHeaders(String jwt) static Stringstatic io.vertx.core.json.JsonObjectdecryptJson(String jweString, Key key) static StringdecryptString(String jweString, Key key) static StringdecryptString(String jweString, Key key, io.smallrye.jwt.algorithm.KeyEncryptionAlgorithm algorithm) static StringencryptJson(io.vertx.core.json.JsonObject json, SecretKey key) static StringencryptString(String jweString, SecretKey key) findRoles(String clientId, OidcTenantConfig.Roles rolesConfig, io.vertx.core.json.JsonObject json) static StringgetCookieSuffix(OidcTenantConfig oidcConfig) static io.smallrye.mutiny.Uni<io.vertx.core.MultiMap>getFormUrlEncodedData(io.vertx.ext.web.RoutingContext context) static StringgetJwtContentPart(String jwt) static StringgetSessionCookie(Map<String, Object> context, Map<String, io.vertx.core.http.Cookie> cookies, OidcTenantConfig oidcTenantConfig) static StringgetSessionCookieName(OidcTenantConfig oidcConfig) static byte[]getSha256Digest(byte[] value) static booleanisEncryptedToken(String token) static booleanisFormUrlEncodedRequest(io.vertx.ext.web.RoutingContext context) static booleanisOpaqueToken(String token) static booleanisServiceApp(OidcTenantConfig oidcConfig) static booleanisWebApp(OidcTenantConfig oidcConfig) (package private) static OidcTenantConfigmergeTenantConfig(OidcTenantConfig tenant, OidcTenantConfig provider) Merge the current tenant and well-known OpenId Connect provider configurations.(package private) static StringremoveCookie(io.vertx.ext.web.RoutingContext context, OidcTenantConfig oidcConfig, String cookieName) (package private) static voidremoveCookie(io.vertx.ext.web.RoutingContext context, io.vertx.core.http.impl.ServerCookie cookie, OidcTenantConfig oidcConfig) (package private) static io.smallrye.mutiny.Uni<Void>removeSessionCookie(io.vertx.ext.web.RoutingContext context, OidcTenantConfig oidcConfig, TokenStateManager tokenStateManager) (package private) static OidcTenantConfigresolveProviderConfig(OidcTenantConfig oidcTenantConfig) static voidsetBlockingApiAttribute(QuarkusSecurityIdentity.Builder builder, io.vertx.ext.web.RoutingContext vertxContext) (package private) static voidsetCookiePath(io.vertx.ext.web.RoutingContext context, OidcTenantConfig.Authentication auth, io.vertx.core.http.impl.ServerCookie cookie) static voidsetRoutingContextAttribute(QuarkusSecurityIdentity.Builder builder, io.vertx.ext.web.RoutingContext routingContext) static voidsetSecurityIdentityConfigMetadata(QuarkusSecurityIdentity.Builder builder, TenantConfigContext resolvedContext) static voidsetSecurityIdentityIntrospection(QuarkusSecurityIdentity.Builder builder, TokenIntrospection introspectionResult) (package private) static voidsetSecurityIdentityPermissions(QuarkusSecurityIdentity.Builder builder, OidcTenantConfig config, io.vertx.core.json.JsonObject permissionsJson) static voidsetSecurityIdentityRoles(QuarkusSecurityIdentity.Builder builder, OidcTenantConfig config, io.vertx.core.json.JsonObject rolesJson) static voidsetSecurityIdentityUserInfo(QuarkusSecurityIdentity.Builder builder, UserInfo userInfo) static voidsetTenantIdAttribute(QuarkusSecurityIdentity.Builder builder, OidcTenantConfig config) (package private) static Permission[]transformScopesToPermissions(Collection<String> scopes) (package private) static QuarkusSecurityIdentityvalidateAndCreateIdentity(Map<String, Object> requestData, io.quarkus.security.credential.TokenCredential credential, TenantConfigContext resolvedContext, io.vertx.core.json.JsonObject tokenJson, io.vertx.core.json.JsonObject rolesJson, UserInfo userInfo, TokenIntrospection introspectionResult, io.quarkus.security.identity.request.TokenAuthenticationRequest request) static voidvalidatePrimaryJwtTokenType(OidcTenantConfig.Token tokenConfig, io.vertx.core.json.JsonObject tokenJson)
-
Field Details
-
CONFIG_METADATA_ATTRIBUTE
- See Also:
-
USER_INFO_ATTRIBUTE
- See Also:
-
INTROSPECTION_ATTRIBUTE
- See Also:
-
TENANT_ID_ATTRIBUTE
- See Also:
-
DEFAULT_TENANT_ID
- See Also:
-
SESSION_COOKIE_NAME
- See Also:
-
SESSION_COOKIE_CHUNK
- See Also:
-
STATE_COOKIE_NAME
- See Also:
-
MAX_COOKIE_VALUE_LENGTH
-
POST_LOGOUT_COOKIE_NAME
- See Also:
-
UNDERSCORE
- See Also:
-
CODE_ACCESS_TOKEN_RESULT
- See Also:
-
VOID_UNI
-
deleteTokensRequestContext
-
QUARKUS_IDENTITY_EXPIRE_TIME
- See Also:
-
-
Method Details
-
getSessionCookie
-
getSessionCookieName
-
getCookieSuffix
-
isServiceApp
-
isWebApp
-
isEncryptedToken
-
isOpaqueToken
-
decodeJwtContent
-
decodeJwtContentAsString
-
getJwtContentPart
-
decodeJwtHeaders
-
decodeJwtHeadersAsString
-
findRoles
public static List<String> findRoles(String clientId, OidcTenantConfig.Roles rolesConfig, io.vertx.core.json.JsonObject json) -
validateAndCreateIdentity
static QuarkusSecurityIdentity validateAndCreateIdentity(Map<String, Object> requestData, io.quarkus.security.credential.TokenCredential credential, TenantConfigContext resolvedContext, io.vertx.core.json.JsonObject tokenJson, io.vertx.core.json.JsonObject rolesJson, UserInfo userInfo, TokenIntrospection introspectionResult, io.quarkus.security.identity.request.TokenAuthenticationRequest request) -
setSecurityIdentityPermissions
static void setSecurityIdentityPermissions(QuarkusSecurityIdentity.Builder builder, OidcTenantConfig config, io.vertx.core.json.JsonObject permissionsJson) -
addTokenScopesAsPermissions
static void addTokenScopesAsPermissions(QuarkusSecurityIdentity.Builder builder, Collection<String> scopes) -
transformScopesToPermissions
-
setSecurityIdentityRoles
public static void setSecurityIdentityRoles(QuarkusSecurityIdentity.Builder builder, OidcTenantConfig config, io.vertx.core.json.JsonObject rolesJson) -
setBlockingApiAttribute
public static void setBlockingApiAttribute(QuarkusSecurityIdentity.Builder builder, io.vertx.ext.web.RoutingContext vertxContext) -
setTenantIdAttribute
public static void setTenantIdAttribute(QuarkusSecurityIdentity.Builder builder, OidcTenantConfig config) -
setRoutingContextAttribute
public static void setRoutingContextAttribute(QuarkusSecurityIdentity.Builder builder, io.vertx.ext.web.RoutingContext routingContext) -
setSecurityIdentityUserInfo
public static void setSecurityIdentityUserInfo(QuarkusSecurityIdentity.Builder builder, UserInfo userInfo) -
setSecurityIdentityIntrospection
public static void setSecurityIdentityIntrospection(QuarkusSecurityIdentity.Builder builder, TokenIntrospection introspectionResult) -
setSecurityIdentityConfigMetadata
public static void setSecurityIdentityConfigMetadata(QuarkusSecurityIdentity.Builder builder, TenantConfigContext resolvedContext) -
validatePrimaryJwtTokenType
public static void validatePrimaryJwtTokenType(OidcTenantConfig.Token tokenConfig, io.vertx.core.json.JsonObject tokenJson) -
removeSessionCookie
static io.smallrye.mutiny.Uni<Void> removeSessionCookie(io.vertx.ext.web.RoutingContext context, OidcTenantConfig oidcConfig, TokenStateManager tokenStateManager) -
removeCookie
static String removeCookie(io.vertx.ext.web.RoutingContext context, OidcTenantConfig oidcConfig, String cookieName) -
removeCookie
static void removeCookie(io.vertx.ext.web.RoutingContext context, io.vertx.core.http.impl.ServerCookie cookie, OidcTenantConfig oidcConfig) -
setCookiePath
static void setCookiePath(io.vertx.ext.web.RoutingContext context, OidcTenantConfig.Authentication auth, io.vertx.core.http.impl.ServerCookie cookie) -
mergeTenantConfig
Merge the current tenant and well-known OpenId Connect provider configurations. Initialized properties take priority over uninitialized properties. Initialized properties in the current tenant configuration take priority over the same initialized properties in the well-known OpenId Connect provider configuration. Tenant id property of the current tenant must be set before the merge operation.- Parameters:
tenant- current tenant configurationprovider- well-known OpenId Connect provider configuration- Returns:
- merged configuration
-
resolveProviderConfig
-
getSha256Digest
- Throws:
NoSuchAlgorithmException
-
encryptJson
public static String encryptJson(io.vertx.core.json.JsonObject json, SecretKey key) throws Exception - Throws:
Exception
-
encryptString
- Throws:
Exception
-
decryptJson
- Throws:
Exception
-
decryptString
- Throws:
Exception
-
decryptString
public static String decryptString(String jweString, Key key, io.smallrye.jwt.algorithm.KeyEncryptionAlgorithm algorithm) throws org.jose4j.lang.JoseException - Throws:
org.jose4j.lang.JoseException
-
isFormUrlEncodedRequest
public static boolean isFormUrlEncodedRequest(io.vertx.ext.web.RoutingContext context) -
getFormUrlEncodedData
public static io.smallrye.mutiny.Uni<io.vertx.core.MultiMap> getFormUrlEncodedData(io.vertx.ext.web.RoutingContext context)
-