• This repository has been archived on 05/Oct/2019
  • Stars
    star
    162
  • Rank 232,284 (Top 5 %)
  • Language
    Java
  • License
    Apache License 2.0
  • Created over 9 years ago
  • Updated about 5 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Annotation-based configuration support for Apereo CAS Java clients

cas-client-autoconfig-support

NOTE

The code from this project has been merged into official Apereo Java CAS client library as a module. The maintenance of this project has been discontinued. Please see Official CAS client module

Library providing annotation-based configuration support for CAS Java clients. Primarily designed for super easy CASification of Spring Boot apps.

This project was developed as part of Unicon's Open Source Support program. Professional Support / Integration Assistance for this module is available. For more information visit.

Current version

2.3.0-GA

Usage

  • Define a dependency:

Maven:

<dependency>
    <groupId>net.unicon.cas</groupId>
    <artifactId>cas-client-autoconfig-support</artifactId>
    <version>2.3.0-GA</version>      
</dependency>

Gradle:

dependencies {
      ...
      compile 'net.unicon.cas:cas-client-autoconfig-support:2.3.0-GA'
      ...
}
  • Add the following required properties

in Spring Boot's application.properties or application.yml Example:

   cas.server-url-prefix=https://cashost.com/cas
   cas.server-login-url=https://cashost.com/cas/login
   cas.client-host-url=https://casclient.com
  • Annotate Spring Boot application (or any @Configuration class) with @EnableCasClient annotation
    @SpringBootApplication
    @Controller
    @EnableCasClient
    public class MyApplication { .. }

For CAS3 protocol (authentication and validation filters) - which is default if nothing is specified

   cas.validation-type=CAS3

For CAS2 protocol (authentication and validation filters)

   cas.validation-type=CAS

For SAML protocol (authentication and validation filters)

   cas.validation-type=SAML

Available optional properties

  • cas.authentication-url-patterns
  • cas.validation-url-patterns
  • cas.request-wrapper-url-patterns
  • cas.assertion-thread-local-url-patterns
  • cas.gateway
  • cas.use-session
  • cas.redirect-after-validation
  • cas.allowed-proxy-chains
  • cas.proxy-callback-url
  • cas.proxy-receptor-url
  • cas.accept-any-proxy
  • server.context-parameters.renew

Advanced configuration

This library does not expose ALL the CAS client configuration options via standard Spring property sources, but only most commonly used ones. If there is a need however, to set any number of not exposed, 'exotic' properties, there is a way: just extend CasClientConfigurerAdapter class in your @EnableCasClient annotated class and override appropriate configuration method(s) for CAS client filter(s) in question. For example:

    @SpringBootApplication
    @EnableCasClient
    class CasProtectedApplication extends CasClientConfigurerAdapter {    
        @Override
        void configureValidationFilter(FilterRegistrationBean validationFilter) {           
            validationFilter.getInitParameters().put("millisBetweenCleanUps", "120000");
        }        
        @Override
        void configureAuthenticationFilter(FilterRegistrationBean authenticationFilter) {
            authenticationFilter.getInitParameters().put("artifactParameterName", "casTicket");
            authenticationFilter.getInitParameters().put("serviceParameterName", "targetService");
        }                                
    }

More Repositories

1

shibboleth-idp-dockerized

A Shibboleth Identity Provider (IdP) base-image
Dockerfile
106
star
2

cas-addons

Open source CAS customizations, extensions, and configuration aids.
Java
55
star
3

cas-password-manager

CAS extension that adds powerful password management capabilities to a standard CAS server
Java
34
star
4

simplesamlphp-dockerized

A SimpleSAMLphp (ssp) base-image
Dockerfile
25
star
5

cas-mfa

CAS server overlay with support for multifactor authentication.
Java
24
star
6

shib-cas-authn3

Integrates an external CAS Server and Shibboleth IdPv3.
Java
21
star
7

tool13demo

LTI 1.3 Java tool with Spring boot
Java
20
star
8

cas-adfs-integration

Two different methods of integrating CAS Server and Microsoft ADFS
Java
19
star
9

unicon-cas-overlay

Generic CAS maven war overlay
Java
12
star
10

cas-jmeter-loadtests

JMeter tests scripts for load-testing CAS
10
star
11

shib-cas-authn

Java
9
star
12

shib-cas-authn2

Shibboleth IDP external authentication plugin that delegates the authentication to the Central Authentication Server
Java
9
star
13

shib-mfa-duo-auth

DuoSecurity multifactor authentication plugin for the Shibboleth identity provider
Groovy
9
star
14

shib-cas-authenticator

Authentication plugin for Shibboleth delegating to CAS for user login and supporting CAS features.
Java
9
star
15

Kaltura-OAE

Java
8
star
16

office365-and-azure-ad-grouper-provisioner

This project is an Internet2 Grouper connector (full sync and changelog consumer) that synchronizes Grouper groups and users to Microsoft Azure Active Directory/Office 365.
Java
7
star
17

ltpa-bridge

RESTful resource that generates LTPA tokens based on authenticated subjects
Java
6
star
18

cas-owa-2010

CAS Outlook Web Access integration module
C#
6
star
19

googleapps-grouper-provisioner

This project is an Internet2 Grouper connector that synchronizes Grouper groups and users to Google Apps.
Java
6
star
20

grouper-amqp-esb-publisher

Grouper ESB Publisher to AMQP broker exchanges
Groovy
4
star
21

cas-perl-client

Jasig CAS client for Perl applications
Perl
4
star
22

grouper-dockerized

Grouper base images
Shell
4
star
23

x509authentication-bypassing-tomcat-realm

x509authentication-bypassing-tomcat-realm
Shell
3
star
24

tier-grouper-deployment

Contains materials related to the tutorial on running the TIER Grouper image on Docker Swarm
3
star
25

cas-blackboard-learn

CAS module for Blackboard Learn
Java
2
star
26

ccc-shib-split-authn

This demonstrates how to modify the Shibboleth IdP v3 to support unique users coming from 2 different authn/attribute sources.
Java
2
star
27

grouper-external-email-users

A modification to the Grouper UI that makes it easy for users to add external user to groups. Includes assisting custom hooks.
Java
2
star
28

avus-testing-framework

Avus is a WebSSO authentication testing framework.
Groovy
2
star
29

shibboleth-tomcat-dta-ssl

JSSE implementations pluggable into Tomcat servlet container to support Shibboleth IdP custom client cert SSL handling for SOAP-based channels
Java
2
star
30

unicon-shibboleth-idp-template

A template for installing the Shibboleth Identity Provider v2, using CAS for SSO
Shell
2
star
31

shib3acs

1
star
32

cas-peoplesoft

CAS client for integration with PeopleSoft
Java
1
star
33

wso2-static-attributes-injector

Extends UserStoreManagers to support injecting static and scripted attributes into user property responses.
Java
1
star
34

unicon-shibboleth-idp-v3-template

Shibboleth Identity Provider v3 Installer Template
Shell
1
star
35

grouper-subject-customizer

Redact or completely filter out subjects given customizable criteria.
Java
1
star
36

midpoint-dockerized

Shell
1
star
37

google-to-grouper-group-migration

This project provides a set of scripts that exports groups from Google Groups as JSON documents. The resulting output can then be massaged, if desired, and imported into Grouper.
Python
1
star
38

cas-webadvisor

CAS module for Web Advisor
Java
1
star
39

cas-chalk-wire-webapp

CAS Authentication for Chalk & Wire
Java
1
star
40

cas-java-clients-addons

CAS Java Clients Addons is an open source collection of useful extensions to Java-based client libraries for JA-SIG CAS
Java
1
star
41

grouper-provisioning-target-ui

A modification to the Grouper UI that makes it easy for users to add attribute information about provisioning targets. (This can be used for other purposes as well.)
Java
1
star
42

mdq-server-lambda

An AWS Lambda-based metadata query (mdq) server implementation
Python
1
star
43

voltron

JavaScript
1
star