2010-07-21 6 views
3

Je suis en train d'écrire le backend pour un service qui a 3 clients: navigateur, natif android natif and iphone. J'ai un peu de mal à trouver un système d'authentification car je ne sais pas ce qui peut vraiment être fait sur les clients. J'utilise django + twisted pour le backend. Fondamentalement, je vais écrire RestfulAPIs à ouvrir pour les clients sur les deux téléphones à appeler.Ecriture du système d'authentification

Maintenant, la vraie question est, comment devrais-je trouver un système d'authentification?

J'ai pensé à utiliser des sessionids, cela fonctionne très bien avec le navigateur et je peux utiliser l'application intégrée de django pour cela.

Cependant, je ne sais pas si c'est possible pour l'iphone et l'androïde d'obtenir un ID de session unique sur le téléphone. Dois-je écrire un appel d'API pour distribuer des identifiants de session uniques?

Si c'est le cas, est-il possible pour moi d'utiliser encore le système d'authentification de django puisque beaucoup de choses ici sont personnalisées? (Je n'utilise même pas de rdbms - je m'en tiens à mongodb, donc j'étais sur le point d'abandonner l'application d'authentification de django ftm). J'ai regardé l'API de foursquare et leur méthode d'authentification de base nécessite que vous passiez utilisateur: mot de passe dans chaque entête de requête http. Cela ajoute 1 authentification supplémentaire à chaque appel, ce qui peut sembler excessif.

Veuillez fournir tout type de conseil que vous pourriez donner.

Répondre

0

Vous pouvez examiner les demandes RESTful signées numériquement, comme ce qui est fait avec Amazon S3.