2010-03-01 5 views
3

Mon prototype d'interface utilisateur nécessite que j'indique les informations de connexion des sites en permanence. Soit je devrais montrer le nom d'utilisateur habituel et le champ de texte de mot de passe ou "vous êtes identifié comme". Le dernier bit ne doit pas être sécurisé, car c'est seulement l'information à l'utilisateur, rien que j'utiliserai côté serveur. Mais la première partie devrait envoyer sécurisé au serveur.SSL Connexion dans iFrame

Il semblerait que je devrais utiliser https pour toutes les pages sur le site alors. Je voudrais seulement utiliser ssl pour les choses qui doivent être sécurisées.

L'une des façons consiste à mettre les informations de connexion dans un https://../login.aspx et de les afficher sur ma page principale en tant que IFrame.

Un inconvénient que je peux voir est que l'utilisateur ne saura pas que https est utilisé, à moins qu'ils ne lisent IFrame src dans le code source.

Qu'en pensez-vous?

+0

Quelle est l'objection à tout faire en toute sécurité? Vous allez devoir faire la négociation SSL de toute façon. –

+1

Par exemple, la mise en cache serait activée pour le reste du site, qui n'utilise pas ssl – Karsten

Répondre

0

Utilisez-vous les commandes de connexion asp.net intégrées ou utilisez-vous simplement deux contrôles de zone de texte?

Vous pouvez utiliser votre propre balise de formulaire (pas runat = "server") avec l'attribut action défini sur "https: // ..." et utilisez simplement deux balises d'entrée html et un bouton pour vous connecter.

Encore une fois cela ne montrerait pas à l'utilisateur que ses informations d'identification sont sécurisées lors de la connexion.

En raison de certaines attaques SSL récemment découvertes, il est toujours préférable de placer également le formulaire d'ouverture de session sur une page https: //. Sinon, un piraté peut intercepter le flux http et modifier l'action de votre formulaire de "https: // ..." à "http: // ...", puis renifler les informations d'identification.

0

Une autre option serait de tirer parti du PostBackUrl property du contrôle Button. Vous devrez créer votre propre identifiant LayoutTemplate pour en profiter. Vous pourrez alors ajouter le schéma sécurisé à l'URL de la page en cours et définir la propriété PostBackUrl du bouton d'envoi. Cela aurait des problèmes similaires à votre solution iFrame (l'utilisateur ne verrait pas les symboles de cadenas), mais vous auriez l'avantage de ne pas utiliser les iFrames.

Une autre question en utilisant iFrame est les affects qu'ils peuvent avoir sur la page:

  • Ils sont une demande distincte, mais peut provoquer un bloc sur la mise à feu de l'événement PageLoad JavaScript.
  • Le formulaire de connexion ne rentrait que dans le cadre iFrame, vous devez donc actualiser la page parent lorsque l'utilisateur est connecté avec succès pour le supprimer.
    • En plus de cela, les erreurs seraient retournées dans le iFrame, probablement pas vous laisser beaucoup d'espace pour l'affichage de la forme ainsi, etc.
0

Vous avez frappé les problèmes majeurs. Vous voulez que le login, qui doit être sur chaque page, utilise SSL, mais vous ne voulez pas que la page entière soit SSL.

Il s'agit plus d'une décision commerciale à ce stade qu'autre chose. Préféreriez-vous que vos clients se sentent plus en sécurité lorsqu'ils visitent votre site, ou voulez-vous que les informations de connexion soient présentes sur chaque écran?

Si vous avez besoin des deux, vous devrez peut-être également envisager de rendre votre site SSL complet.

Questions connexes