Haftpflicht Blogger
Virtual Server von Host Europe

Contao – Grundtabellen Installationszustand

| 30. Juni 2010 | Keine Kommentare

Installationsvorbereitungen
Vor der Programminstallation von Contao 2.9 ist eine MySQL-Zieldatenbank anzulegen. Mit dem Namen dieser Datenbank und einem DB-User mit Passwort ausgestattet, läßt sich dann das Content-Management-System Contao schnell installieren.

Spielt man kein Template ein, so wird bei der Grundinstallation wirklich nur die Tabellenstruktur angelegt. Alle während der Installation eingegebenen Werte werden in der Konfigurationsdatei system/config/localconfig.php permanent hinterlegt, so dass man selbst zu diesem Zeitpunkt der Installation noch keinen einzigen Datenbankeintrag vorfindet.

Contao-GrundtabellenKeine Metadateneinträge
D.h. also, dass Contao zwar ein vollkommen datenbankgetriebenes Contentmanagement-System ist und dennoch selbst keinerlei Datenbankeinträge als Voraussetzung für startbares, laufendes System benötigt.  Das finde ich sehr positiv, bedeutet es doch, dass die Core-Funktionalitäten nicht durch Metadaten in der Datenbank gesteuert werden und sich die Datenbank mehr oder weniger voll auf die Verwaltung des Inhalts beschränkt.

Contaotabellen: Namenskonvention
Die Datenbank selbst kommt dann mit 34 Tabellen aus. Historisch bedingt  (Contao = ehem. TYPOlight) beginnen die Contao-Tabellen mit „TL_“.  Früher oder später will man vielleicht seine eigenen Tabellen in die Datenbank integrieren, weil man ein Plugin-Modul geschrieben hat oder wegen Legacy-Programmtabellen, die man anbinden möchte.  Grundsätzlich kann man dies tun und die Tabellen können dann heißen und mit Tabellenpräfixen jeder Art sein, aber, wenn man die Datenbank-Controller von Contao verwenden möchte, dann sollte man wissen, dass diese Controller nur Tabellen mit dem Präfix ‚tl_‘ berücksichtigen.

Administrator anlegen
Der allererste Datenbankeintrag wird dann auch durch das Anlegen eines Administrators verursacht. Dieser erste Eintrag in der Tabelle tl_user ermöglicht es dem Anwender sich als Administrator Zugriff auf die Backend-Verwaltungsoberfläche zu erhalten.

Zur Kennzeichnung, dass es sich um einen Administrator handelt, wird vom Installationsprogramm das Attribut TL_USER.admin = 1 gesetzt.  Es wird dabei kein korrespondierender Eintrag in der Tabelle TL_USER_GROUP angelegt.  Dies ist für mich ein starkes Indiz dafür, dass ein Benutzer, den man derart zum Admin macht, wirklich allumfassende Rechte ohne jede Einschränkung erhält.
Zweiter Admin
Im Backend kann man später unter dem Menüpunkt Benutzerverwaltung/Benutzer übrigens noch weitere Benutzer zum Administrator machen, dies sollte man aber meines Erachtens mit Bedacht tun. Sicherer ist sicherlich, eine Benutzergruppe Backend-Administrator mit recht weitreichenden Rechten anzulegen , die einem Administrator gleichkommen (aber eben doch das eine oder andere Recht nicht zuweisen).
Für die Benutzergruppen wird ein Eintrag in der Tabelle TL_USER_GROUP angelegt und beim Benutzereintrag in der Tabelle TL_USER ist das BLOB-Attribut GROUPS gesetzt.

Demo-Template Daten

Bei der Grundinstallation von Contao kann man sich auch eine Demo-Internetseite vom System einspielen lassen. Es ist durchaus legitim und erforderlich, sich mit dem Demo-Template erst einmal mit dem Content-Management-System Contao vertraut zu machen, aber ich möchte nicht wissen, wieviele das Demo-Template umschreiben/anpassen, einen neuen Admin anlegen und dabei vergessen, den Demo-Admin und die Demo-User zu löschen.

Deshalb:

  • Anwender, die bei der Contao-Installation das Demo-Template mit einspielen, sollten also daran denken, gleich nach dem Anlegen der eigenen Person als Admin, dem User ‚kevin.jones‘ die Adminrechte zu entziehen oder zumindest das Passwort zu ändern, ansonsten haben Sie eine große Sicherheitslücke.

Stichworte:

Kategorie: Contao

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.