# pac4j **Repository Path**: mirrors/pac4j ## Basic Information - **Project Name**: pac4j - **Description**: Security engine for Java (authentication, authorization, multi frameworks): OAuth, CAS, SAML, OpenID Connect, LDAP, JWT... - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 8 - **Forks**: 6 - **Created**: 2019-10-15 - **Last Updated**: 2025-11-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

### `pac4j` is an easy and powerful security framework for Java to authenticate users, get their profiles and manage authorizations in order to secure web applications and web services. It provides a comprehensive set of [**concepts and components**](https://www.pac4j.org/docs/main-concepts-and-components.html). It is **available for most frameworks/tools** and **supports most authentication/authorization mechanisms**. It is licensed under the Apache 2 license. | JDK | pac4j | Usage of Lombok | |-----|-------|-----------------| | 17 | v6.x | Yes | | 11 | v5.x | No | | 8 | v4.x | No | ## Available implementations (*Get started by clicking on your framework*): [JEE](https://github.com/pac4j/j2e-pac4j) • [Spring Web MVC (Spring Boot)](https://github.com/pac4j/spring-webmvc-pac4j) • [Spring Webflux (Spring Boot)](https://github.com/pac4j/spring-webflux-pac4j) • [Apache Shiro](https://github.com/bujiio/buji-pac4j) • [Spring Security (Spring Boot)](https://github.com/pac4j/spring-security-pac4j) [CAS server](https://apereo.github.io/cas/6.6.x/integration/Delegate-Authentication.html) • [Syncope](https://syncope.apache.org) • [Apache Knox](http://knox.apache.org/books/knox-1-6-0/user-guide.html#Pac4j+Provider+-+CAS+/+OAuth+/+SAML+/+OpenID+Connect) [Play 2.x](https://github.com/pac4j/play-pac4j) • [Vertx](https://github.com/pac4j/vertx-pac4j) • [Spark Java](https://github.com/pac4j/spark-pac4j) • [Ratpack](http://ratpack.io/manual/current/pac4j.html#pac4j) • [JAX-RS](https://github.com/pac4j/jax-rs-pac4j) • [Dropwizard](https://github.com/pac4j/dropwizard-pac4j) [Javalin](https://github.com/pac4j/javalin-pac4j) • [Pippo](http://www.pippo.ro/doc/security.html#pac4j-integration) • [Undertow](https://github.com/pac4j/undertow-pac4j) • [Lagom](https://github.com/pac4j/lagom-pac4j) • [Akka HTTP](https://github.com/StackVista/akka-http-pac4j) • [Jooby](https://jooby.io/modules/pac4j) ## Authentication mechanisms: [OAuth (Facebook, Twitter, Google...)](https://www.pac4j.org/docs/clients/oauth.html) - [SAML](https://www.pac4j.org/docs/clients/saml.html) - [CAS](https://www.pac4j.org/docs/clients/cas.html) - [OpenID Connect](https://www.pac4j.org/docs/clients/openid-connect.html) - [HTTP](https://www.pac4j.org/docs/clients/http.html) - [Google App Engine](https://www.pac4j.org/docs/clients/google-app-engine.html) - [Kerberos (SPNEGO/Negotiate)](https://www.pac4j.org/docs/clients/kerberos.html) [LDAP](https://www.pac4j.org/docs/authenticators/ldap.html) - [SQL](https://www.pac4j.org/docs/authenticators/sql.html) - [JWT](https://www.pac4j.org/docs/authenticators/jwt.html) - [MongoDB](https://www.pac4j.org/docs/authenticators/mongodb.html) - [CouchDB](https://www.pac4j.org/docs/authenticators/couchdb.html) - [IP address](https://www.pac4j.org/docs/authenticators/ip.html) - [REST API](https://www.pac4j.org/docs/authenticators/rest.html) ## Authorization mechanisms: [Roles](https://www.pac4j.org/docs/authorizers/profile-authorizers.html#roles) - [Anonymous/remember-me/(fully) authenticated](https://www.pac4j.org/docs/authorizers/profile-authorizers.html#authentication-levels) - [Profile type, attribute](https://www.pac4j.org/docs/authorizers/profile-authorizers.html#others) [CORS](https://www.pac4j.org/docs/authorizers/web-authorizers.html#cors) - [CSRF](https://www.pac4j.org/docs/authorizers/web-authorizers.html#csrf) - [Security headers](https://www.pac4j.org/docs/authorizers/web-authorizers.html#security-headers) - [IP address, HTTP method](https://www.pac4j.org/docs/authorizers/web-authorizers.html#others) --- ## Versions The latest released version is the [![Maven Central](https://maven-badges.herokuapp.com/maven-central/org.pac4j/pac4j-core/badge.svg?style=flat)](https://maven-badges.herokuapp.com/maven-central/org.pac4j/pac4j-core), available in the Maven central repository. The [next version](https://www.pac4j.org/docs/next-version.html) is under development. Read the [documentation](https://www.pac4j.org/docs/index.html) for more information. ## Need help? You can use the [mailing lists](https://www.pac4j.org/mailing-lists.html) or the [commercial support](https://www.pac4j.org/commercial-support.html). ## Supported by [![CAS in the cloud](https://www.pac4j.org/img/logo-casinthecloud.png)](https://www.casinthecloud.com) *The CAS and pac4j consulting company*