PmWikiDe /
Sicherheits-Variablen
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 wiepmsetcookie()
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.
$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:
# erlaube Bots, Dateien mit deaktiviertem$RobotActions
['download'] = 1;$EnableDirectDownload
herunterzuladen (page permissions werden respektiert)
# entziehe Bots die Erlaubnis, RSS-Feeds zu erhalten$RobotActions
['rss'] = 0;
# erlaube Bots, die Druckversion zu erhalten$RobotActions
['print'] = 1;
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:
Übersetzung von PmWiki.SecurityVariables, Originalseite auf PmWikiDe.SecurityVariables — Backlinks
Zuletzt geändert: | PmWikiDe.SecurityVariables | am 25.05.2023 |
PmWiki.SecurityVariables | am 25.05.2023 |