Browse code

Security-enhancements und andere REihenfolge

git-svn-id: https://svn.schokokeks.org/repos/tools/webinterface/trunk@1540 87cf0b9e-d624-0410-a070-f6ee81989793

bernd authored on10/12/2009 13:55:31
Showing4 changed files
... ...
@@ -10,18 +10,6 @@ $ftpusers = list_ftpusers();
10 10
 $regular_ftp = have_regular_ftp();
11 11
 
12 12
 
13
-output('<h3>FTP-Zugänge</h3>
14
-<p>Mit Ihrem SSH- bzw. SFTP-Zugriff können Sie sämtliche Ihrer Dateien bearbeiten und alle Funktionen nutzen, die wir Ihnen bereitstellen. Wenn sie möchten, können Sie sich mit diesen Zugangsdaten auch über das FTP-Protokoll verbinden.</p>
15
-');
16
-
17
-if ($regular_ftp)
18
-{
19
-  output('<p>'.icon_enabled().' Momentan ist der Zugriff über FTP aktiviert. Wenn Sie diesen nicht benötigen sollten Sie ihn aus Sicherheitsgründen ausschalten.<br /><a href="edit?regular_ftp=no">FTP-Zugriff sperren</a></p>');
20
-}
21
-else
22
-{
23
-  output('<p>'.icon_error().' Der Zugriff über FTP ist momentan gesperrt. Aktivieren Sie diesen nur wenn Sie ihn auch nutzen möchten.<br /><a href="edit?regular_ftp=yes">FTP-Zugriff freischalten</a></p>');
24
-}
25 13
 
26 14
 output('
27 15
 <h3>Zusätzliche FTP-Benutzer</h3>
... ...
@@ -48,3 +36,18 @@ else
48 36
 
49 37
 addnew('edit', 'Neuen FTP-Benutzer anlegen');
50 38
 
39
+
40
+output('<h3>Haupt-Account mittels FTP nutzen</h3>
41
+<p>Durch den Zugriff mittels SSH bzw. SFTP können Sie sämtliche Ihrer Dateien bearbeiten und alle Funktionen nutzen, die wir Ihnen bereitstellen. Wenn sie möchten, können Sie sich mit diesen Zugangsdaten zusätzlich auch über das FTP-Protokoll verbinden. Diese Funktion ist für die Nutzbarkeit der obigen, zusätzlichen FTP-Accounts nicht erforderlich.</p>
42
+');
43
+
44
+$token = generate_form_token('regular_ftp');
45
+
46
+if ($regular_ftp)
47
+{
48
+  output('<p>'.icon_enabled().' Momentan ist der Zugriff über FTP aktiviert. Wenn Sie diesen nicht benötigen sollten Sie ihn aus Sicherheitsgründen ausschalten.<br />'.internal_link('save', 'FTP-Zugriff für Haupt-Account sperren', 'regular_ftp=no&token='.$token).'</p>');
49
+}
50
+else
51
+{
52
+  output('<p>'.icon_error().' Der Zugriff Ihres Haupt-Accounts über FTP ist momentan abgeschaltet. Aktivieren Sie diesen nur wenn Sie ihn auch nutzen möchten.<br />'.internal_link("save", 'FTP-Zugriff für Haupt-Account freischalten', 'regular_ftp=yes&token='.$token).'</p>');
53
+}
... ...
@@ -8,16 +8,6 @@ require_role(ROLE_SYSTEMUSER);
8 8
 $title="FTP-Benutzer einrichten";
9 9
 $section='ftpusers_accounts';
10 10
 
11
-if (isset($_GET['regular_ftp']))
12
-{
13
-  if ($_GET['regular_ftp'] == 'yes')
14
-    enable_regular_ftp();
15
-  else
16
-    disable_regular_ftp();
17
-  redirect('accounts'); 
18
-}
19
-
20
-
21 11
 $ftpuser = empty_ftpuser();
22 12
 
23 13
 if (isset($_GET['id']))
... ...
@@ -115,6 +115,7 @@ function have_regular_ftp()
115 115
 
116 116
 function enable_regular_ftp()
117 117
 {
118
+  require_role(ROLE_SYSTEMUSER);
118 119
   $gid = get_gid('ftpusers');
119 120
   $uid = (int) $_SESSION['userinfo']['uid'];
120 121
   db_query("REPLACE INTO system.gruppenzugehoerigkeit (gid, uid) VALUES ('$gid', '$uid')");
... ...
@@ -3,6 +3,17 @@ include('ftpusers.php');
3 3
 
4 4
 require_role(ROLE_SYSTEMUSER);
5 5
 
6
+if (isset($_GET['regular_ftp']))
7
+{
8
+  check_form_token('regular_ftp', $_REQUEST['token']);
9
+  if ($_GET['regular_ftp'] == 'yes')
10
+    enable_regular_ftp();
11
+  else
12
+    disable_regular_ftp();
13
+  redirect('accounts'); 
14
+}
15
+
16
+
6 17
 if (isset($_GET['delete']))
7 18
 {
8 19
   $ftpuser = load_ftpuser($_GET['delete']);