Apereo CAS - Enterprise Single Sign On for all
Java CSS HTML JavaScript Other
Failed to load latest commit information.
api Adding this. to getAuditActionContext() method (#2046) Oct 18, 2016
core Consider 204 an acceptable HTTP code (#2073) Oct 20, 2016
docs Updated docs Oct 20, 2016
etc Reorganized modules in prep for git clean up Sep 18, 2016
gradle Forgot password functionality Oct 16, 2016
support Fix issue with ldap attribute defaults. Added logging Oct 20, 2016
travis Update push-javadoc-to-gh-pages.sh Sep 20, 2016
webapp-mgmt Working on saml metadata filters Oct 11, 2016
webapp Fixed test cases Oct 17, 2016
.gitignore CAS 5 RC3 Release Oct 3, 2016
.travis.yml Update .travis.yml Sep 20, 2016
CONTRIBUTING.md CAS-1398: Added contributing.md file Mar 2, 2014
LICENSE CAS-1101 Update licensing to Apache License, Version 2.0. May 4, 2012
NOTICE Create NOTICE Feb 19, 2016
README.md Update README.md Oct 18, 2016
build.gradle Fix pom generation for BOM project Sep 20, 2016
checkstyle-rules.xml Refactored record names Sep 14, 2016
checkstyle-suppressions.xml Support for auth OTP Jul 22, 2016
dev-build-no-tests.sh Dependency updates Sep 25, 2016
dev-build.sh Dependency updates Sep 25, 2016
findbugs-rules.xml Updated findbugs. Allowed git gc for repo cleanup Sep 20, 2016
gradle.properties Upgrade to spring-webmvc-pac4j v1.1.3 (#2075) Oct 20, 2016
gradlew Upgrade to gradle3 Aug 19, 2016
gradlew.bat Upgrade to gradle3 Aug 19, 2016
settings.gradle Added support for mongoldb for gauth Oct 14, 2016


Central Authentication Service (CAS)

License Maven Central Github Releases Stack Overflow Dependency Status JavaDoc Codacy Badge CLA assistant Dependency Status


Welcome to the home of the Central Authentication Service project, more commonly referred to as CAS. CAS provides enterprise single sign-on for the web and attempts to be a comprehensive platform for your authentication and authorization needs.

CAS provides an extensive list of features for most application requirements and integrations, offers community documentation and implementation support, has an extensive community of adopters and is virtually supported by most programming languages, frameworks and products.

CAS is an open and well-documented authentication protocol. The primary implementation of the protocol is an open-source Java server component by the same name, hosted here.


The following features are supported by the CAS project:

  • CAS v1, v2 and v3 Protocol
  • SAML v1 and v2 Protocol
  • OAuth Protocol
  • OpenID & OpenID Connect Protocol
  • Authentication via JAAS, LDAP, RDBMS, X.509, Radius, SPNEGO, JWT, Stormpath, Remote, Trusted, BASIC, Apache Shiro, MongoDb, Pac4J and more.
  • Delegated authentication to WS-FED, Facebook, Twitter, SAML IdP, OpenID, OpenID Connect, CAS and more.
  • Authorization via ABAC, Time/Date, Internet2's Grouper and more.
  • HA clustered deployments via Hazelcast, Ehcache, JPA, Memcached, Apache Ignite, Couchbase and more.
  • Application registration backed by JSON, LDAP, JPA, Couchbase, MongoDb and more.
  • Multifactor authentication via Duo Security, YubiKey, RSA, Google Authenticator and more.
  • Administrative UIs to manage logging, monitoring, statistics, configuration, client registration and more.
  • Global and per-application user interface theme and branding.

The foundations of CAS are built upon: Spring Framework, Spring Boot, Spring Cloud, Spring Session and Thymeleaf.

Documentation Gitter

Deployment Build Status

It is recommended to build and deploy CAS locally using the WAR Overlay method. This approach does not require the adopter to explicitly download any version of CAS, but rather utilizes the overlay mechanism to combine CAS original artifacts and local customizations to further ease future upgrades and maintenance.

Note: Do NOT clone or download the CAS codebase directly. That is ONLY required if you wish to contribute to the development of the project. Utilize the WAR Overlay method instead to build and deploy your CAS instance.