Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
Geleitwort des Fachgutachters
Vorwort
1 Einleitung
2 Einführung in eZ Components
3 Die Applikationsbasis
4 Fehlerbehandlung und Debugging
5 Konfiguration
6 Datenbankanbindung
7 ORM mit PersistentObject
8 Template
9 Übersetzung
10 Benutzereingaben validieren
11 Authentifizierung
12 Bildverarbeitung
13 Archive und Dateien
14 Mail
15 Logging
16 Diagramme
17 Feeds und Caching
18 Setup
A Inhalt der Buch-CD
Stichwort
Download: - ZIP, ca. 2,7 MB
Ihre Meinung?
<< zurück | Galileo Computing / <openbook> /eZ Components | vor >>
eZ Components von Tobias Schlitt, Kore Nordmann Das Entwickler-Handbuch
eZ Components geb., mit CD 454 S., 39,90 Euro Galileo Computing ISBN 978-3-8362-1073-7 |
| 11 Authentifizierung
|  | 11.1 Die Authentication-Komponente
|  | 11.2 Einbindung in die Applikation
|  |  | 11.2.1 Eingabeformulare
|  |  | 11.2.2 Formularverarbeitung anpassen
|  |  | 11.2.3 Authentifizierung des Besuchers
|  |  | 11.2.4 Gruppierung von Filtern
|  |  | 11.2.5 OpenID
|  | 11.3 Benutzer in der Datenbank
|  | 11.4 Fazit
## 11.3 Benutzer in der Datenbank Die wohl üblichste Variante der Authentifizierung eines Besuchers ist gegen in der Datenbank gespeicherte Daten. Dies ist mit dem AuthenticationDatabaseTiein einfach mit anderen Authentifizierungsmechanismen zu integrieren.
    $credentials = new ezcAuthenticationPasswordCredentials(
        $name,
        generatePasswordHash( $password )
    );

    $authentication = new ezcAuthentication( $credentials );

    $database = new ezcAuthenticationDatabaseInfo(
        ezcDbInstance::get(),
        'user',
        array( 'login', 'password' )
    );

    $authentication->addFilter(
        new ezcAuthenticationDatabaseFilter( $database )
    );

    if ( !$authentication->run() )
    {
        return gpBlogController::getInstance()->mainSignals->emit(
            'error',
            'Could not authentificate.'
        );
    }
Listing 11.11 Authentifizierung gegen eine Datenbank Das Beispiel ähnelt selbstverständlich stark dem bereits gezeigten. Zu Beginn wird ein Objekt der Klasse ezcAuthenticationPasswordCredentials mit den Daten des Besuchers erstellt. Welche Methode zur Erstellung des Hash-Werts von dem Passwort verwendet wird, ist abhängig von der Applikation und hier durch den Aufruf der Funktion generatePasswordHash() gekapselt. Die von dem Tiein zur Verfügung gestellte Klasse ezcAuthenticationDatabaseInfo wird mit der Datenbankverbindung, der Tabelle, in der die Benutzerdaten stehen, und den Spalten, in denen die Daten zu finden sind, konfiguriert. Der ezcDbHandler und seine Verwendung wurden in Kapitel 6, »Datenbankanbindung«, detailliert beschrieben. Durch die explizite Angabe der Spalten ist die Struktur der Tabelle, über die die Abfrage geht, relativ unbedeutend. Allerdings sollten Passwort und Benutzername in der gleichen Tabelle stehen. Der Filter wird anschließend unter Angabe des Objekts mit den Datenbankinformationen erzeugt und dem Authentifizierungsobjekt hinzugefügt. Für Tabellenstrukturen, auf die dieses schwache Kriterium nicht zutrifft, können Sie einen eigenen applikationsspezifischen Filter schreiben. Dazu muss Ihr eigener Filter die Klasse ezcAuthenticationFilter erweitern, auf der die Methode run() mit der Legitimation aufgerufen wird. Diese Methode kann den Besucher dann anhand dieser authentifizieren und abhängig vom ermittelten Resultat den Status zurückgeben. ### Ihr Kommentar Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen. >> Zum Feedback-Formular
<< zurück | <top> | vor >>
Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen? Ihre Meinung
Buchempfehlungen
| PHP 5.3 und MySQL 5.1
| Besser PHP programmieren
| Webshops mit Magento
| Sichere Webanwendungen
| PHP 5.3 und MySQL 5.1 - Videotraining
| Apache 2
| Suchmaschinen- Optimierung für Webentwickler
| Joomla! 1.5
Shopping
Versandkostenfrei bestellen in Deutschland und Österreich Info

Copyright © Galileo Press 2008
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.

[Galileo Computing]
Galileo Press, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de