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 :

Transmission d'un login d'un serveur à un autre


Sujet :

Sécurité

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 50
    Points : 43
    Points
    43
    Par défaut Transmission d'un login d'un serveur à un autre
    Bonjour,

    Je me travaille actuellement avec un client qui souhaite une connection directe de son site web corporatif vers le site web que je lui dévelope actuellement.

    Les deux sites nécessitent un login/mdp. Le client ne veux pas que l'utilisateur doive se relloguer lors du changement de site... Le problème principal est que les deux sites sont sur des serveurs différents (et ça n'est pas modifiable malheureusement)

    Est ce que vous auriez une idée de la manière la plus sécurisée de passer d'un serveur à l'autre les informations de login?

    (ou de me donner des arguments pour le convaincre de ne pas utiliser cette solution )

    Merci d'avance

  2. #2
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    Ca s'appelle du SSO ce que tu cherches à faire. Question : pour le moment, l'authentification se fait par formulaire de login ou c'est de l'authentification Basic HTTP ? Dans le premier cas, tu peux mettre en place un outil genre CAS. Pour le second cas, désolé mais y a pas de solution sauf à installer un truc sur le poste client.

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    229
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mars 2008
    Messages : 229
    Points : 207
    Points
    207
    Par défaut
    Bonjour,

    Je souhaite faire la même chose, c'est même marrant de voir que je me heurte au même problème....

    Merci pour ta réponse mais pourrais-tu développer ce qu'est "CAS" ?
    Quand j'étais petit, je ne finissais jamais mes phrases. Maintenant je

  4. #4
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    [attention : image cliquable...]

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  5. #5
    Membre actif
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    229
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mars 2008
    Messages : 229
    Points : 207
    Points
    207
    Par défaut
    Merci pour ton intervention mais j'avais déjà cherché sur google. Si je suis ici c'est pour avoir des précisions et une explication de certaines choses.

    Et puis après avoir beaucoup réfléchit à mon problème, je ne pense pas qu'installer un serveur SSO soit le plus pratique.

    Je demande simplement s'il est possible de récupérer le login et le mdp en php et de la communiquer directement au navigateur / au serveur pour que le pop-up qui demande login et mdp ne s'affiche pas. Je pensais cela possible puisque les information de log sont les même pour les deux sites.

    Merci.
    Quand j'étais petit, je ne finissais jamais mes phrases. Maintenant je

  6. #6
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    2 possibilités (ou presque) :
    • Si tu fais une authentification basique HTTP, pas de solution car le navigateur ne transmet le login/mot de passe qu'au même serveur et chemin (ou sous-chemin) qui lui a demandé la première fois.
    • Si tu fais une authentification par formulaire HTML, c'est que tu passes par les sessions HTTP. Dans ce cas, le seul moyen de t'en sortir c'est que les sites soient sur le même domaine ou sous-domaine. Dans ce cas, il faut configurer PHP pour qu'il envoie ses cookies de session sur ce domaine commun et dans ce cas, le cookie de session sera transmis d'un site à un autre. Reste qu'il faut que les 2 sites partagent la même session, et c'est pas forcément gagné. Faut essayer, je ne sais pas si c'est possible. Sinon, toujours sous la condition du domaine commun, tu stockes dans un cookie maison un identifiant qui sera transmis par le navigateur d'un site à un autre, charge au site qui capte ce cookie pour la première de le comprendre et de créer la session qui va bien.

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  7. #7
    Rédacteur
    Avatar de marcha
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 571
    Points : 2 351
    Points
    2 351
    Par défaut
    Salut,

    Je suppose que tu passe d'un site à l'autre par un lien.

    Imaginons que tu es logué sur le site A et que tu as une session ouverte
    sur celui-ci. Sur la page du site A il y a un lien qui devrait t'envoyer sur
    le site B, au lieu de mettre l'url du site B, tu met un lien sur une page crosslogin.php sur le site A.

    Dans cette page tu envoie une requête au site B (par exemple avec CURL)
    sur une page get_id.php du site B. Le rôle de la page est de te renvoyer un
    identifiant unique que tu utilise ensuite comme paramètre pour une redirection.

    Page get_id.php: (sur serveur B)

    1) n'autorise que les requêtes de l'IP du serveur A
    2) reçoit le nom de l'utilisateur en paramètre (event. aussi le md5 du password)
    3) génère un identifiant unique et le sauve dans la tables users
    4) renvoie cet identifiant

    crosslogin.php: (sur serveur A)

    1) obtient un identifiant unique de la page get_id.php via une requête entre serveurs
    2) renvoie un header("Location: http://siteB/directlogin.php?id=identifiant

    Page directlogin.php (sur serveur B)

    1) vérifie quelle user correspond à l'identifiant
    2) ouvre une session pour l'utilisateur
    3) détruit l'identifiant unique de la table user
    4) redirige par header location sur la page voulue du site B
    Si ton code fait plus d'une ligne, c'est que tu as mal choisi ton langage !

  8. #8
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    Bref, un SSO maison

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  9. #9
    Membre actif
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    229
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mars 2008
    Messages : 229
    Points : 207
    Points
    207
    Par défaut
    Merci pour votre aide mais j'ai résolu mon problème d'une manière vraiment très simple, je ne n'aurais pas pu mettre en place ce que tu m'as décrit Marcha puisque j'ai acces au serveur B juste pour récupérer des stats et je ne sais pas si j'aurais pu y déposer mes scripts (je dois réaliser ce travail dans le cadre d'un stage).

    Pour me logger automatiquement, j'ai seulement ajouté le loggin et le mdp dans l'url :

    http://login:mdp@adressedusite.com

    Cela fonctionne parfaitement.

    Merci pour votre aide, ça fait plaisir de voir des gens qui s'entre-aide.
    Quand j'étais petit, je ne finissais jamais mes phrases. Maintenant je

  10. #10
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    Regarde ce sujet, il semble qu'il y ait une limitation avec IE sur cette syntaxe.

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  11. #11
    Membre actif
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    229
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mars 2008
    Messages : 229
    Points : 207
    Points
    207
    Par défaut
    Merci de t'en soucier, mais je le savais déjà, mais comme il s'agit de développer un outil interne qui ne sera utilisé qu'au sein de l'entreprise dans laquelle je suis, cela ne pose pas problème, ils utilisent ou utiliseront tous Firefox.

    Merci.
    Quand j'étais petit, je ne finissais jamais mes phrases. Maintenant je

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] [aide] système de login/protection client/serveur
    Par anthoo12 dans le forum VB.NET
    Réponses: 0
    Dernier message: 25/12/2012, 18h35
  2. Transfert d'utilisateurs (logins) d'un serveur à un autre
    Par GodGives dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 03/05/2010, 17h23
  3. login RCP et serveur
    Par headensen dans le forum JDBC
    Réponses: 0
    Dernier message: 12/01/2009, 14h46
  4. Migration sybase V11 - Récupération Login suite à chgt serveur.
    Par Labienus dans le forum Adaptive Server Enterprise
    Réponses: 4
    Dernier message: 20/03/2008, 16h29
  5. [ PostgreSQL ] Pbm migration base d'un serveur à un autre
    Par TiSteph dans le forum Administration
    Réponses: 3
    Dernier message: 06/03/2003, 18h04

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