IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Sécurité Discussion :

Ouvrir page Web avec authentification


Sujet :

Sécurité

  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    1 828
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 828
    Points : 985
    Points
    985
    Par défaut Ouvrir page Web avec authentification
    Bonjour,

    J'ai développé un site web qui nécessite de s'authentifier : si l'utilisateur n'est pas authentifié, il est redirigé vers un formulaire (page "/login") qui contient les champs "user" et "password". Lorsque l'utilisateur clique sur le bouton "OK", les infos du formulaire sont envoyées en HTTP POST vers "/login". Si l'authentification est réussie, le serveur renvoie un cookie de session et redirige l'utilisateur vers la page "/index".
    Ce site web est installé sur plusieurs machines avec différents login/password.

    Ensuite j'ai développé un logiciel qui connait l'ip des sites web et leurs paramètres d'authentification login/password.
    Maintenant je voudrais que lorsque l'utilisateur clique sur un bouton dans mon logiciel, que ça ouvre via le navigateur par défaut le site web sélectionné avec les paramètres d'authentification pour que l'utilisateur arrive directement sur la page "/index" sans avoir à renseigner login et password.

    Comment faire cela ? Est-ce possible ?

    Avec mon logiciel je sais ouvrir une URL avec le navigateur par défaut mais je ne vois pas comment faire pour passer les paramètres d'authentification : pour des raisons de sécurité, je veux pas que le password apparaisse dans l'URL (donc interdiction d'utiliser des URLs du type "/login?login=foo&password=toto").

    Je pensais intégrer la solution suivante dans mon logiciel :
    1- Envoie login/password via un client HTTP intégré à mon logiciel pour récupérer le cookie de session.
    2- Demander au navigateur par défaut d'ouvrir la page "/index" en lui fournissant le cookie session récupéré précédemment.
    => mais je ne vois pas dans la seconde étape comment faire pour passer au navigateur le cookie de session.

    Merci par avance

  2. #2
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 266
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 266
    Points : 15 578
    Points
    15 578
    Par défaut
    si l'utilisateur à les mêmes droits avec la connexion par mot de passe et en passant par l'application, pourquoi voulez vous cacher le mot de passe ?
    de plus si le mot de passe est stocké dans l'application, il est surement possible de désassembler le logiciel pour retrouver le mot de passe.

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    1 828
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 828
    Points : 985
    Points
    985
    Par défaut
    Bonjour,

    Si je fais un lien URL dans mon application vers "/login?login=foo&password=toto", si une personne passe derrière l'utilisateur au moment où il effectue l'action, elle peut visualiser le mot de passe, ce que je veux éviter.

    Pour la méthode de stockage des mots de passe dans l'application, c'est en cours de réflexion : je peux les chiffrer puis les déchiffrer au moment où j'en ai besoin pour l'authentification aux serveurs. L'utilisateur de l'application aura un mot de passe pour se connecter à elle... c'est le principe du logiciel de gestion de mots de passe, non ?

  4. #4
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 266
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 266
    Points : 15 578
    Points
    15 578
    Par défaut
    Citation Envoyé par boboss123 Voir le message
    Si je fais un lien URL dans mon application vers "/login?login=foo&password=toto", si une personne passe derrière l'utilisateur au moment où il effectue l'action, elle peut visualiser le mot de passe, ce que je veux éviter.
    cela pourra peut-être se faire avec une requête POST.
    si le langage de programmation que vous utilisez met en place une zone pour afficher l'url et le résultat des requêtes http, il gère peut-être aussi l'enchainement des cookies. c'est plutôt à voir dans la documentation du langage de programmation que vous utilisez.


    Citation Envoyé par boboss123 Voir le message
    je peux les chiffrer puis les déchiffrer au moment où j'en ai besoin pour l'authentification aux serveurs
    dans ce cas, le code du logiciel contiendra la méthode de déchiffrement donc je pense qu'un utilisateur malveillant pourra aussi y avoir accès.

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    1 828
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 828
    Points : 985
    Points
    985
    Par défaut
    Citation Envoyé par mathieu Voir le message
    cela pourra peut-être se faire avec une requête POST.
    si le langage de programmation que vous utilisez met en place une zone pour afficher l'url et le résultat des requêtes http, il gère peut-être aussi l'enchainement des cookies. c'est plutôt à voir dans la documentation du langage de programmation que vous utilisez.
    Oui je suis capable d'intégrer ça dans mon logiciel (langage Go), mais après le problème c'est d'arriver à ouvrir le navigateur par défaut de l'OS sur l'URL avec le cookie récupéré précédemment... mais je ne sais pas comment faire ça, je n'ai pas l'impression qu'il existe de méthode universelle pour faire ça.


    Citation Envoyé par mathieu Voir le message
    dans ce cas, le code du logiciel contiendra la méthode de déchiffrement donc je pense qu'un utilisateur malveillant pourra aussi y avoir accès.
    Donc tout mot de passe enregistré dans une application desktop est facilement crackable ? Quelle technique est utilisée ?

  6. #6
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 266
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 266
    Points : 15 578
    Points
    15 578
    Par défaut
    je ne comprend pas trop comment vous voulez utiliser tout ça.
    pouvez vous nous expliquer quel sont les utilisateurs de l'application pc et quel est le but de cette application et des sites auxquels ils vont se connecter ?

  7. #7
    Membre éprouvé
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    1 828
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 828
    Points : 985
    Points
    985
    Par défaut
    Les serveurs sont dans équipements réseaux (switches, routeurs, ...).
    Le but est d'avoir un logiciel qui permette de recenser tous les équipements avec leur adresse MAC + login/password afin de pouvoir permettre à l'utilisateur de se connecter facilement aux différents équipements.

    Installation :
    1- l'utilisateur installe et configure l'équipement et lui configure un password unique.
    2- l'utilisateur ajoute dans la base de données du logiciel, l'équipement avec son adresse MAC + login/password.

    Quand l'utilisateur à besoin d'accéder à l'interface de management de l'équipement :
    1- l'utilisateur ouvre le logiciel et renseigne son login/password.
    2- le logiciel affiche la liste des équipements recensés.
    3- l'utilisateur sélectionne l'équipement sur lequel il veut ouvrir la page Web.
    4- le logiciel ouvre le navigateur Web de l'équipement avec le navigateur Web par défaut et s'authentifie en utilisant login/password qu'il a dans sa base de données.

  8. #8
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 266
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 266
    Points : 15 578
    Points
    15 578
    Par défaut
    il y a une possibilité avec un système de jeton qui fonctionne si vous développez vous même les interfaces des équipements. et c'est le cas si j'ai bien compris votre 1er message.

    le principe est que le logiciel commence par envoyer une requête au matériel avec le mot de passe de l'équipement.
    l'équipement répond avec un jeton et ensuite le logiciel ouvre le navigateur à l'adresse de l'équipement avec le jeton en paramètre.
    et là, l'équipement teste le jeton et connecte l'utilisateur dans le navigateur.

    pour éviter le souci de l'intrus qui regarde l'url par dessus l'épaule, vous pouvez par exemple faire un jeton de 200 caractères, il n'y a pas beaucoup de monde capable de mémoriser cela pendant les 2 secondes où il apparaitra dans la barre d'adresse.

Discussions similaires

  1. [AC-2016] ouvrir page web avec des variables
    Par electrosat03 dans le forum IHM
    Réponses: 6
    Dernier message: 21/09/2019, 23h15
  2. [AC-2007] Ouvrir page web avec firefox
    Par Jean-Luc80 dans le forum VBA Access
    Réponses: 2
    Dernier message: 11/06/2019, 18h02
  3. [Debutant] Ouvrir une page web avec authentification
    Par sorry60 dans le forum Langage
    Réponses: 14
    Dernier message: 10/04/2006, 13h07
  4. Ouvrir une page Web avec le navigateur
    Par BB85_TIGRIS dans le forum API standards et tierces
    Réponses: 7
    Dernier message: 17/12/2005, 09h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo