Změny dokumentu CAS PHP klient
Naposledy změněno Petr Abrahamczik 16.04.2024 10:11
Od verze 1.1
změnil(a) Petr Abrahamczik
k 08.02.2019 09:10
k 08.02.2019 09:10
Změnit komentář:
Žádné komentáře k této verzi
Na verzi 2.1
změnil(a) Petr Abrahamczik
k 08.02.2019 09:24
k 08.02.2019 09:24
Změnit komentář:
Žádné komentáře k této verzi
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,5 +1,70 @@ 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. 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 jasig/phpcas## a nebo je možné knihovnu stáhnout a přidat ručně. 4 +1. Stáhnout [[certifikát>>https://pki.cesnet.cz/certs/chain_TERENA_SSL_High_Assurance_CA_3.pem]] certifikáční autority CAS serveru ze stránky https://pki.cesnet.cz/cs/ch-tcs-ev-ssl-ca-3-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="html"}} 7 +<?php 4 4 9 +// pri pouziti composer 10 +require_once './vendor/autoload.php'; 5 5 12 +// initialize phpCAS 13 +phpCAS::client(CAS_VERSION_3_0,'www.sso.vsb.cz',443,''); 14 + 15 +// Nastavení certifikátu (nebo certifikační autority) serveru CAS 16 +phpCAS::setCasServerCACert('chain_TERENA_SSL_High_Assurance_CA_3.pem'); 17 + 18 +// zapnutí podpory single sign out (omezení pouze na CAS server) 19 +phpCAS::handleLogoutRequests(true, array("www.sso.vsb.cz")); 20 + 21 +// provede autentizaci 22 +if (isset($_REQUEST['login'])) { 23 + phpCAS::forceAuthentication(); 24 +} 25 + 26 +// odhlaseni 27 +if (isset($_REQUEST['logout'])) { 28 +// odhlaseni z CAS 29 + phpCAS::logout(); 30 + 31 +// odhlaseni s presmerovanim zpatky 32 +// phpCAS::logoutWithRedirectService('https://klient.vsb.cz'); 33 +} 34 + 35 +?> 36 + 37 +<html> 38 + <head> 39 + <title>php CAS Example</title> 40 + </head> 41 + <body> 42 + 43 + <p>phpCAS version is <b><?php echo phpCAS::getVersion(); ?></b>.</p> 44 + 45 +<?php 46 +// zde je již uživatel autentizován 47 +if (phpCAS::isAuthenticated()) { 48 +?> 49 + 50 + <h1>Successfull Authentication!</h1> 51 + <p>the user's login is <b><?php echo phpCAS::getUser(); ?></b>.</p> 52 + <p><a href="?logout">Log Out</a></p> 53 + 54 +<?php 55 +// uzivatel neni autentizovan 56 +} else { 57 +?> 58 + 59 + <h1>Unauthenticated!</h1> 60 + 61 + <p><a href="?login">Log In</a></p> 62 + 63 +<?php 64 +} 65 +?> 66 + 67 + </body> 68 +</html> 69 +{{/code}} 70 +)))