Fehlende Berechtigungen nach anlegen per Script
Verfasst: 14.05.2009 11:13
Hallo zusammen,
wieder mal ein kleines Problem dem ich einfach nicht Herr werde.
Habe vor einigen Wochen von phpBB2 auf 3 konvertiert. Das hat weitesgehend problemlos funktioniert.
Da das Forum jedoch in eine andere Software eingegliedert laufen soll, musste ich einige Dinge verändern, vor allem was den Single-Sign-On etc betrifft.
Inzwischen läuft aber alles prima. Nur eine Sache will einfach nicht funktionieren. Ich fahre jede Nacht auf dem Server diverse User-Import Scripte.
Für jeden neuen User soll natürlich auch ein Forenzugang hergestellt werden. Herr Mustermann loggt sich also in die Umgebung ein, klickt auf "Kommunikation" und landet dann automatisch eingeloggt im Forum. So wie es eben mit den Usern schon funktioniert, die konvertiert wurden.
Mit jetzt per Script neu angelegten Usern klappt es aber nicht mehr. Sie kommen noch in die obere Umgebung. Wenn sie aber dann ins Forum wollen, werden sie zwar eingeloggt, aber sehen keine Foren oder Threads. (Nachricht: "Dieses Board enthält keine Foren").
Klicken Sie in einer von mir gestalteten Themenübersicht (ausserhalb des Forums) auf einen Thread, kommt folgende Meldung: "Sie haben keine Berechtigung, dieses Forum zu lesen.".
In beiden fällen klappt jedoch der Login ins Forum, denn sonst würde man keinen Button zum Abmelden sehen
Im Adminbereich habe ich mir dann mal die Berechtigungen angesehen... und siehe da: Für kein einziges Forum war der User lese- oder schreibberechtigt.
Somit ist das Problem zwar erkannt, aber eine Lösung habe ich dafür nicht wirklich. Jeden Tag die Berechtigungen für die neuen User im Adminbereich zu setzen ist jedenfalls nicht drin.
Jetzt noch kurz ein Hinweis wie ich das Anlegen eines Users mache:
Ich gehe hier ganz nach der Funktion "user_add" aus der functions_user.php vor.
Als erstes wird also ein Datensatz in phpbb_users angelegt (mit allen Werten die auch in der genannten Funktion gesetzt werden), anschließend füge ich den User noch in die Gruppe "REGISTRIERTE USER" hinzu.
Mehr mache ich dann aber auch nicht. Ich habe jetzt schon die Datensätze mit so vielen vorhandenen und funktionierenden Usern verglichen, kann aber einfach keine Unterschiede feststellen. Mir ist allerdings auch nicht ganz klar wo die Berechtigungen denn nun gespeichert werden.
Ich dachte eigentlich es wäre das Feld user_permissions in phpbb_users. Allerdings scheint dieser Wert erst beim Userlogin geschrieben und beim logout wieder geleert zu werden. So konnte ich es jedenfalls bei einigen Usern verfolgen. Ob das so richtig ist weiß ich nicht.
Kann mir hier jemand helfen? In der Suche bin ich nicht fündig geworden, allerdings bin ich auch nicht besonders gut im Umgang damit...
Danke schonmal,
Alex
EDIT: Eventuell ist das besser in der Entwicklerecke aufgehoben, könnte das jemand verschieben?
wieder mal ein kleines Problem dem ich einfach nicht Herr werde.
Habe vor einigen Wochen von phpBB2 auf 3 konvertiert. Das hat weitesgehend problemlos funktioniert.
Da das Forum jedoch in eine andere Software eingegliedert laufen soll, musste ich einige Dinge verändern, vor allem was den Single-Sign-On etc betrifft.
Inzwischen läuft aber alles prima. Nur eine Sache will einfach nicht funktionieren. Ich fahre jede Nacht auf dem Server diverse User-Import Scripte.
Für jeden neuen User soll natürlich auch ein Forenzugang hergestellt werden. Herr Mustermann loggt sich also in die Umgebung ein, klickt auf "Kommunikation" und landet dann automatisch eingeloggt im Forum. So wie es eben mit den Usern schon funktioniert, die konvertiert wurden.
Mit jetzt per Script neu angelegten Usern klappt es aber nicht mehr. Sie kommen noch in die obere Umgebung. Wenn sie aber dann ins Forum wollen, werden sie zwar eingeloggt, aber sehen keine Foren oder Threads. (Nachricht: "Dieses Board enthält keine Foren").
Klicken Sie in einer von mir gestalteten Themenübersicht (ausserhalb des Forums) auf einen Thread, kommt folgende Meldung: "Sie haben keine Berechtigung, dieses Forum zu lesen.".
In beiden fällen klappt jedoch der Login ins Forum, denn sonst würde man keinen Button zum Abmelden sehen

Im Adminbereich habe ich mir dann mal die Berechtigungen angesehen... und siehe da: Für kein einziges Forum war der User lese- oder schreibberechtigt.
Somit ist das Problem zwar erkannt, aber eine Lösung habe ich dafür nicht wirklich. Jeden Tag die Berechtigungen für die neuen User im Adminbereich zu setzen ist jedenfalls nicht drin.
Jetzt noch kurz ein Hinweis wie ich das Anlegen eines Users mache:
Ich gehe hier ganz nach der Funktion "user_add" aus der functions_user.php vor.
Als erstes wird also ein Datensatz in phpbb_users angelegt (mit allen Werten die auch in der genannten Funktion gesetzt werden), anschließend füge ich den User noch in die Gruppe "REGISTRIERTE USER" hinzu.
Mehr mache ich dann aber auch nicht. Ich habe jetzt schon die Datensätze mit so vielen vorhandenen und funktionierenden Usern verglichen, kann aber einfach keine Unterschiede feststellen. Mir ist allerdings auch nicht ganz klar wo die Berechtigungen denn nun gespeichert werden.
Ich dachte eigentlich es wäre das Feld user_permissions in phpbb_users. Allerdings scheint dieser Wert erst beim Userlogin geschrieben und beim logout wieder geleert zu werden. So konnte ich es jedenfalls bei einigen Usern verfolgen. Ob das so richtig ist weiß ich nicht.
Kann mir hier jemand helfen? In der Suche bin ich nicht fündig geworden, allerdings bin ich auch nicht besonders gut im Umgang damit...

Danke schonmal,
Alex
EDIT: Eventuell ist das besser in der Entwicklerecke aufgehoben, könnte das jemand verschieben?