Entwicklung & Design

Ein Tutorial zum Einstieg in das PHP-Framework: Anwendungsentwicklung mit Symfony

Seite 7 / 7

Sessionverwaltung und Authentifizierung

In unser Blog soll nicht jeder schreiben dürfen, sondern nur ein authentifizierter Benutzer, der über ein Passwort identifiziert wird. Dazu machen wir uns die Symfony-eigene Sessionverwaltung zu Nutze. Zuerst legen wir in der Konfigurationsdatei security.yml fest, welche Anwendungsteile geschützt werden sollen:

apps/frontend/blog/config/security.yml
show:
 is_secure: on
create:
 is_secure: on
edit:
 is_secure: on
update:
 is_secure: on
delete:
 is_secure: on

Listing 9

Jede einzelne Action des Moduls kann mit Sicherheitsmerkmalen versehen werden, in unserem einfachen Beispiel mit „is_secure“. Eine dermaßen geschützte Action wird nur ausgeführt, wenn ein User-Objekt vorhanden ist und der Benutzer den Status „isAuthenticated“ aufweist. Auf die User-Credentials kann in einem Template einfach zugegriffen werden:

Auschnitt: listSuccess.php
<?php if($sf_user->isAuthenticated()) echo link_to ('new entry', 'blog/create'); ?>

Listing 10

Die Benutzerauthentifizierung selbst passiert üblicherweise in einer Action, die Login und Passwort etwa mit einer Datenbank abgleicht.

Ausschnitt: action.class.php
$this->getUser()->setAuthenticated(true);

Listing 11

Fazit

Das Symfony-Projekt gehört trotz seines vergleichsweise jungen Alters zu den bestdokumentierten Open-Source-Projekten überhaupt. Die Website des Projekts bietet neben einem kompletten Handbuch auch komplexere Tutorials zum Download an. So oder so erfordert jedoch die Software-Entwicklung mit Symfony, dass man sich mit grundlegenden Prinzipien der objektorientierten Programmierung und der MVC-Architektur auseinandersetzt. Letztendlich sorgt Symfony durch seine klaren Strukturen dafür, dass der erzeugte Programmcode sauber und einfach wartbar ist.

Bitte beachte unsere Community-Richtlinien

Wir freuen uns über kontroverse Diskussionen, die gerne auch mal hitzig geführt werden dürfen. Beleidigende, grob anstößige, rassistische und strafrechtlich relevante Äußerungen und Beiträge tolerieren wir nicht. Bitte achte darauf, dass du keine Texte veröffentlichst, für die du keine ausdrückliche Erlaubnis des Urhebers hast. Ebenfalls nicht erlaubt ist der Missbrauch der Webangebote unter t3n.de als Werbeplattform. Die Nennung von Produktnamen, Herstellern, Dienstleistern und Websites ist nur dann zulässig, wenn damit nicht vorrangig der Zweck der Werbung verfolgt wird. Wir behalten uns vor, Beiträge, die diese Regeln verletzen, zu löschen und Accounts zeitweilig oder auf Dauer zu sperren.

Trotz all dieser notwendigen Regeln: Diskutiere kontrovers, sage anderen deine Meinung, trage mit weiterführenden Informationen zum Wissensaustausch bei, aber bleibe dabei fair und respektiere die Meinung anderer. Wir wünschen Dir viel Spaß mit den Webangeboten von t3n und freuen uns auf spannende Beiträge.

Dein t3n-Team

Schreib den ersten Kommentar!

Melde dich mit deinem t3n Account an oder fülle die unteren Felder aus.