Question

Pourquoi les gens n'utilisent-ils pas CFLOGIN? Je me souviens d’avoir eu un problème avec CF7 il ya quelques mois, mais je ne me souvenais pas de son problème.

Était-ce utile?

La solution

J'utilise cflogin tout le temps et cela fonctionne très bien. Il peut être un peu difficile de travailler comme vous le souhaitez, mais les avantages sont énormes. Pouvoir ajuster votre application avec les rôles d’utilisateur prend en charge la majeure partie de la personnalisation basée sur mes droits. Il y avait des problèmes avec la gestion de session qui rendaient le travail difficile. Activer les sessions j2ee semble faire disparaître la plupart de ces problèmes.

Certains des frameworks populaires ne sont pas compatibles avec cflogin, c'est peut-être une des raisons pour lesquelles vous n'en voyez pas beaucoup. Ils ont tendance à adopter leur propre approche en matière de sécurisation des fonctionnalités des applications.

Je pense que beaucoup de gens sont frustrés parce que c'est un peu bizarre et ils abandonnent. D'autres ont des besoins de sécurité plus complexes que cflogin ne répond pas complètement. Ils finissent donc par écrire leur propre système. Plus précisément, il n’existe pas de moyen simple de gérer les droits par contenu.

Autres conseils

Le seul problème que j'ai rencontré concerne les rôles dans CF8. Il est brillamment mis en œuvre et un peu cruel, cela ne fonctionne pas comme il se doit. Peut-être en CF9.

Dans tous les cas, créer votre propre système basé sur les rôles (attribuer à l'utilisateur une variable de session avec une liste de niveaux d'accès séparés par des virgules sur lesquels le système peut vérifier) ??n'est pas trop difficile à faire et je m'en suis occupé.

La seule chose intéressante à propos de cfLogin qui mérite probablement encore d'être utilisée est son lien avec le moniteur du serveur pour voir le nombre de personnes connectées, etc.

Le point ci-dessus concernant l'utilisation de la jsession est vrai, cela vaut la peine d'être fait dans toutes les applications cf. Une des meilleures choses que je me suis traînée à faire pour travailler comme je le voulais.

CFLogin n'est pas utilisé pour 3 raisons.

Tout d'abord , c'est un peu délicat, un peu étrange, et combien de personnes penseraient ne fonctionne pas. Vous mettez du code ici, et si un utilisateur n'est pas connecté, il l'exécute ... c'est bizarre, vous savez? Cela n’a pas aidé non plus qu’il y ait eu quelques bugs au début.

Deuxième , bien qu'il comporte les fonctionnalités de sécurité requises de base pour une application Web, il ne va pas plus loin. Vous ne pouvez pas vraiment l'étendre facilement. Qui peut dire que c'est comme tout le monde le veut?

Troisième , et de manière plus réaliste, c'est parce que les gens ont déjà résolu ce problème. Le problème de la sécurisation d’une application, de l’authentification et de l’autorisation a été suffisamment réfléchi dans la communauté et la plupart des gens savent comment le faire. CFLogin réinvente la porte. C'est trop peu, trop tard.

Maintenant, cela ne veut pas dire que personne ne l’utilise. Personnellement, je l'ai utilisé à quelques reprises avec un succès de base, mais aucune raison de sonner de cloche. Pour la plupart de mes applications, il est plus logique de ne pas utiliser CFLogin. Les domaines problématiques sont les suivants, et CFLogin ne les résout pas toujours de la manière la plus intelligente.

N'oubliez pas que CFLOGIN a un problème avec l'authentification HTTP de base, car il peut continuer à envoyer son ID utilisateur et son mot de passe même après avoir appelé CFLOGOUT.

Je sais que cela a poussé certains utilisateurs expérimentés à s'en éloigner.

Voici un extrait de LiveDocs

  

Attention: Si vous utilisez un serveur Web   authentification ou toute forme   authentification utilisant un HTTP de base   En-tête d'autorisation, le navigateur   continue d'envoyer l'authentification   informations à votre application jusqu'à   l'utilisateur ferme le navigateur, ou dans   Dans certains cas, toutes les fenêtres de navigateur sont ouvertes.   En conséquence, après la déconnexion de l'utilisateur   et votre application utilise le cflogout   tag, jusqu'à la fermeture du navigateur, le   Structure de cflogin dans la balise cflogin   contiendra l'utilisateur déconnecté   ID utilisateur et mot de passe. Si un utilisateur se connecte   out et ne ferme pas le navigateur,   un autre utilisateur peut accéder aux pages avec   le login du premier utilisateur.

Dans mon cas (supposons aussi pour d’autres personnes), la raison principale est de changer de plate-forme, disons PHP. Je veux dire que déjà possède déjà des connaissances et des habitudes en matière de développement de LCA et que je commence à les utiliser dans la FK.

Je sais comment le rendre pratique pour les utilisateurs, flexible pour les développeurs et sécurisé, et n'a pas vraiment besoin de passer à cflogin.

Parfois, la même chose se produit avec d'autres éléments, par exemple, dans la plupart des cas, je préfère implémenter la validation côté client en utilisant son propre JS au lieu d'utiliser cfform / cfinput.

Parce qu'il (encore!) a de sérieux bugs, comme celui-ci:

http: // www.raymondcamden.com/index.cfm/2009/8/7/Watch-out-for-this-CFLOGIN-Bug

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top