Skip to content

Commit 8052b0c

Browse files
committed
CAS_URI
1 parent 9d3a0ee commit 8052b0c

File tree

6 files changed

+66
-4
lines changed

6 files changed

+66
-4
lines changed

README.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ Elle embarque les protocoles suivant :
1313
* SAMLv1 (https://apereo.github.io/cas/6.6.x/protocol/SAML-Protocol.html)
1414

1515
D'autre protocoles seront ajoutés dans des versions ultérieures comme le MFA.
16+
17+
**Si les repertoires de configuration n'existent pas le container se servira des variables d'environnement pour les créer**
1618

1719
## Deploiement
1820

@@ -22,6 +24,7 @@ Il contient votre environnement :
2224

2325
```
2426
CAS_HOSTNAME=https://cas.mondomain.com
27+
CAS_URI=/cas
2528
LDAP_HOSTNAME=ldap://ldap.mondomaine.com:389
2629
LDAP_SEARCH_FILTER=(&(uid={user})(objectclass=sogxuser))
2730
LDAP_BASE=dc=mondomaine,dc=com
@@ -33,6 +36,7 @@ LDAP_BIND_CREDENTIAL=MonMotDePasse!
3336
Ce fichier contient les variables d'environnement pour le container.
3437

3538
* CAS_HOSTNAME : c'est lde FDQN du serveur lui même (variable **cas.server.name** du fichier de configuration /etc/cas/config/cas.properties)
39+
* CAS_URI : l'Uri de cas le serveur sera appelé
3640
* LDAP_HOSTNAME : Adresse du serveur LDAP sous forme URI
3741
* LDAP_SEARCH : filtre de recherche pour les utilisateur. Le nom d'utilisateur est representé par {user}.
3842
* LDAP_BASE : La base de recherche LDAP
@@ -84,6 +88,7 @@ Apres le premier lancement un repertoire themes et templates ont été créé da
8488
* themes/custom/css/cas.css : fichier css de personalisation de l'interface
8589
* themes/custom/images/mylogo.png : le logo qui apparaitra sur l'interface
8690
* themes/custom/images/facivon.icon : l'icône
91+
* themes/custom/custom.properties : Le fichier de configuration du theme
8792

8893
Une fois le thème changé vous devez le mettre à jour dans le container :
8994

env.example

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
CAS_HOSTNAME=https://cas.mondomain.com
2+
CA_URI=/cas
23
LDAP_HOSTNAME=ldap://ildap.mondomaine.com:389
34
LDAP_SEARCH_FILTER="(&(uid={user})(objectclass=sogxuser))"
45
LDAP_BASE=dc=mondamine,dc=com

rootfs/data/etc/cas.properties

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
cas.server.name=${CAS_HOSTNAME}
2-
cas.server.prefix=${cas.server.name}/cas
2+
cas.server.prefix=${cas.server.name}${CAS_URI}
33
logging.config: file:/etc/cas/config/log4j2.xml
44

55
cas.authn.accept.users=
66
cas.view.template-prefixes=classpath:templates,file:/etc/cas/templates/
77
spring.thymeleaf.cache=false
88
cas.service-registry.json.location=file:/etc/cas/services
99
cas.theme.default-theme-name=custom
10-
cas.authn.oidc.core.issuer=${cas.server.name}/cas/oidc
10+
cas.authn.oidc.core.issuer=${cas.server.name}${CAS_URI}/oidc
1111

1212
#LDAP settings
1313
cas.authn.ldap\[0\].type=AUTHENTICATED

rootfs/data/etc/management.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
mgmt.admin-roles[0]=ROLE_ADMIN
22
#mgmt.user-roles[0]=ROLE_USER
33
cas.server.name = ${CAS_HOSTNAME}
4-
cas.server.prefix=${cas.server.name}/cas
4+
cas.server.prefix=${cas.server.name}{$CAS_URI}
55
cas.service-registry.json.location: file:/etc/cas/services
66
logging.config: file:/etc/cas/config/log4j2.xml
77
mgmt.server-name= ${CAS_HOSTNAME}

rootfs/data/tomcat/server.xml

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<Server port="8005" shutdown="SHUTDOWN">
3+
<Listener className="org.apache.catalina.startup.VersionLoggerListener" />
4+
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
5+
<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
6+
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
7+
<Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />
8+
<GlobalNamingResources>
9+
<Resource name="UserDatabase" auth="Container"
10+
type="org.apache.catalina.UserDatabase"
11+
description="User database that can be updated and saved"
12+
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
13+
pathname="conf/tomcat-users.xml" />
14+
</GlobalNamingResources>
15+
<Service name="Catalina">
16+
<Connector port="80" protocol="HTTP/1.1"
17+
connectionTimeout="20000"
18+
redirectPort="443"
19+
maxParameterCount="1000"
20+
/>
21+
<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol"
22+
maxThreads="150" SSLEnabled="true"
23+
maxParameterCount="1000"
24+
>
25+
<SSLHostConfig>
26+
<Certificate certificateFile="/etc/cert/cert.pem"
27+
certificateKeyFile="/etc/cert/privkey.pem"
28+
certificateChainFile="/etc/cert/chain.pem" />
29+
</SSLHostConfig>
30+
</Connector>
31+
<Engine name="Catalina" defaultHost="localhost" startStopThreads="0">
32+
<Realm className="org.apache.catalina.realm.LockOutRealm">
33+
<!-- This Realm uses the UserDatabase configured in the global JNDI
34+
resources under the key "UserDatabase". Any edits
35+
that are performed against this UserDatabase are immediately
36+
available for use by the Realm. -->
37+
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
38+
resourceName="UserDatabase"/>
39+
</Realm>
40+
41+
<Host name="localhost" appBase="webapps"
42+
unpackWARs="false" autoDeploy="false" startStopThreads="0">
43+
<Context path="${CAS_URI}" docBase="cas"></Context>
44+
<Context path="/cas-management" docBase="cas-management"></Context>
45+
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
46+
prefix="localhost_access_log" suffix=".txt"
47+
pattern="%h %l %u %t &quot;%r&quot; %s %b" />
48+
</Host>
49+
</Engine>
50+
</Service>
51+
</Server>
52+

rootfs/entrypoint.sh

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,11 @@ else
5454
cp -r /etc/cas/themes/* /usr/local/tomcat/webapps/cas/WEB-INF/classes/static/themes
5555
cp /etc/cas/themes/*.properties /usr/local/tomcat/webapps/cas/WEB-INF/classes
5656
fi
57-
57+
# server configuration
58+
if [ -z ${CAS_URI} ];then
59+
export CAS_URI=/cas
60+
fi
61+
cat /data/tomcat/server.xml|envsubst >/usr/local/tomcat/conf/server.xml
5862

5963

6064
. /usr/local/tomcat/bin/catalina.sh run

0 commit comments

Comments
 (0)