d5f2f3f40845c818f65b41258a2ba19f6c494175
bernd Login via Client-Zertifikat...

bernd authored 15 years ago

1) <?php
2) require_once('session/start.php');
3) require_once('x509.php');
4) 
5) require_role(ROLE_SYSTEMUSER);
6) 
7) 
8) if ($_GET['action'] == 'new')
9) {
10)   check_form_token('clientcert_add');
11)   if (! isset($_SESSION['clientcert_cert']))
12)     system_failure('Kein Zertifikat');
13)   
14)   add_clientcert($_SESSION['clientcert_cert'], $_SESSION['clientcert_dn'], $_SESSION['clientcert_issuer']);
15) 
16)   // Räume session auf
17)   unset($_SESSION['clientcert_cert']);
18)   unset($_SESSION['clientcert_dn']);
19)   unset($_SESSION['clientcert_issuer']);
20)   header('Location: cert');
21) }
22) elseif ($_GET['action'] == 'delete')
23) {
24)   $cert = get_cert_by_id($_GET['id']);
25)   if (! $cert)
26)     system_failure('no ID');
27)   if ($cert['username'] != $_SESSION['userinfo']['username'])
28)     system_failure('Das Zertifikat ist nicht für Ihren Zugang eingerichtet');
29)   $sure = user_is_sure();
30)   if ($sure === NULL)
31)   {
bernd * alle internen Links sinnv...

bernd authored 15 years ago

32)     are_you_sure("action=delete&id={$cert['id']}", "Möchten Sie das Zertifikat »{$cert['dn']}« wirklich löschen?");