Class PermissionSecurityCheck<T>
java.lang.Object
io.quarkus.security.runtime.interceptor.check.PermissionSecurityCheck<T>
- All Implemented Interfaces:
SecurityCheck
-
Method Summary
Modifier and TypeMethodDescriptionvoidapply(io.quarkus.security.identity.SecurityIdentity identity, MethodDescription methodDescription, Object[] parameters) voidprotected abstract voidcheckPermissions(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 SecurityCheckof(Permission[][] permissions, Function<Object[], Permission[][]> computedPermissions) Creates permission check with permission groups.static SecurityCheckof(Permission[] permissions, Function<Object[], Permission[]> computedPermissions) Creates permission check with permissions.static SecurityCheckof(Permission permission, Function<Object[], Permission> computedPermission) Creates permission check with a single permission.booleanMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods 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:
applyin interfaceSecurityCheck
-
apply
public void apply(io.quarkus.security.identity.SecurityIdentity identity, MethodDescription methodDescription, Object[] parameters) - Specified by:
applyin interfaceSecurityCheck
-
nonBlockingApply
public io.smallrye.mutiny.Uni<?> nonBlockingApply(io.quarkus.security.identity.SecurityIdentity identity, Method method, Object[] parameters) - Specified by:
nonBlockingApplyin interfaceSecurityCheck
-
nonBlockingApply
public io.smallrye.mutiny.Uni<?> nonBlockingApply(io.quarkus.security.identity.SecurityIdentity identity, MethodDescription methodDescription, Object[] parameters) - Specified by:
nonBlockingApplyin interfaceSecurityCheck
-
requiresMethodArguments
public boolean requiresMethodArguments()- Specified by:
requiresMethodArgumentsin 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. EitherpermissionorcomputedPermissionmust 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 ifSecurityIdentityhas at least one of permissions. EitherpermissionorcomputedPermissionmust 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 ifSecurityIdentityhas at least one of permissions of each permission group. EitherpermissionorcomputedPermissionmust 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
-