Class PermissionSecurityCheck<T>
java.lang.Object
io.quarkus.security.runtime.interceptor.check.PermissionSecurityCheck<T>
- All Implemented Interfaces:
SecurityCheck
-
Method Summary
Modifier and TypeMethodDescriptionvoid
apply
(io.quarkus.security.identity.SecurityIdentity identity, MethodDescription methodDescription, Object[] parameters) void
protected abstract void
checkPermissions
(io.quarkus.security.identity.SecurityIdentity identity, T permissions) protected abstract io.smallrye.mutiny.Uni<?>
checkPermissions
(io.quarkus.security.identity.SecurityIdentity identity, T permissions, int i) io.smallrye.mutiny.Uni<?>
nonBlockingApply
(io.quarkus.security.identity.SecurityIdentity identity, MethodDescription methodDescription, Object[] parameters) io.smallrye.mutiny.Uni<?>
nonBlockingApply
(io.quarkus.security.identity.SecurityIdentity identity, Method method, Object[] parameters) static SecurityCheck
of
(Permission[][] permissions, Function<Object[], Permission[][]> computedPermissions) Creates permission check with permission groups.static SecurityCheck
of
(Permission[] permissions, Function<Object[], Permission[]> computedPermissions) Creates permission check with permissions.static SecurityCheck
of
(Permission permission, Function<Object[], Permission> computedPermission) Creates permission check with a single permission.boolean
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface io.quarkus.security.spi.runtime.SecurityCheck
isPermitAll
-
Method Details
-
apply
public void apply(io.quarkus.security.identity.SecurityIdentity identity, Method method, Object[] parameters) - Specified by:
apply
in interfaceSecurityCheck
-
apply
public void apply(io.quarkus.security.identity.SecurityIdentity identity, MethodDescription methodDescription, Object[] parameters) - Specified by:
apply
in interfaceSecurityCheck
-
nonBlockingApply
public io.smallrye.mutiny.Uni<?> nonBlockingApply(io.quarkus.security.identity.SecurityIdentity identity, Method method, Object[] parameters) - Specified by:
nonBlockingApply
in interfaceSecurityCheck
-
nonBlockingApply
public io.smallrye.mutiny.Uni<?> nonBlockingApply(io.quarkus.security.identity.SecurityIdentity identity, MethodDescription methodDescription, Object[] parameters) - Specified by:
nonBlockingApply
in interfaceSecurityCheck
-
requiresMethodArguments
public boolean requiresMethodArguments()- Specified by:
requiresMethodArguments
in interfaceSecurityCheck
-
checkPermissions
protected abstract io.smallrye.mutiny.Uni<?> checkPermissions(io.quarkus.security.identity.SecurityIdentity identity, T permissions, int i) -
checkPermissions
protected abstract void checkPermissions(io.quarkus.security.identity.SecurityIdentity identity, T permissions) -
of
public static SecurityCheck of(Permission permission, Function<Object[], Permission> computedPermission) Creates permission check with a single permission. Eitherpermission
orcomputedPermission
must not be null.- Parameters:
permission
- PermissioncomputedPermission
- the function that is invoked every single time permission is checked with request or method parameters- Returns:
- created
SecurityCheck
-
of
public static SecurityCheck of(Permission[] permissions, Function<Object[], Permission[]> computedPermissions) Creates permission check with permissions. Permission check will be successful ifSecurityIdentity
has at least one of permissions. Eitherpermission
orcomputedPermission
must not be null.- Parameters:
permissions
- Permission[]computedPermissions
- the function that is invoked every single time permissions are checked with request or method parameters- Returns:
- created
SecurityCheck
-
of
public static SecurityCheck of(Permission[][] permissions, Function<Object[], Permission[][]> computedPermissions) Creates permission check with permission groups. Permission check will be successful ifSecurityIdentity
has at least one of permissions of each permission group. Eitherpermission
orcomputedPermission
must not be null.- Parameters:
permissions
- array of permission groupscomputedPermissions
- the function that is invoked every single time permissions are checked with request or method parameters- Returns:
- created
SecurityCheck
-