494545a92161fbb73f9752d8738f2824f8e5da7f
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');
bernd Erlaube das Löschen von Cli...

bernd authored 14 years ago

27)   if (!((!isset($_SESSION['subuser']) && $cert['username'] == $_SESSION['userinfo']['username']) ||
28)         (isset($_SESSION['subuser']) && $cert['username'] == $_SESSION['subuser'])))
bernd Login via Client-Zertifikat...

bernd authored 15 years ago

29)     system_failure('Das Zertifikat ist nicht für Ihren Zugang eingerichtet');
30)   $sure = user_is_sure();
31)   if ($sure === NULL)
32)   {
bernd * alle internen Links sinnv...

bernd authored 15 years ago

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