Précédent   Forum des professionnels en informatique > Général Développement > Conception > Architecture > REST
REST Forum d'entraide sur les architectures REST (Representational State Transfer), les concepts, problématiques et solutions technologiques mettant en oeuvre les principes REST
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 15/07/2008, 18h04   #1
Membre du Club
 
Avatar de yoshï
 
Inscription : mai 2003
Messages : 158
Détails du profil
Informations forums :
Inscription : mai 2003
Messages : 158
Points : 41
Points : 41
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 :
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
yoshï est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/07/2008, 09h33   #2
Rédacteur
 
Avatar de Yogui
 
Homme Guillaume Rossolini
Directeur technique
Inscription : février 2004
Messages : 13 720
Détails du profil
Informations personnelles :
Nom : Homme Guillaume Rossolini
Localisation : France

Informations professionnelles :
Activité : Directeur technique

Informations forums :
Inscription : février 2004
Messages : 13 720
Points : 17 355
Points : 17 355
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
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework)
Ressources PHP - Ressources Zend Framework
Yogui est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h24.


 
 
 
 
Partenaires

Hébergement Web