Skip to content

infilow/relax-authentic

Repository files navigation

Relax Authentic

JWT based authentication & ABAC based authorization with spring-boot & pac4j.

Mark Controller

@HasRole({"root", "admin"})
@Target({ElementType.TYPE, ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
public @interface RootOrAdmin {
}

@RestController
class BizController {
    
    @HasRole("root")
    public void api_1() {
    }

    @HasPermit("edit")
    public void api_3() {
    }

    @RootOrAdmin
    public void api_3() {
    }

    @HasAuthorize(role = @HasRole("admin"),permit = @HasPermit("edit"))
    public void api_4() {
    }
}

Release

  1. update version
mvn versions:set -DnewVersion=0.9.0 -DprocessAllModules -DgenerateBackupPoms=false versions:commit
  1. publish artifact