2010-05-21 6 views
1

En Flash, j'ai la possibilité d'enregistrer certaines informations sur le serveur. Maintenant, le problème est que l'utilisateur doit être authentifié en tant qu'administrateur pour pouvoir le faire.Flash, paramètres, sécurité

Je ne peux pas utiliser les sessions, car si vous travaillez plus de 20 minutes dans l'application Flash, la session est terminée.

La façon dont je le vois, j'ai 2 possibilités: 1. passer un paramètre (bIsAdmin) à Flash à partir du site Web. 2. Lancez une requête http-get, pour obtenir cette valeur (bIsAdmin) à partir d'un gestionnaire ashx au démarrage de l'application, lorsque la session n'a pas encore expiré. A mon avis, les deux possibilités ne sont pas vraiment sécurisées ... Alors, quel est le plus sûr, 1 ou 2? Ou est-ce que quelqu'un a une meilleure idée? À mon avis, 1 est plus sûr, car avec 2, vous pouvez simplement basculer un paquet entre les deux, et bang, vous êtes administrateur, avec la permission d'enregistrer (ou écraser, = supprimer) n'importe quoi.

Répondre

1

Les deux ne sont pas sécurisés. En analysant le code Flash, tout utilisateur peut découvrir la présence du paramètre blsAdmin et essayer de générer la demande pour obtenir les privilèges d'administrateur. Rappelez-vous que les applications Flash peuvent être décompilées et analysées par n'importe qui utilisant des outils tels que Flasm ou SWFDump.

Ma solution? Utilisez des sessions pour stocker les privilèges d'administrateur. Si la session expire dans 20 minutes, générez une requête toutes les 10 minutes sur une page fictive du serveur pour maintenir la session active, mais c'est également une mauvaise pratique. Si vous êtes un utilisateur administrateur, vous n'avez pas besoin de laisser votre application sans surveillance à tout moment sans vous déconnecter lorsque vous avez fini de l'utiliser.

Ta Ta,

+0

Vous avez raison, mais c'est le problème de l'administrateur. J'utilise donc setInterval + dummy.aspx/ashx –

Questions connexes