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

REST Discussion :

[Authentification] API REstful PHP


Sujet :

REST

  1. #1
    Membre régulier Avatar de yoshï
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 206
    Points : 88
    Points
    88
    Par défaut [Authentification] API REstful PHP
    Bonjour,
    d'avance pardon si ce post n'est pas à sa place mais je ne savais pas vraiment où le mettre.
    J'ai réalisé une API en php qui repose sur l'architecture REST.Chaque ressource de mon API est accessible via son URL.On peut appliquer les 4 opérations HTTP (GET,POST,PUT,DELETE) à mes ressources.Ca fonctionne très bien, mais j'ai maintenant un gros problème.
    Je veux gérer les droits sur les ressources.Car pour l'instant n'importe qui avec l'URL peut détruire ou modifier une ressource.

    Pour ce qui concerne l'authentification, j'aimerai gérer deux cas:
    -> un développeur crée un site client qui va utiliser les 4 opérations de mon api.Il va fournir lors de la requête (en utilisant le header par exemple), les informations qui vont lui permettre de s'authentifier
    -> un utilisateur fait un GET depuis son navigateur (en tapant directement l'URL dans son browser) une boite de dialogue du type htaccess apparaît et vérifie son identité.

    j'ai mis un htaccess mais comment concilier ça avec une authentifiaction php?
    Je ne connais pas tres bien les header.On doit pouvoir gérer ça avec, non?
    En gros j'aimerai récupérer les informations d'authentification de 2 manières différentes (excusez le nb)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    //si les variables de connexions existent
    if (isset($_SERVER['PHP_AUTH_USER']) && isset($_SERVER['PHP_AUTH_PW'])){
    //on teste si elles sont fausses
    //si elles sont bonnes (success OK)
    //si elles sont fausses (message d'erreur)
    
    }else{
    
        //on envoie le header pour afficher la boite d'authentification
        header( 'WWW-Authenticate: Basic realm="...."' );
        header( 'HTTP/1.0 401 Unauthorized' );
        echo 'Authorization Required.';
        exit;
    }
    Comment puis je affecter les variables ($_SERVER['PHP_AUTH_USER']) && ($_SERVER['PHP_AUTH_PW']) dans le cas d'une authentification php pour qu'il n'affiche pas la boite de dialogue.

    Je ne sais pas si je suis clair
    Merci d'avance pour votre aide

  2. #2
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Citation Envoyé par yoshï Voir le message
    On peut appliquer les 4 opérations HTTP (GET,POST,PUT,DELETE) à mes ressources.
    Attention, ces quatre méthodes ne sont pas les seules méthodes définies par le protocole HTTP (cf. la RFC) ; toutefois, ce sont en effet les seules utilisées dans le cas de REST

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

Discussions similaires

  1. API REST et authentification du client
    Par fanfouer dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 22/05/2012, 16h19
  2. Cherche à utiliser l'API de PHP
    Par loupin dans le forum Langage
    Réponses: 6
    Dernier message: 10/08/2006, 18h56
  3. [MySQL] Recherche script d'authentification MsSQL en PHP
    Par dodik dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 21/02/2006, 09h56

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