Changes for page CAS PHP klient
Last modified by Petr Abrahamczik on 16.04.2024 10:11
From version 2.1
edited by Petr Abrahamczik
on 08.02.2019 09:24
on 08.02.2019 09:24
Change comment:
There is no comment for this version
To version 7.1
edited by Petr Abrahamczik
on 16.04.2024 10:11
on 16.04.2024 10:11
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,21 +1,20 @@ 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 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.html5 -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="h tml"}}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 7 <?php 8 - 9 9 // pri pouziti composer 10 10 require_once './vendor/autoload.php'; 11 11 12 12 // initialize phpCAS 13 -phpCAS::client(CAS_VERSION_3_0,'www.sso.vsb.cz',443,''); 12 +phpCAS::client(CAS_VERSION_3_0,'www.sso.vsb.cz',443,'','https://klient.vsb.cz'); 14 14 15 -// Nastaven ícertifikátu (nebo certifikačníautority) serveru CAS16 -phpCAS::setCasServerCACert('chain_ TERENA_SSL_High_Assurance_CA_3.pem');14 +// Nastaveni certifikatu (nebo certifikacni autority) serveru CAS 15 +phpCAS::setCasServerCACert('chain_geant_ov_rsa_ca_4_full.pem'); 17 17 18 -// zapnut ípodpory single sign out (omezenípouze na CAS server)17 +// zapnuti podpory single sign out (omezeni pouze na CAS server) 19 19 phpCAS::handleLogoutRequests(true, array("www.sso.vsb.cz")); 20 20 21 21 // provede autentizaci ... ... @@ -25,7 +25,6 @@ 25 25 26 26 // odhlaseni 27 27 if (isset($_REQUEST['logout'])) { 28 -// odhlaseni z CAS 29 29 phpCAS::logout(); 30 30 31 31 // odhlaseni s presmerovanim zpatky ... ... @@ -43,12 +43,30 @@ 43 43 <p>phpCAS version is <b><?php echo phpCAS::getVersion(); ?></b>.</p> 44 44 45 45 <?php 46 -// zde je ji žuživatel autentizován44 +// zde je jiz uzivatel autentizovan 47 47 if (phpCAS::isAuthenticated()) { 48 48 ?> 49 49 50 50 <h1>Successfull Authentication!</h1> 51 51 <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 + 52 52 <p><a href="?logout">Log Out</a></p> 53 53 54 54 <?php ... ... @@ -68,3 +68,4 @@ 68 68 </html> 69 69 {{/code}} 70 70 ))) 87 +