Changes for page CAS Java klient

Last modified by Petr Abrahamczik on 16.04.2024 10:22

From version 7.1
edited by Petr Abrahamczik
on 07.02.2019 10:56
Change comment: There is no comment for this version
To version 17.1
edited by Petr Abrahamczik
on 07.02.2019 13:54
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,93 +1,91 @@
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]].
1 +V ukázkovém příkladu je popsán základní způsob konfigurace webové aplikace v Javě pomocí [[Java Apereo CAS Client>>https://github.com/apereo/java-cas-client]]. Aplikace je schopna získat přihlášeného uživatele pomocí CAS v3 protokolu.
2 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"}}}
3 +1. Do webové 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 5  <dependency>
6 - <groupId>org.jasig.cas.client</groupId>
7 - <artifactId>cas-client-core</artifactId>
8 - <version>3.5.1</version>
6 + <groupId>org.jasig.cas.client</groupId>
7 + <artifactId>cas-client-core</artifactId>
8 + <version>3.5.1</version>
9 9  </dependency>
10 10  {{/code}}
11 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>
12 +1. Nakonfigurovat ##web.xml##. V uvedené konfiguraci je nutné nahradit adresu klienta ##https:~/~/klient.vsb.cz## s URL našeho serveru. V mapování filtru ##CAS Authentication Filter## je možné uvést místo ##/*## kontext do chráněné zóny aplikace např. /private/* (((
13 +
14 +{{code language="xml"}}
15 +<filter>
16 + <filter-name>CAS Single Sign Out Filter</filter-name>
17 + <filter-class>org.jasig.cas.client.session.SingleSignOutFilter</filter-class>
18 + <init-param>
19 + <param-name>casServerUrlPrefix</param-name>
20 + <param-value>https://www.sso.vsb.cz</param-value>
21 + </init-param>
22 +</filter>
23 +
24 +<filter>
25 + <filter-name>CAS Authentication Filter</filter-name>
26 + <filter-class>org.jasig.cas.client.authentication.AuthenticationFilter</filter-class>
27 + <init-param>
28 + <param-name>casServerUrlPrefix</param-name>
29 + <param-value>https://www.sso.vsb.cz</param-value>
30 + </init-param>
31 + <init-param>
32 + <param-name>serverName</param-name>
33 + <param-value>https://klient.vsb.cz</param-value>
34 + </init-param>
35 +</filter>
35 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>
37 +<filter>
38 + <filter-name>CAS Validation Filter</filter-name>
39 + <filter-class>org.jasig.cas.client.validation.Cas30ProxyReceivingTicketValidationFilter</filter-class>
40 + <init-param>
41 + <param-name>casServerUrlPrefix</param-name>
42 + <param-value>https://www.sso.vsb.cz</param-value>
43 + </init-param>
44 + <init-param>
45 + <param-name>serverName</param-name>
46 + <param-value>https://klient.vsb.cz</param-value>
47 + </init-param>
48 +</filter>
49 +
50 +<filter>
51 + <filter-name>CAS HttpServletRequest Wrapper Filter</filter-name>
52 + <filter-class>org.jasig.cas.client.util.HttpServletRequestWrapperFilter</filter-class>
53 +</filter>
54 +
55 +<filter>
56 + <filter-name>CAS Assertion Thread Local Filter</filter-name>
57 + <filter-class>org.jasig.cas.client.util.AssertionThreadLocalFilter</filter-class>
58 +</filter>
59 +
60 +<filter-mapping>
61 + <filter-name>CAS Single Sign Out Filter</filter-name>
62 + <url-pattern>/*</url-pattern>
63 +</filter-mapping>
64 +
65 +<filter-mapping>
66 + <filter-name>CAS Authentication Filter</filter-name>
67 + <url-pattern>/*</url-pattern>
68 +</filter-mapping>
53 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>
70 +<filter-mapping>
71 + <filter-name>CAS Validation Filter</filter-name>
72 + <url-pattern>/*</url-pattern>
73 +</filter-mapping>
68 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}}
75 +<filter-mapping>
76 + <filter-name>CAS HttpServletRequest Wrapper Filter</filter-name>
77 + <url-pattern>/*</url-pattern>
78 +</filter-mapping>
79 +
80 +<filter-mapping>
81 + <filter-name>CAS Assertion Thread Local Filter</filter-name>
82 + <url-pattern>/*</url-pattern>
83 +</filter-mapping>
84 +
85 +<listener>
86 + <listener-class>org.jasig.cas.client.session.SingleSignOutHttpSessionListener</listener-class>
87 +</listener>
88 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 91  1. Pro odhlášení uživatele z CAS je potřeba přistoupit na url ##https:~/~/www.sso.vsb.cz/logout##.(((
92 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 93  
... ... @@ -97,8 +97,10 @@
97 97   např. ##https:~/~/www.sso.vsb.cz/logout?service=https%3A%2F%2Fklient.vsb.cz##
98 98  )))
99 99  1. Přihlášenou osobu v aplikaci lze pak jednoduše zjistit pomoci(((
100 -{{code language="java"}}}
101 - request.getRemoteUser();
98 +{{code language="java"}}
99 +request.getRemoteUser();
102 102  {{/code}}
103 103  )))
102 +{{/code}}
103 +)))
104 104