2010-03-26 10 views
0

Je suis nouveau à Symfony. Est-ce que ma compréhension est correcte que la classe User est réellement pour contrôler les sessions? Mais y a-t-il une connexion et une création de compte intégrées? Je ne le trouve pas. Mais s'il y a un générateur de backend d'administrateur, comment peut-il fonctionner sans login utilisateur?Comptes d'utilisateurs dans Symfony?

Répondre

3

Le fichier myUser.class.php est le contrôleur de session/stockage, oui. Vous pouvez créer votre propre module de sécurité si vous le souhaitez, mais beaucoup utilisent les plugins mentionnés dans nselikoff's answer. Ils ne sont pas parfaits mais ils font un travail décent. Quel que soit l'ORM utilisé, vous devriez commencer avec l'un de ces plugins, et les étendre/les améliorer si vous en avez besoin. Vos modules de générateur d'administration ne sont pas sécurisés par défaut, non - c'est à vous de mettre en place une couche de sécurité. En outre, ne pensez pas que les modules générés par l'administrateur sont exclusivement destinés à un but backend/backoffice, car il peut y avoir une raison pour qu'une application frontend en demande un. Il est certain qu'un système que vous utilisez en interne dans votre entreprise ou chez vous sur un serveur web local n'a pas besoin d'une couche de sécurité pour fonctionner. La modification du fichier security.yml pour sécuriser une application, un module ou une action nécessite que vous spécifiiez la page de connexion dans le settings.yml de votre application, mais les plug-ins de sécurité vous aideront à la configurer.

4

Vous ne savez pas quelle version de Symfony vous utilisez, mais la connexion et la création de compte sont généralement intégrées dans une application en utilisant le sfGuardPlugin (pour Propel) ou le sfDoctrineGuardPlugin (pour Doctrine). Pour la version 1.2 de Symfony, voir Day 13 of the Jobeet tutorial pour commencer.

+0

Si je peux ajouter is_secure: à security.yml il faudra une connexion. Mais le système de connexion actuel doit encore être créé? – gruner

+1

Il y a un formulaire de connexion squelette avec tous les éléments requis qui sont prêts. Tout ce dont vous avez besoin est de personnaliser n'importe quel HTML/CSS en fonction de vos besoins. Suivez simplement les instructions dans le fichier README pour le plugin. – Tom

1

En dehors de ce que d'autres ont dit, je trouve très utile le code source de symfonians, qui résout tous ces problèmes: http://symfonians.org/