CAS 6.2.0 RC1 Feature Release


Collaborate
The blog is managed and hosted on GitHub. If you wish to update the contents of this post or if you have found an inaccuracy and wish to make corrections, we recommend that you please submit a pull request to this repository.

The official CAS 6.1.0 GA was released in October 2019. Since then, the project has been moving forward with the development of the next feature release that is tagged as 6.2.0. Please review the release policy to learn more about the scope of the release. This post intends to highlight some of the improvements and enhancements packed into the first release candidate in the 6.2.0 series.

Apereo Membership

If you benefit from Apereo CAS as free and open-source software, we invite you to join the Apereo Foundation and financially support the project at a capacity that best suits your deployment. Note that all development activity is performed almost exclusively on a voluntary basis with no expectations, commitments or strings attached. Having the financial means to better sustain engineering activities will allow the developer community to allocate dedicated and committed time for long-term support, maintenance and release planning, especially when it comes to addressing critical and security issues in a timely manner. Funding will ensure support for the software you rely on and you gain an advantage and say in the way Apereo, and the CAS project at that, runs and operates. If you consider your CAS deployment to be a critical part of the identity and access management ecosystem, this is a viable option to consider.

Get Involved

Shake Well Before Use

We strongly recommend that you take advantage of the release candidates as they come out. Waiting for a GA release is only going to set you up for unpleasant surprises. A GA is simply a tag and nothing more. Note that CAS releases are strictly time-based releases; they are not scheduled or based on specific benchmarks, statistics or completion of features. To gain confidence in a particular release, it is strongly recommended that you start early by experimenting with release candidates and/or follow-up snapshots.

In order to start experimenting with release candidates, at any given time, you should be able to append -SNAPSHOT to the CAS version in order to take advantage of snapshot builds as changes are made and published.

Resources

Overlay

In the gradle.properties of the overlay, adjust the following setting:

casVersion=6.2.0-RC1
System Requirements
There are no changes to the minimum system/platform requirements for this release.

New & Noteworthy

Service Redirection URLs

The redirect URL of authentication responses can now be customized and overridden for each registered application.

Google Apps Integration

The CAS integration with Google Apps is now deprecated, scheduled to be removed in the future.

LDAP Health Monitoring

Monitoring LDAP server status for health can now support multiple LDAP servers.

WATCH OUT!
This is a breaking change. Consult the CAS documentation and adjust your settings accordingly to refer to cas.monitor.ldap[0] instead.

SAML2 Identity Provider Discovery

Carry-over from CAS 6.1.x, SAML2 identity provider discovery allows CAS to embed and present a discovery service as part of delegated authentication.

Spring Expression Language Support

Certain number of components in CAS, primarily attribute release policies that are script-based, are now configurable based on the Spring Expression Language syntax.

OAuth JWT Access Tokens

A dedicated setting is now available to create OAuth access tokens as JWTs by default, globally for all applications.

Cipher Strategy Types

Relevant cipher operations in CAS can now define the cipher strategy and type, mainly to indicate the order of signing and encryption operations.

Microsoft Azure Active Directory

CAS is now able to contruct attribute repositories to fetch user attributes and properties from Microsoft Azure Active Directory using the Microsoft Graph API.

SAML2 Metadata Per Service

SAML2 service definitions can now provide an override for the signing key algorithm used. Furthermore, metadata artifacts and keys/certificates may also be specified as overrides on a per-service basis for all metadata storage services. This continues to be a work-in-progress and will likely be further enhanced in future releases. Furthermore, SAML2 metadata documents and artifacts can now be correctly stored in Oracle databases.

Other Stuff

  • The Gradle build is now able to enforce and verify licenses that are approved by the Apereo Foundation.
  • SAML2 metadata caching is switched to use the metadata file location as the cache key.
  • Additional test cases for JDBC password history management against PostgreSQL.
  • The fields property has been removed from LinkedIn delegated authentication.
  • Minor tweaks to ensure U2F configuration can correctly be processed on CAS startup.
  • Transaction management is now enforced when using JDBC-backed password management.
  • CAS Continuous Integration tests on Travis CI now include support for Apache ZooKeeper.
  • Additional test cases for JDBC SAML2 metadata management based on Oracle, MySQL and PostgreSQL databases.
  • CAS simple-mfa multifactor integration is now enforcing token ownership for the authenticated user.
  • Internal cleanup to ensure duplicate test configurations are removed for CAS tests.
  • Replicating session information backed by CAS ticket registry can now detect sessions using a configurable cookie.
  • Acting as a mini firewall, CAS can now reject authentication requests from suspicious URLs via a regular expression pattern.

Library Upgrades

  • Gradle
  • Apache Cassandra
  • TextMagic
  • JavaParser
  • Spring
  • Spring Security
  • JavaParser
  • Spring Integration
  • Spring Data
  • Pac4j
  • Twilio
  • Hibernate
  • Shiro
  • Apache Tomcat
  • Hazelcast
  • SonarQube
  • Oshi
  • Eureka
  • Spring Boot
  • Nimbus

Credits

Big thanks to all who participate in the development of this release to submit patches and contribute improvements. Keep’em coming!

Misagh Moayyed

Related Posts

CAS 6.2.0 RC2 Feature Release

...in which I present an overview of CAS 6.2.0 RC2 release.

Apereo CAS - Deployment Using systemd

Fabio Martelli of Tirasa S.r.l reviews the setup required to deploy Apereo CAS as a system service using systemd.

Apereo CAS - Python Locust Load Testing

Learn to Performance Test Apereo CAS with Python Locust.

CAS Vulnerability Disclosure

Disclosure of a security issue with the CAS software.

Apereo CAS - Google reCAPTCHA Integration

Learn to set up an integration between Apereo CAS and Google reCAPTCHA.

Apereo CAS - JMeter Performance Testing

Learn to Performance Test Apereo CAS.

Apereo CAS - OAuth JWT Access Tokens

Learn to customize Apereo CAS to issue OAuth Access Tokens as JWTs.

CAS 6.2.x Deployment - WAR Overlays

Learn how to configure and build your own CAS deployment via the WAR overlay method, get rich quickly, stay healthy indefinitely and respect family and friends in a few very easy steps.

Apereo CAS 6.2.x - Building CAS Feature Modules

An overview of how various CAS features modules today can be changed and tested from the perspective of a CAS contributor working on the codebase itself to handle a feature request, bug fix, etc.

Apereo CAS - Service Redirection Strategies

Learn to customize Apereo CAS to modify the default strategy used for redirecting the authentication flow back to relying parties.