Dies ist eine alte Version des Dokuments!
Basic-Auth mithilfe von Tomcat
Nicht mehr empfohlen
Es ist einfacher, die ECP-Schnittstelle über Basic Auth mit Apache zu schützen.
1. web.xml (unter /edit-webapp/WEB-INF bearbeiten):
Die beiden Blöcke am Ende ent-kommentieren: „Uncomment to use container managed
authentication“ und „Uncomment if you want BASIC auth managed by the container“
2. Context Fragment in Tomcat-Konfiguration anpassen.
Das sieht dann ungefähr so aus (appName, Pfade etc. ggf. anpassen):
- /etc/tomcat8/Catalina/localhost/idp.xml
<Context docBase="/opt/shibboleth-idp/war/idp.war" privileged="true" antiResourceLocking="false" unpackWAR="true" swallowOutput="true"> <Realm className="org.apache.catalina.realm.JAASRealm" appName="ShibUserPassAuth"/> </Context>
3. Tomcat den Pfad zur JAAS login.config als Startparameter mitgeben (unter Debian in /etc/default/tomcat8):
- /etc/default/tomcat8
JAVA_OPTS=" ... -Djava.security.auth.login.config=file:/opt/shibboleth-idp/login.config ..."
4. /opt/shibboleth-idp/login.config
ACHTUNG: die Java-Klasse ist eine andere als bei der gewohnten login.config des IdP 2.x !!
- /opt/shibboleth-idp/login.config
ShibUserPassAuth { org.ldaptive.jaas.LdapLoginModule required ldapUrl="..." ssl="true" bindDn="..." bindCredential="..." baseDn="..." userFilter="uid={user}" logCredentials="false" ; };