Changes for page CAS PHP klient

Last modified by Petr Abrahamczik on 16.04.2024 10:11

From version 7.1
edited by Petr Abrahamczik
on 16.04.2024 10:11
Change comment: There is no comment for this version
To version 1.1
edited by Petr Abrahamczik
on 08.02.2019 09:10
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,87 +1,5 @@
1 1  V ukázkovém příkladu je popsán základní způsob konfigurace webové aplikace v PHP pomocí [[phpCAS>>https://github.com/apereo/phpCAS]]. 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. Pokud využíváme ##composer## lze to provést pomocí příkazu ##composer require apereo/phpcas## a nebo je možné knihovnu stáhnout a přidat ručně.
4 -1. Stáhnout [[certifikát>>https://pki.cesnet.cz/_media/certs/chain_geant_ov_rsa_ca_4_full.pem]] certifikáční autority CAS serveru ze stránky https://pki.cesnet.cz/cs/ch-tcs-crt-crl.html
5 -1. Příklad aplikace. Adresu https://klient.vsb.cz je potřeba nahradit adresou aplikace a certifikát je potřeba mít ve stejném adresáři jako tento soubor.(((
6 -{{code language="php"}}
7 -<?php
8 -// pri pouziti composer
9 -require_once './vendor/autoload.php';
3 +1.
10 10  
11 -// initialize phpCAS
12 -phpCAS::client(CAS_VERSION_3_0,'www.sso.vsb.cz',443,'','https://klient.vsb.cz');
13 13  
14 -// Nastaveni certifikatu (nebo certifikacni autority) serveru CAS
15 -phpCAS::setCasServerCACert('chain_geant_ov_rsa_ca_4_full.pem');
16 -
17 -// zapnuti podpory single sign out (omezeni pouze na CAS server)
18 -phpCAS::handleLogoutRequests(true, array("www.sso.vsb.cz"));
19 -
20 -// provede autentizaci
21 -if (isset($_REQUEST['login'])) {
22 - phpCAS::forceAuthentication();
23 -}
24 -
25 -// odhlaseni
26 -if (isset($_REQUEST['logout'])) {
27 - phpCAS::logout();
28 -
29 -// odhlaseni s presmerovanim zpatky
30 -// phpCAS::logoutWithRedirectService('https://klient.vsb.cz');
31 -}
32 -
33 -?>
34 -
35 -<html>
36 - <head>
37 - <title>php CAS Example</title>
38 - </head>
39 - <body>
40 -
41 - <p>phpCAS version is <b><?php echo phpCAS::getVersion(); ?></b>.</p>
42 -
43 -<?php
44 -// zde je jiz uzivatel autentizovan
45 -if (phpCAS::isAuthenticated()) {
46 -?>
47 -
48 - <h1>Successfull Authentication!</h1>
49 - <p>the user's login is <b><?php echo phpCAS::getUser(); ?></b>.</p>
50 -
51 - <h2>User Attributes</h2>
52 - <ul>
53 -
54 -<?php
55 -foreach (phpCAS::getAttributes() as $key => $value) {
56 - if (is_array($value)) {
57 - echo '<li>', $key, ':<ol>';
58 - foreach ($value as $item) {
59 - echo '<li><strong>', $item, '</strong></li>';
60 - }
61 - echo '</ol></li>';
62 - } else {
63 - echo '<li>', $key, ': <strong>', $value, '</strong></li>' . PHP_EOL;
64 - }
65 -}
66 -?>
67 -
68 - <p><a href="?logout">Log Out</a></p>
69 -
70 -<?php
71 -// uzivatel neni autentizovan
72 -} else {
73 -?>
74 -
75 - <h1>Unauthenticated!</h1>
76 -
77 - <p><a href="?login">Log In</a></p>
78 -
79 -<?php
80 -}
81 -?>
82 -
83 - </body>
84 -</html>
85 -{{/code}}
86 -)))
87 -