Page 1 sur 1

Créer et sécurisé une API en PHP

Posté : 22 déc. 2022, 18:32
par pleiode
Hello

J'ai essayé de créer une API en PHP, je ne sais pas si c'est bien, mais ça fonctionne. Je voudrais sécuriser l'API avec une clé.

( $lat et $long renvoient les valeurs des paramètres &lat et &long de l'URL)
include 'src/callapi.php';
include 'src/variable.php';

$sortie = array('lat' => $lat, 'long' => $long, 'goodtosee' => $goodtosee);

echo json_encode($sortie);

J'ai essayé ceci pour sécuriser l'accès :
$key = "blablabla";

if ($_GET["key"] == $key) {
    $sortie = array('lat' => $lat, 'long' => $long, 'goodtosee' => $goodtosee);
    echo json_encode($sortie);
} else {
    echo "key not valid";
}
Si le paramètre clé dans l'url est égal à "blablabla" alors il affiche les données sinon il affiche "key not valid".

Est-ce que cela sécurise vraiment mon API ? Comment puis-je limiter le nombre d'appels par mois ?

Merci d'avance !

Re: Créer et sécurisé une API en PHP

Posté : 22 déc. 2022, 19:58
par or 1
une api est destinée au public. pour pouvoir l'utiliser, il faudra connaitre la valeur de $key, donc que vous la rendiez publique, donc cela ne sécurise rien.

avoir une clé par utilisateur, cela permet de compter le nombre d'appels par utilisateur, de bloquer un utilisateur.

Re: Créer et sécurisé une API en PHP

Posté : 22 déc. 2022, 20:01
par pleiode
Oui j'ai mis cela dans une variable pour le test mais je compte la donner à un client

Donc je peux, avec la clef, compter le nombres d'appels effectuer ?

Re: Créer et sécurisé une API en PHP

Posté : 22 déc. 2022, 20:03
par pleiode
une api est destinée au public. pour pouvoir l'utiliser, il faudra connaitre la valeur de $key, donc que vous la rendiez publique, donc cela ne sécurise rien.

avoir une clé par utilisateur, cela permet de compter le nombre d'appels par utilisateur, de bloquer un utilisateur.

Oui j'ai mis cela dans une variable pour le test mais je compte la donner à un client

Donc je peux, avec la clef, compter le nombres d'appels effectuer ?

Re: Créer et sécurisé une API en PHP

Posté : 22 déc. 2022, 20:19
par or 1
une url compliquée, ça aboutit au même résultat d'une url simple avec un paramètre.

avec ou sans clé, s'il n'y a qu'un seul client qui a accès à cette url, il est possible d'enregistrer les accès à la page.