Skip to content
Role and permission management framework based on Spring-Boot
Java
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
src
.gitignore
.travis.yml Add openjdk and oraclejdk9 Dec 11, 2018
CONTRIBUTING.md Add CONTRIBUTING.md Dec 11, 2018
DOC_CN.md Update DOC Dec 21, 2018
DOC_EN.md Update DOC Dec 21, 2018
LICENSE Initial commit Dec 4, 2018
PROCESS.jpg process jpg Dec 10, 2018
README.md
README_CN.md Update README Dec 21, 2018
pom.xml

README.md

Defender

Build Status Maven Central License

Defender is a lightweight, flexible, and highly available permission framework that fully embraces spring-boot.If we need to make it easier to add permission management to the service on a daily basis, Defender is the Defender!

It eliminates the need to repeatedly write custom annotations and facets, and allows you to flexibly specify different patterns of defense networks by simply calling a simple API.

Quick start

Defender is easy to deploy in two steps, make sure your service USES the spring-boot technology stack before using it, and that you introduce spring-boot-starter aop and spring-boot-starter web modules.

Dependency

<dependency>
	<groupId>com.smallnico</groupId>
	<artifactId>defender</artifactId>
	<version>${defender.version}</version>
</dependency>

Configuration

    @Configuration
    @EnableDefender("* org.nico.trap.controller..*.*(..)")
    public static class DefenderTestConfig {
        @Bean
        public Defender init() {
            return Defender.getInstance()
                    .registry(Guarder.builder(GuarderType.URI)
                            .pattern("POST /user")
                            .preventer(caller -> caller.getRequest().getHeader("token") == null
                                    ? Result.pass() : Result.notpass("error")))
                    .ready();
        }
    }

Advance

Contributing

You can’t perform that action at this time.