Issue #152 Jetty integration docs.
This commit is contained in:
parent
e7292c78a0
commit
7cb5380e75
64
README.md
64
README.md
|
|
@ -976,6 +976,70 @@ The following example shows how to configure a Context for dynamic role data pro
|
|||
</Context>
|
||||
```
|
||||
|
||||
<a name="jetty-integration"></a>
|
||||
## Jetty Integration
|
||||
Since version 3.4.2, the Java CAS Client supports Jetty container integration via the following module:
|
||||
|
||||
```xml
|
||||
<dependency>
|
||||
<groupId>org.jasig.cas.client</groupId>
|
||||
<artifactId>cas-client-integration-jetty</artifactId>
|
||||
<version>${cas-client.version}</version>
|
||||
</dependency>
|
||||
```
|
||||
|
||||
Both programmatic (embedded) and context configuration are supported.
|
||||
|
||||
### Jetty Embedded Configuration
|
||||
```
|
||||
# CAS configuration parameters
|
||||
String hostName = "app.example.com";
|
||||
String casServerBaseUrl = "cas.example.com/cas";
|
||||
String casRoleAttribute = "memberOf";
|
||||
boolean casRenew = false;
|
||||
int casTolerance = 5000;
|
||||
|
||||
# Jetty wiring
|
||||
WebAppContext context = new WebAppContext("/path/to/context", "contextPath");
|
||||
context.setTempDirectory("/tmp/jetty/work"));
|
||||
context.setInitParameter("org.eclipse.jetty.servlet.Default.dirAllowed", "false");
|
||||
SessionCookieConfig config = context.getSessionHandler().getSessionManager().getSessionCookieConfig();
|
||||
config.setHttpOnly(true);
|
||||
config.setSecure(true);
|
||||
Saml11TicketValidator validator = new Saml11TicketValidator(casServerBaseUrl);
|
||||
validator.setRenew(casRenew);
|
||||
validator.setTolerance(casTolerance);
|
||||
CasAuthenticator authenticator = new CasAuthenticator();
|
||||
authenticator.setRoleAttribute(casRoleAttribute);
|
||||
authenticator.setServerNames(hostName);
|
||||
authenticator.setTicketValidator(validator);
|
||||
context.getSecurityHandler().setAuthenticator(authenticator);
|
||||
```
|
||||
|
||||
### Jetty Context Configuration
|
||||
```xml
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure.dtd">
|
||||
|
||||
<Configure class="org.eclipse.jetty.webapp.WebAppContext">
|
||||
<Set name="contextPath">/</Set>
|
||||
<Set name="war"><SystemProperty name="jetty.base"/>/webapps/yourapp</Set>
|
||||
<Get name="securityHandler">
|
||||
<Set name="authenticator">
|
||||
<New class="org.jasig.cas.client.jetty.CasAuthenticator">
|
||||
<Set name="serverNames">app.example.com</Set>
|
||||
<Set name="ticketValidator">
|
||||
<New class="org.jasig.cas.client.validation.Cas20ServiceTicketValidator">
|
||||
<Arg>https://cas.example.com/cas</Arg>
|
||||
<!--<Set name="renew">true</Set>-->
|
||||
</New>
|
||||
</Set>
|
||||
</New>
|
||||
</Set>
|
||||
</Get>
|
||||
</Configure>
|
||||
```
|
||||
|
||||
<a name="atlassian-integration"></a>
|
||||
## Atlassian Integration
|
||||
The clien includes Atlassian Confluence and JIRA support. Support is enabled by a custom CAS authenticator that extends the default authenticators.
|
||||
|
|
|
|||
Loading…
Reference in New Issue