Změny dokumentu CAS Java klient
Naposledy změněno Petr Abrahamczik 16.04.2024 10:22
Od verze 1.1
změnil(a) Petr Abrahamczik
k 07.02.2019 09:30
k 07.02.2019 09:30
Změnit komentář:
Žádné komentáře k této verzi
Na verzi 11.1
změnil(a) Petr Abrahamczik
k 07.02.2019 11:16
k 07.02.2019 11:16
Změnit komentář:
Žádné komentáře k této verzi
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,1 +1,104 @@ 1 - 1 +V ukázkovém příkladu je popsán způsob konfigurace webové aplikace v Javě pomocí [[Java Apereo CAS Client>>https://github.com/apereo/java-cas-client]]. 2 + 3 +1. Do aplikace je potřeba přidat knihovny klienta https://mvnrepository.com/artifact/org.jasig.cas.client/cas-client-core buď přímo a nebo pomocí nějakého buildovacího nástroje např. Maven.((( 4 +{{code language="xml"}} 5 +<dependency> 6 + <groupId>org.jasig.cas.client</groupId> 7 + <artifactId>cas-client-core</artifactId> 8 + <version>3.5.1</version> 9 +</dependency> 10 +{{/code}} 11 +))) 12 +1. Nakonfigurovat ##web.xml##. V uvedené konfiguraci je nutné nahradit adresu klienta https://klient.vsb.cz s URL našeho serveru.((( 13 +{{code language="xml"}} 14 +<filter> 15 + <filter-name>CAS Single Sign Out Filter</filter-name> 16 + <filter-class>org.jasig.cas.client.session.SingleSignOutFilter</filter-class> 17 + <init-param> 18 + <param-name>casServerUrlPrefix</param-name> 19 + <param-value>https://www.sso.vsb.cz</param-value> 20 + </init-param> 21 +</filter> 22 + 23 +<filter> 24 + <filter-name>CAS Authentication Filter</filter-name> 25 + <filter-class>org.jasig.cas.client.authentication.AuthenticationFilter</filter-class> 26 + <init-param> 27 + <param-name>casServerUrlPrefix</param-name> 28 + <param-value>https://www.sso.vsb.cz</param-value> 29 + </init-param> 30 + <init-param> 31 + <param-name>serverName</param-name> 32 + <param-value>https://klient.vsb.cz</param-value> 33 + </init-param> 34 +</filter> 35 + 36 +<filter> 37 + <filter-name>CAS Validation Filter</filter-name> 38 + <filter-class>org.jasig.cas.client.validation.Cas30ProxyReceivingTicketValidationFilter</filter-class> 39 + <init-param> 40 + <param-name>casServerUrlPrefix</param-name> 41 + <param-value>https://www.sso.vsb.cz</param-value> 42 + </init-param> 43 + <init-param> 44 + <param-name>serverName</param-name> 45 + <param-value>https://klient.vsb.cz</param-value> 46 + </init-param> 47 +</filter> 48 + 49 +<filter> 50 + <filter-name>CAS HttpServletRequest Wrapper Filter</filter-name> 51 + <filter-class>org.jasig.cas.client.util.HttpServletRequestWrapperFilter</filter-class> 52 +</filter> 53 + 54 +<filter> 55 + <filter-name>CAS Assertion Thread Local Filter</filter-name> 56 + <filter-class>org.jasig.cas.client.util.AssertionThreadLocalFilter</filter-class> 57 +</filter> 58 + 59 +<filter-mapping> 60 + <filter-name>CAS Single Sign Out Filter</filter-name> 61 + <url-pattern>/*</url-pattern> 62 +</filter-mapping> 63 + 64 +<filter-mapping> 65 + <filter-name>CAS Authentication Filter</filter-name> 66 + <url-pattern>/*</url-pattern> 67 +</filter-mapping> 68 + 69 +<filter-mapping> 70 + <filter-name>CAS Validation Filter</filter-name> 71 + <url-pattern>/*</url-pattern> 72 +</filter-mapping> 73 + 74 +<filter-mapping> 75 + <filter-name>CAS HttpServletRequest Wrapper Filter</filter-name> 76 + <url-pattern>/*</url-pattern> 77 +</filter-mapping> 78 + 79 +<filter-mapping> 80 + <filter-name>CAS Assertion Thread Local Filter</filter-name> 81 + <url-pattern>/*</url-pattern> 82 +</filter-mapping> 83 + 84 +<listener> 85 + <listener-class>org.jasig.cas.client.session.SingleSignOutHttpSessionListener</listener-class> 86 +</listener> 87 +{{/code}} 88 +))) 89 +1. CAS server musí důvěřovat certifikátu klienta (může se stát, že bude potřeba přidat certifikát na CAS server) a zároveň 90 + klient musí důvěřovat certifikátu serveru. 91 +1. Pro odhlášení uživatele z CAS je potřeba přistoupit na url ##https:~/~/www.sso.vsb.cz/logout##.((( 92 + Před odhlášením z CAS je vhodné zrušit session v aplikaci klienta (zaleží to však na konkrétním klientu). 93 + 94 + Pokud po odhlášení z CAS nechceme aby uživatel zůstal na odhlašovací stránce CASu, můžeme k odhlašovací url přidat parametr 'service', který 95 + obsahuje url (nejlépe zakódovanou pomocí URL kódování) na kterou se má po odhlášení přesměrovat. Url musí obsahovat adresu, která je pro službu povolena. 96 + 97 + např. ##https:~/~/www.sso.vsb.cz/logout?service=https%3A%2F%2Fklient.vsb.cz## 98 +))) 99 +1. Přihlášenou osobu v aplikaci lze pak jednoduše zjistit pomoci((( 100 +{{code language="java"}} 101 +request.getRemoteUser(); 102 +{{/code}} 103 +))) 104 +