Class PermissionSecurityCheck<T>

    • Method Detail

      • apply

        public void apply​(io.quarkus.security.identity.SecurityIdentity identity,
                          Method method,
                          Object[] parameters)
        Specified by:
        apply in interface SecurityCheck
      • nonBlockingApply

        public io.smallrye.mutiny.Uni<?> nonBlockingApply​(io.quarkus.security.identity.SecurityIdentity identity,
                                                          Method method,
                                                          Object[] parameters)
        Specified by:
        nonBlockingApply in interface SecurityCheck
      • 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. Either permission or computedPermission must not be null.
        Parameters:
        permission - Permission
        computedPermission - 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 if SecurityIdentity has at least one of permissions. Either permission or computedPermission 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 if SecurityIdentity has at least one of permissions of each permission group. Either permission or computedPermission must not be null.
        Parameters:
        permissions - array of permission groups
        computedPermissions - the function that is invoked every single time permissions are checked with request or method parameters
        Returns:
        created SecurityCheck