Question

J'ai une situation intéressante, et Google ne semble pas avoir d'informations sur la question.

Je développe un logiciel basé sur le Web écrit en PHP. La plupart de nos clients ont une sorte de configuration du serveur CAS pour l'authentification, et nous suffit de pointer notre site à leur serveur d'authentification. Nous avons un nouveau client qui ne dispose pas d'un serveur CAS, alors je leur ai dit que nous pouvions utiliser LDAP, de préférence avec SSL (LDAPS). Je ne sais pas si elles ont la capacité de faire LDAPS, mais le vrai problème est que (pour le moment) ils ont besoin de la connexion LDAP pour être sur le même réseau, donc, je aurais besoin de se connecter à leur premier VPN, et puis interroger leur serveur LDAP.

Maintenant, je suis sûr que je pourrais faire la connexion VPN sur notre serveur, et ont tout le trafic dirigé à travers, mais qui créeraient un point de défaillance unique pour tous nos clients et serait totalement hors de notre contrôle ; donc ce n'est pas vraiment une option.

Je pourrais probablement trouver un moyen d'établir une connexion, authentifier l'utilisateur, puis relâchez la connexion; mais cela semble être un mauvais choix qui prendrait beaucoup de temps.

Alors, quelqu'un sait si je peux (a) ouvrir une connexion VPN dans uniquement PHP et ensuite utiliser cette connexion pour se connecter au serveur LDAP ou (2) le code en quelque sorte PHP / configurer mon serveur de sorte que seules les requêtes au serveur LDAP utilisent le VPN et toutes les autres requêtes utilisent la connexion Internet par défaut?

Je suis vraiment un peu perdu à une bonne façon de faire, toute aide serait grandement appréciée. Merci beaucoup!

Était-ce utile?

La solution

Y at-il un serveur SSH à la fin du client? Si oui, vous pourriez peut-être prendre des dispositions avec le client pour tunnel la connexion via un serveur SSH à leur extrémité. Vous pouvez alors demander à votre demande d'ouvrir le tunnel SSH juste avant qu'il authentifie, et fermez-le quand il est fait, semblable à VPN.

Vous pourriez le faire avec VPN en fonction du système d'exploitation sous-jacent. De toute façon ne va pas être jolie et va manquer de performance. En outre de toute façon, le tunnel va être disponible pour toutes les applications sur le serveur à utiliser alors qu'il est ouvert.

Si ce moi, j'écrirait un webservice faire l'authentification, mis en place un accord avec le client d'accueillir pour moi et relayer toutes les tentatives d'authentification au service Web. Vous idéalement configurer cela pour utiliser HTTPS ainsi.

En fonction du réseau mis en place entre votre application et votre client, et quel contrôle vous avez tous les deux sur vos réseaux, votre client peut être en mesure d'acheminer les demandes d'un de vos adresses IP par le biais de leur réseau - nous l'avons fait une fois avec une troisième fête. Nous avions besoin d'un accès à l'un de leurs services sur un sous-réseau privé, et parce que nous étions tous les deux avec le même fournisseur d'accès Internet nous avons conclu un accord que le FSI configurer et gérer le routage de sorte que nous avons effectivement un tunnel complètement privé.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top