Bonjour,

Je recherche un peu d'aide car je me pose quelques questions.

Voilà, prenons un exemple :

  • Je possède un serveur A, qui héberge mon site web avec sa page d'accueil
  • Je possède un serveur B, qui échange avec une base de données

Je souhaiterais que le serveur A envoie une requête au serveur B dans la but de récupérer du contenu (ex : une liste d'utilisateurs) et de l'afficher sur la page d'accueil.

Actuellement, mon serveur A envoie une requête au serveur B via cURL, le serveur B interroge la base de données et renvoie les données sous la forme d'un JSON.

Jusque là, tout fonctionne, ok.

Mais le système n'est pas du tout sécurisé ?!

En effet, si je reprends mon exmple, il me suffit d'appeler la bonne URL avec les bons paramètres pour lister les utilisateurs, et ce depuis n'importe quel serveur :

$data = array(
    'action' => 'list_users'
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,"https://monserveurB.test/users.php");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$server_output = curl_exec($ch);
curl_close ($ch);
$users = json_decode($server_output, true);

Avez vous des pistes pour que je sécurise tout cela, et que seule mon application A puisse accéder au serveur B ?

Je précise que je travaille en PHP procédural, sans framework.

Merci par avance pour votre aide !

1 réponse


Salut,
Bloquer une IP differente de ton serveur A ( $_SERVER['REMOTE_ADR'] )

@pluche

Pierre