/cas

Apereo CAS - Enterprise Single Sign On for all earthlings and beyond.

Primary LanguageJavaApache License 2.0Apache-2.0

Central Authentication Service (CAS)

License Twitter Support Gitter Slack Stack Overflow

Introduction

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

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, with support for a plethora of additional authentication protocols and features.

Contributions

Contributing Guide Open Pull Requests

If you have already identified an enhancement or a bug, it is STRONGLY recommended that you submit a pull request to address the case. There is no need for special ceremony to create separate issues. The pull request IS the issue and it will be tracked and tagged as such.

Documentation Javadoc

Version Reference
Link
Link

Additional resources are available as follows:

Deployment

Contributing Guide Open Pull Requests CAS Build Maven Central Github Releases

It is recommended to deploy CAS locally using the WAR Overlay method. Cloning or downloading the CAS codebase is ONLY required if you wish to contribute to the development of the project.

Features

The following features are supported by the CAS project:

  • CAS v1, v2 and v3 Protocol
  • SAML v1 and v2 Protocol
  • OAuth v2 Protocol
  • OpenID & OpenID Connect Protocol
  • WS-Federation Passive Requestor Protocol
  • Authentication via JAAS, LDAP, RDBMS, X.509, Radius, SPNEGO, JWT, Remote, Apache Cassandra, 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, REST, Internet2's Grouper and more.
  • HA clustered deployments via Hazelcast, Ehcache, JPA, Apache Cassandra, Memcached, Apache Ignite, MongoDb, Redis, DynamoDb, Couchbase and more.
  • Application registration backed by JSON, LDAP, YAML, Apache Cassandra, JPA, Couchbase, MongoDb, DynamoDb, Redis and more.
  • Multifactor authentication via Duo Security, YubiKey, RSA, Google Authenticator, U2F, WebAuthn and more.
  • Administrative UIs to manage logging, monitoring, statistics, configuration, client registration and more.
  • Global and per-application user interface theme and branding.
  • Password management and password policy enforcement.
  • Deployment options using Apache Tomcat, Jetty, Undertow, packaged and running as Docker containers.

The foundations of CAS are built upon: Spring Boot and Spring Cloud.

Development

CLA assistant

To build the project locally, please follow this guide. The release schedule is available here.

Support

CAS is 100% free open source software managed by Apereo, licensed under Apache v2. Our community has access to all releases of the CAS software with absolutely no costs. We welcome contributions from our community of all types and sizes. The time and effort to develop and maintain this project is dedicated by a group of volunteers and contributors. Support options may be found here. If you (or your employer) benefit from this project, please consider becoming a Friend of Apereo and contribute.