2010-01-18 4 views
0

J'ai un scénario difficile ici. J'ai une application asp.net 1.1 A existante qui utilise une application Java tierce pour l'authentification de connexion. Après l'authentification, l'application tierce basée sur l'URL chiffrée redirigera vers mon application A. L'application A décryptera l'URL et effectuera la connexion de session pour l'utilisateur authentifié.Problèmes de connexion unique ASP.NET

Je développe une nouvelle application B (asp.net 2.0) qui fournissent une page pour l'utilisateur de choisir entre l'application A ou B.

J'ai pensé à stocker l'URL cryptée et à la fois l'application A & B basé sur la chaîne de requête cryptée pour décrypter et authentifier l'utilisateur de manière appropriée. Cependant, je crois que cette approche pose un risque de sécurité.

Y a-t-il de meilleures solutions pour implémenter cela?

Répondre

1

Où sont stockées vos données utilisateur? Si c'est dans une table de base de données, la manière la plus simple de maintenir un état connecté sur plusieurs applications Web avec une table DB utilisateur partagée serait d'utiliser quelque chose comme un jeton de connexion basé sur GUID stocké sur l'enregistrement utilisateur dans la base de données. Chaque fois que l'utilisateur se connecte à une application, un nouveau jeton GUID est généré. Vous pouvez ensuite passer cela entre les applications. Si l'application est transmise, elle se connecte automatiquement à l'utilisateur concerné. Tant que vous utilisez https c'est assez sécurisé. et vous ne passez pas d'informations de connexion. Même si quelqu'un devait trouver le GUID d'une manière ou d'une autre, cela ne serait bon que pour une seule session.

+0

En plus de stocker dans la base de données, puis-je utiliser l'authentification par formulaire Activer Across Application entre asp.net 1.1 et 2.0? – youcanlearnanything