Galileo Computing < openbook > Galileo Computing - Professionelle Bücher. Auch für Einsteiger.
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?

Spacer
<< zurück
eZ Components von Tobias Schlitt, Kore Nordmann
Das Entwickler-Handbuch
Buch: eZ Components

eZ Components
geb., mit CD
454 S., 39,90 Euro
Galileo Computing
ISBN 978-3-8362-1073-7
Pfeil 11 Authentifizierung
Pfeil 11.1 Die Authentication-Komponente
Pfeil 11.2 Einbindung in die Applikation
Pfeil 11.2.1 Eingabeformulare
Pfeil 11.2.2 Formularverarbeitung anpassen
Pfeil 11.2.3 Authentifizierung des Besuchers
Pfeil 11.2.4 Gruppierung von Filtern
Pfeil 11.2.5 OpenID
Pfeil 11.3 Benutzer in der Datenbank
Pfeil 11.4 Fazit


Galileo Computing - Zum Seitenanfang

11.3 Benutzer in der Datenbank topZur vorigen Überschrift

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
 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 Buchempfehlungen
Zum Katalog: PHP 5.3 und MySQL 5.1






 PHP 5.3 und
 MySQL 5.1


Zum Katalog: Besser PHP programmieren






 Besser PHP
 programmieren


Zum Katalog: Webshops mit Magento






 Webshops mit
 Magento


Zum Katalog: Sichere Webanwendungen






 Sichere
 Webanwendungen


Zum Katalog: PHP 5.3 und MySQL 5.1 - Videotraining






 PHP 5.3 und
 MySQL 5.1 -
 Videotraining


Zum Katalog: Apache 2






 Apache 2


Zum Katalog: Suchmaschinen-Optimierung für Webentwickler






 Suchmaschinen-
 Optimierung
 für Webentwickler


Zum Katalog: Joomla! 1.5






 Joomla! 1.5


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo




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