Sicherheits-Variablen

für die Liste aller Seiten

Entwickler, Administratoren

Diese Seite deckt Variablen ab, die für die Sicherheit von PmWiki ausschlaggebend ist.

$AllowPassword
Diese Variable enthält das spezielle 'nopass'-Passwort. Das wurde früher benutzt, um Seiten und Gruppen vom Passwortschutz auszuschließen, sodass trotz Gruppenpasswort oder siteweitem Passwort jedermann mit ihnen arbeiten konnte. Jüngere PmWiki-Versionen benutzen dafür '@nopass' (siehe Passwörter). Wenn Ihr Wiki älter ist und/oder Seiten mit dem 'nopass'-Passwort enthält, sollten Sie diese Variable nicht ändern. Seit Version 2.2.92 kann man das 'nopass'-Passwort deaktivieren, indem man diese Variable auf den Wert false (oder '') setzt.
$AuthUserPageFmt
definiert Seitennamen, in denen das Authuserskript nach Benutzernamen und Passwörtern sehen soll. Siehe AuthUser#accountsfromotherpages.
$DefaultPasswords
gibt die Standardpasswörter für Benutzer, Administator und Aktionen (Bearbeiten, Ansehen, Anhängen) an. Siehe site-weite Passwörter setzen.
$DenyHtaccessContent
bestimmt den Standardinhalt für .htaccess-Dateien, die PmWiki in neuen Verzeichnissen unter wiki.d erzeugt. Der Apache-Server hat diese Direktiven in Version 2.4 geändert. Der Standardwert sollte sowohl für ältere als auch neuere Serverversionen funktionieren.
$EnablePostAttrClearSession
Ein Schalter zur Kontrolle, ob oder ob nicht PmWiki durch die Änderung eines Seitenattributs irgendein existierendes Passwort vergessen soll. Der Standard ist, dass PmWiki durch die Änderung eines Attributes alle eingegebenen Passwörter vergisst. Das kann man ändern, indem man diese Variable auf null setzt.
$EnableSessionPasswords
kontrolliert, ob Passwörter als Teil einer Session gespeichert werden. Wenn die Variable auf NULL gesetzt ist, werden die Session-Passwörter niemals gespeichert (obwohl jede AuthUser-Authentifikation weiterhin erinnert wird).
$SetCookieFunction
Der Name einer eigenen Funktion zum Senden von Cookies zum Browser, anstelle von pmsetcookie(). Die Funktion sollte die gleichen Argumente wie pmsetcookie() akzeptieren.

:

$EnableCookieSecure
Auf 1 gesetzt aktiviert diese Variable das "Secure"-Flag für die Cookies des PmWiki-Kerns – die Cookies werden nur über HTTPS versendet. Das schließt die 'author'-, 'preference'- und 'cache'-Cookies des Kerns und alle benutzerdefinierten Cookies, die per pmsetcookie() gesetzt wurden, ein.
Beachten Sie: Das Session-Cookie und alle anderen PmWiki-Cookies sind betroffen.
$EnableCookieHTTPOnly
Auf 1 gesetzt aktiviert diese Variable das "HttpOnly"-Flag für die Cookies des PmWiki-Kerns – die Cookies werden JavaScript nicht zugänglich gemacht. Das schließt die 'author'-, 'preference'- und 'cache'-Cookies des Kerns und alle benutzerdefinierten Cookies, die per pmsetcookie() gesetzt wurden, ein.
Beachten Sie: Das Session-Cookie und alle anderen PmWiki-Cookies sind betroffen.
$CookieSameSite
Das "SameSite"-Flag für Cookies, das via pmsetcookie() gesendet wird, ist auf 'Lax' voreingestellt. Siehe diesen Artikel über die Implikationen.
$SessionEncode
Funktion, die man benutzt, um sensible Informationen in Sitzungen (Sessions) zu kodieren. Man setzt die Funktion auf NULL, wenn man keinerlei Kodierung haben will (wird paarweise mit $SessionDecode genutzt, s. hierunter).
$SessionDecode
Funktion zum Rückgängigmachen der Kodierung, die durch $SessionEncode vorgegeben ist. Man setzt die Funktion auf NULL, wenn es keine kodierten sensible Werte in der Sitzung gibt.
$HandleAuth
Dies setzt die erforderliche Authentifizierungsebene, die nötig ist, um eine Aktion auszuführen. Wenn Sie das folgende Beispiel in Ihre config.php-Datei eintragen, müssen Sie Bearbeitenrechte haben, um die Versionen einer Seite (page history) sehen zu können:
$HandleAuth['diff'] = 'edit';
$PageAttributes
Setzt den String, der auf der Attribute-Seite angezeigt wird, wenn man ein Passwort für eine Aktion eingibt.
$AuthLDAPBindDN
Für Sites, die AuthUser mit LDAP-Authentifizierung benutzen, gibt dies den vorgegebenen Namen (DN) an, der benutzt wird zum Binden an den LDAP-Server, damit die Identitäten überprüft werden.

Wer mehr davon versteht, der möge bitte diesen Satz prüfen und ggf. verbessern

$AuthLDAPBindPassword
Für AuthUser mit LDAP-Authentifikation legt dies das Passwort für das Binding fest (in Verbindung mit $AuthLDAPBindDN oben).
$AuthLDAPReferrals
Legt fest, ob automatisch den Verweisungen ('referrals') gefolgt wird, die der LDAP-Server zurückliefert, auf 1 setzen zum Aktivieren oder auf 0 zum Deaktivieren. In der Voreinstellung ist diese Variable nicht gesetzt und die Verbindung folgt 'referrals', wenn diese auf der Serverseite aktiviert sind (gewöhnlich sind sie das).
$MultiFactorAuthFunction
(nur AuthUser) Eine vom Benutzer/Administrator definierte Funktion, die einen Check für Multi-Faktor-Authentifizierung durchführt (MFA, 2FA). Sie wird von AuthUserId() aufgerufen, wenn die Authentifizierung erfolgreich war. Die Funktion wird mit dem Benutzernamen und dem Passwort als Argumente aufgerufen und sollte true zurückliefern, wenn die 2FA erfolgreich war, sonst false.
$FailedLoginsFunction
(nur AuthUser) Eine vom Benutzer/Administrator definierte Funktion, die einen Check für vielfache erfolglose Logins durchführt, siehe Cookbook:FailedLoginFunction.
$EnablePublishAttr
Fügt eine neue "publish"-Autorisierungsebene ein, um das Bearbeiten und Speichern von Entwürfen vom Veröffentlichen des Textes zu unterscheiden – siehe $EnableDrafts.
$EnablePageVarAuth
In PmWiki version 2.2.22 und 2.2.23 sollte diese Variable auf 0 gesetzt sein. In 2.2.24 wird sie nicht weiter benutzt.
$RobotActions
Ein Array, das kontrolliert, welche Aktionen von Webbots erreicht werden können. Die Arrayschlüssel sind die Aktionen, wenn der Wert 1 oder true ist, ist die Aktion erreichbar. Wenn eine Aktion nicht als Schlüssel definiert ist oder wenn der Wert als false oder zero ausgewertet wird, wird die Aktion abgewiesen, wenn sie von einem Bot aufgerufen wird. Per Voreinstellung sind nur die Aktionen "browse", "rss" und "dc" von Bots erreichbar. Zum Beispiel:
$RobotActions['download'] = 1; # erlaube Bots, Dateien mit deaktiviertem $EnableDirectDownload herunterzuladen (page permissions werden respektiert)
$RobotActions['rss'] = 0; # entziehe Bots die Erlaubnis, RSS-Feeds zu erhalten
$RobotActions['print'] = 1; # erlaube Bots, die Druckversion zu erhalten
Die Variable kann auch von Kochbuchrezepten definierte Aktionen als Schlüssel enthalten.
$RobotPattern
Ein Muster eines regulären Ausdrucks mit bekannten user-agent-Zeichenketten für Bots.
$EnableRobotCloakActions
Wird dieses Flag auf 1 gesetzt, werden alle verbotenen ?action=-Werte von Seitenverweisen entfernt, die an Robots zurückgegeben werden. Dadurch wird die Belastung des Servers durch Abrufe weiter verringert.
$AuthFormRespCode
Ein selbstentwickelter HTTP-Response-Kode, der mit dem Authentifizierungsformular zum Browser gesendet werden soll. Das Formular wird weiterhin angezeigt und der Benutzer kann das Passwort eintippen, um auf die eingeschränkte Seite oder Datei zuzugreifen. Zum Beispiel: um den "403 Forbidden"-Statuskode für einen eingeschränkten Download zu senden, können Sie in der config.php-Datei das Folgende setzen:
if ($action == 'download')
  $AuthFormRespCode = 403;

Siehe auch:

für die Liste aller Seiten


Übersetzung von PmWiki.SecurityVariables,   Originalseite auf PmWikiDe.SecurityVariables   —   Rückverweise

Zuletzt geändert:   PmWikiDe.SecurityVariablesam 16.12.2023
 PmWiki.SecurityVariablesam 16.12.2023