Zum Inhalt springen

Zugriffsrechte des Benutzers

Erstellt am 14. Februar 2006 · 6 Antworten · letzte Antwort am 28. Februar 2006

Tags: Frage

headcrap ·

Hi,

mein Vorhaben ist "relativ" simpel. Ich habe eine selbstgeschriebene Extensions (Back End) welche mehrere Funktionen bietet. Z.b. Funk1, Funk2.

Nun bietet Typo3 die Funktion bei anlegen eines neuen Benutzers bestimmte Tabellen diesen zu zuordnen. Angenommen meine Extensions besitzt zwei Tabellen (table_funk1, table_funk2) und dem Benutzer ist nur die Tabelle table_funk1 zugeordnet.

D.h. er hat auf die Tabelle table_funk2 keinen Zugriff. Wie schaffe ich es nun jedoch abzufragen, welche Zugriffe der Benutzer hat ?

Warum ich das möchte ?
Meine Extensions besitzt ein Pulldown indem man die einzelnen Funktionen anwählen kann. Nun ist es meiner Meinung nach unlogisch, wenn dort Funktionen auftauchen, welcher der Benutzer nicht nutzen darf !

Also die eigentliche Frage:

Wie lese ich aus, auf welche Tabellen der Benutzer Zugriff hat ?

Gruss
Headcrap

Unbekannter Benutzer ·

Hi,
da ich zur Zeit nur an der Erweiterung programmieren will, benötige ich einen Hinweis wie ich diese für alle Nutzer im Backend sichtbar machen kann. Mit der Rechtevergabe habe ich mich noch nicht beschäftigt, würde ich gerne später machen und erst mal die Erweiterung fertig stellen.
Ich habe gefunden in conf.php:

$MCONF["access"]="user,group";

Mein Editor-User kann die Erweiterung trotzdem nicht sehen. Nach dem Klick auf den Link bleibt die Seite leer!?

Danke für einen kurzen Hinweis.

woida ·

Du mußt den Benutzer, bzw. seine Gruppe editieren (Weltkugel -> Liste).
"Include Access Lists" aktivieren und dann unter "Modules" deine Ext. auswählen.

Unbekannter Benutzer ·
woida schrieb

Du mußt den Benutzer, bzw. seine Gruppe editieren (Weltkugel -> Liste).
"Include Access Lists" aktivieren und dann unter "Modules" deine Ext. auswählen.

Das reichte leider nicht. Ich mußte in der main-Methode mit der vom Kickstarter erzeugten Extension folgendes ändern:

// Access check!
		// The page will show only if there is a valid page and if this page may be viewed by the user
		$this->pageinfo = t3lib_BEfunc::readPageAccess($this->id,$this->perms_clause);
		$access = is_array($this->pageinfo) ? 1 : 0;

	       	if (($this->id && $access) || ($BE_USER->user["admin"] && !$this->id) )	{...

in

if (($this->id && $access) || ($BE_USER->user["admin"] && !$this->id) || $BE_USER->user['ses_userid'] )

Aber warum ist mir auch nicht klar und ob das überhaupt der gängige Weg ist!?