Schneller User-Wechsel zu Testzwecken in Drupal
Zum Testen einer Website auf Drupal-Basis (aber natürlich auch bei jedem anderen CMS) gehört im Regelfall auch, die Seite mit den jeweils erstellten Benutzerrollen zu prüfen. Denn nur so läßt sich feststellen ob alle User die korrekten Berechtigungen besitzen - nicht zu wenige, da sonst die Funktion nicht gewährleistet ist, aber auch nicht zu viele, weil sonst Sicherheitslücken entstehen können. Der normale Weg - ausloggen, als Testuser mit einer anderen Rolle wieder einloggen - ist das Mittel der Wahl, wenn man einen umfangreichen Testlauf durchführt und viele Funktionen in einem Durchgang prüfen möchte. Alternativ kann man natürlich auch mit einem zweiten Browser arbeiten und sich dort mit der jeweiligen Testrolle einloggen. Will man aber nur mal schnell zwischendurch in eine andere Rolle schlüpfen, um z.B. ein vom Kunden berichtetes Fehlverhalten zu prüfen, oder um mit anderen Rechten etwas vorzuführen, so ist das aus- und wieder einloggen ebenso mühsam wie das Starten eines neuen Browsers. Hierfür bietet das Drupal-Modul Masquerade eine komfortable Lösung: es stellt verschiedene Optionen zur Verfügung, um zwischen verschiedenen Benutzern hin und her zu schalten. Zum einen bietet es einen Link "Masquerade as (Benutzername)" auf der Profilseite jedes Benutzers an - natürlich nur, wenn man die entsprechende Berechtigung zum "Maskieren" hat! Klickt man diesen an, sieht man die Website ab sofort mit den Rechten, die mit der Rolle dieses Benutzers verbunden sind. Gleichzeitig erscheint im persönlichen Menü ein Eintrag "Switch Back", mit dem man genauso schnell zurück wechseln kann. Zusätzlich gib es einen Eintrag (oder auch mehrere) der einen schnellen Wechsel zu einem festgelegten (Default-)Benutzer gestattet, sowie einen Block, wo man nach Benutzernamen suchen und dann in dessen Rolle schlüpfen kann.
Jeder Rollenwechsel wird übrigens von Drupal in der Log-Datei protokolliert, so dass man diese später nachvollziehen kann. Sobald die Website online geht, empfiehlt es sich, Masquerade wieder zu deinstallieren.