Ich verwende bisher das Plugin “ Disclose Secret ” für den Schutz der privaten Posts. Leider hat dieses Plugin ein paar Probleme. Eins davon ist, dass es keine HTTP-Basic-Authentifizierung per ungepatchem mod_fcgid unterstützt, wodurch der geschützte RSS-Feed nicht mit einem registrierten Nutzer abrufbar ist.

Dazu muss man in der .htaccess folgende Zeilen hinzufügen:

1
2
3
4
# PHP (CGI mode) HTTP Authorization with ModRewrite:
RewriteEngine on
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]

Anmerkung: Sofern die Rewrite-Engine schon aktiviert wurde, muss man das natürlich nicht nochmal machen…

Nun muss man die Datei des Plugins bearbeiten. Suche in der Datei disclose-secret.php:

1
2
3
4
if (!empty($current_user))
 return;

if (!isset($_SERVER['PHP_AUTH_USER']) || !isset[$_SERVER['PHP_AUTH_PW']]

Ersetze durch:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
if (!empty($current_user))
 return;

if (isset($_SERVER['HTTP_AUTHORIZATION']))
{
 $ha = base64_decode( substr($_SERVER['HTTP_AUTHORIZATION'],6) );
 list($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW']) = explode(':', $ha);
 unset($ha);
}

if (!isset($_SERVER['PHP_AUTH_USER']) || !isset[$_SERVER['PHP_AUTH_PW']]

Momentan überlege ich aufgrund der Bugs in Disclose-Secret im Zusammenhang mit Wordpress 2.7 (Beim Bearbeiten von Posts gehen die Berechtigungen verloren, neue Posts können nicht mit Berechtigungen versehen werden (nur über direktes Einfügen in der Datenbank) und das Berechtigungspanel erscheint ÜBER der Eingabemaske) auf Role Scoper  zu wechseln. Gleichzeitig würde ich mir damit den Role-Manager  sparen, der ebenfalls viele seltsame Bugs hat. Blöderweise kann Role Scoper den RSS-Feed noch nicht schützen, aber das habe ich bereits als Feature beim Autor requested. Mal sehen, ob das vielleicht kommt. Dann steige ich auf jeden Fall um.