Package io.quarkus.security.runtime
Class SecurityCheckRecorder
- java.lang.Object
-
- io.quarkus.security.runtime.SecurityCheckRecorder
-
public class SecurityCheckRecorder extends Object
-
-
Constructor Summary
Constructors Constructor Description SecurityCheckRecorder()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addMethod(io.quarkus.runtime.RuntimeValue<SecurityCheckStorageBuilder> builder, String className, String methodName, String[] parameterTypes, SecurityCheck securityCheck)
SecurityCheck
authenticated()
void
create(io.quarkus.runtime.RuntimeValue<SecurityCheckStorageBuilder> builder)
Function<Object[],Permission>
createComputedPermission(String permissionName, String clazz, String[] actions, boolean passActionsToConstructor, int[] formalParamIndexes)
Creates function that transform arguments of a method annotated withPermissionsAllowed
to customPermission
.io.quarkus.runtime.RuntimeValue<Permission>
createPermission(String name, String clazz, String[] actions, boolean passActionsToConstructor)
Creates permission.io.quarkus.runtime.RuntimeValue<Permission>
createStringPermission(String name, String[] actions)
SecurityCheck
denyAll()
static SecurityCheckStorage
getStorage()
io.quarkus.runtime.RuntimeValue<SecurityCheckStorageBuilder>
newBuilder()
SecurityCheck
permissionsAllowed(Function<Object[],Permission> computedPermission, io.quarkus.runtime.RuntimeValue<Permission> permissionRuntimeValue)
CreatesSecurityCheck
for a single permission.SecurityCheck
permissionsAllowed(List<Function<Object[],Permission>> computedPermissions, List<io.quarkus.runtime.RuntimeValue<Permission>> permissionsRuntimeValue)
CreatesSecurityCheck
for a permission set.SecurityCheck
permissionsAllowedGroups(List<List<Function<Object[],Permission>>> computedPermissionGroups, List<List<io.quarkus.runtime.RuntimeValue<Permission>>> permissionGroupsRuntimeValue)
CreatesSecurityCheck
for a permission groups.SecurityCheck
permitAll()
void
resolveRolesAllowedConfigExpRoles()
SecurityCheck
rolesAllowed(String... roles)
SecurityCheck
rolesAllowedSupplier(String[] allowedRoles, int[] configExpIndexes, int[] configKeys)
Function<Object[],Permission>
toComputedPermission(io.quarkus.runtime.RuntimeValue<Permission> permissionRuntimeVal)
-
-
-
Method Detail
-
getStorage
public static SecurityCheckStorage getStorage()
-
denyAll
public SecurityCheck denyAll()
-
permitAll
public SecurityCheck permitAll()
-
rolesAllowed
public SecurityCheck rolesAllowed(String... roles)
-
rolesAllowedSupplier
public SecurityCheck rolesAllowedSupplier(String[] allowedRoles, int[] configExpIndexes, int[] configKeys)
-
authenticated
public SecurityCheck authenticated()
-
permissionsAllowed
public SecurityCheck permissionsAllowed(Function<Object[],Permission> computedPermission, io.quarkus.runtime.RuntimeValue<Permission> permissionRuntimeValue)
CreatesSecurityCheck
for a single permission.- Returns:
- SecurityCheck
-
permissionsAllowed
public SecurityCheck permissionsAllowed(List<Function<Object[],Permission>> computedPermissions, List<io.quarkus.runtime.RuntimeValue<Permission>> permissionsRuntimeValue)
CreatesSecurityCheck
for a permission set. User must have at least one of security check permissions.- Returns:
- SecurityCheck
-
permissionsAllowedGroups
public SecurityCheck permissionsAllowedGroups(List<List<Function<Object[],Permission>>> computedPermissionGroups, List<List<io.quarkus.runtime.RuntimeValue<Permission>>> permissionGroupsRuntimeValue)
CreatesSecurityCheck
for a permission groups. User must have at least one of security check permissions from each permission group.- Returns:
- SecurityCheck
-
toComputedPermission
public Function<Object[],Permission> toComputedPermission(io.quarkus.runtime.RuntimeValue<Permission> permissionRuntimeVal)
-
createStringPermission
public io.quarkus.runtime.RuntimeValue<Permission> createStringPermission(String name, String[] actions)
-
createPermission
public io.quarkus.runtime.RuntimeValue<Permission> createPermission(String name, String clazz, String[] actions, boolean passActionsToConstructor)
Creates permission.- Parameters:
name
- permission nameclazz
- permission classactions
- nullable actionspassActionsToConstructor
- flag signals whether Permission constructor accepts (name) or (name, actions)- Returns:
RuntimeValue
-
createComputedPermission
public Function<Object[],Permission> createComputedPermission(String permissionName, String clazz, String[] actions, boolean passActionsToConstructor, int[] formalParamIndexes)
Creates function that transform arguments of a method annotated withPermissionsAllowed
to customPermission
.- Parameters:
permissionName
- permission nameclazz
- permission classactions
- permission actionspassActionsToConstructor
- flag signals whether Permission constructor accepts (name) or (name, actions)formalParamIndexes
- indexes of secured method params that should be passed to permission constructor- Returns:
- computed permission
-
newBuilder
public io.quarkus.runtime.RuntimeValue<SecurityCheckStorageBuilder> newBuilder()
-
addMethod
public void addMethod(io.quarkus.runtime.RuntimeValue<SecurityCheckStorageBuilder> builder, String className, String methodName, String[] parameterTypes, SecurityCheck securityCheck)
-
create
public void create(io.quarkus.runtime.RuntimeValue<SecurityCheckStorageBuilder> builder)
-
resolveRolesAllowedConfigExpRoles
public void resolveRolesAllowedConfigExpRoles()
-
-