Schlagwort-Archive: mrbs

Weitere Benutzerlevel in MRBS

Hintergrund: Eine weitere Instanz von MRBS war so einzurichten, dass diese

  1. gegenüber Schulfremden verschlossen ist
  2. Lehrer:innen aber gucken dürfen
  3. das Sekretariat buchen kann und es
  4. trotzdem noch einen gibt, der davon unabhängig Adminrechte hat.

MRBS bringt aber nur die Nutzerlevel 0-2 mit. Doof. Also musste ein weiterer Benutzerlevel her.

  1. Benutzer Lehrer:innen mit „Nur mal gucken“-Rechten
  2. Benutzer Sekretariat mit Buchungsrechten
  3. Benutzer Admin mit administrativen Rechten

Wie das geht, habe ich hier mal aufgeschrieben:

https://codeberg.org/kvfg/aufdemhoehnisch

MRBS und report.php

Wer gerade auf der Suche ist nach einer Möglichkeit, normalen Benutzer:innen in MRBS zu erlauben, selbst Berichte zu erstellen – also die report.php aufzurufen: Das geht in der mrbs_auth.inc

133  
134     // These pages allow users to create and delete entries 
135     case 'check_slot.php':              // Ajax page used by edit_entry.php 
136     case 'del_entry.php': 
137     case 'edit_entry.php': 
138     case 'edit_entry_handler.php': 
139     case 'report.php':                 // diese Zeile ergänzen!
140       return (is_open_to_users()) ? 1 : 2; 
141       break; 
142  
143     // These pages only contain admin features 
144     case 'add.php':                     // Adds a room 
145     case 'del.php':                     // Deletes a room 
146     case 'del_entries.php':             // Ajax page for bulk deletion of entries 
147     case 'edit_area.php': 
148     case 'edit_area_handler.php': 
149     case 'edit_room_handler.php': 
150     case 'import.php': 
151     //case 'report.php':               // diese Zeile auskommentieren
152       $result = 2; 
153       break; 
154 

Und das war es auch schon.

LDAPs von MRBS 1.5 auf LD-Server

Ein auf einem externen Server (z.B. bei Hetzner) gehostetes MRBS kann mit den folgenden Einstellungen per LDAPs gegenüber dem internen SBE-Serverchen mit openLDAP authentifizieren:

$auth["type"] = "ldap";
unset($auth["admin"]);
$auth["admin"][] = "admin";

$ldap_host = "ldaps://123.123.123.123"; // IP des Schulservers
$ldap_port = 636;
$ldap_v3 = true;
$ldap_tls = true;
$ldap_base_dn = "ou=users;dc=schule,dc=ort,dc=schule-bw,dc=de";
$ldap_user_attrib = "uid";
$ldap_filter = "|(ldRole=teacher)(uid=admin)";
$ldap_disable_referrals = TRUE;

//$ldap_debug = TRUE; // Nur drin lassen wenn es nicht funzt

Die obigen Einträge beziehen sich auf die Datei config.inc.php im Verzeichnis /pfad/zu/mrbs/web. Debugmeldungen von MRBS (sofern oben einkommentiert) finden sich in der error.log des Apachen. Der Filter stellt hoffentlich sicher, dass nur Lehrer/innen sich anmelden können. Um MRBS zusätzlich gegenüber Einsichtnahmen durch Zweite abzusichern, muss der Login erzwungen werden. Dazu

// Datenschutz

 if( ! getAuthorised(1))
   {
    showAccessDenied($day,$month, $year, $area);
    exit();
   }

nach den Includes in alle nur erdenklichen und über Netz erreichbaren PHP Dateien (month.php, day.php, week.php, search.php, report.php usw) setzen.

Die anderen hier im Blog zu findenden Hinweise zur Konfiguration von LDAPs gegen einen SBE Server sollte man sich ebenfalls mal ansehen, wenn es mit den Einträgen oben nicht tun will. Es gibt einige Wände, vor die man laufen kann.