Implementación de un esquema de autenticación para aplicaciones móviles con Tastypie
Me gustaría crear un servicio REST con autenticación para dispositivos móviles. Esta es la primera vez que voy a hacer algo como esto, así que me gustaría recibir algunos consejos sobre cómo implementar las cosas.
Para esto tendría que crear un formulario de registro que permite al usuario registrarse para los servicios. No veo ningún problema aquí Puedo publicar los datos del formulario en el servidor y dejar que devuelva una respuesta.
- Google Endpoints Android con Python Backend
- ¿Por qué este script de shell se llama a sí mismo como script python?
- ¿Cómo puedo usar Python para ejecutar comandos adb?
- AttributeError: el objeto 'module' no tiene ningún atributo 'SignedJwtAssertionCredentials'
- Uso de SL4A (Python) y bluetooth
Si el formulario es válido, se creará un nuevo objeto de usuario y se iniciará de inmediato. También se generará una API KEY utilizando:
from django.contrib.auth.models import User from django.db import models from tastypie.models import create_api_key models.signals.post_save.connect(create_api_key, sender=User)
La solicitud, devolverá un estado HTTP 301 y contendrá un URI de redireccionamiento para recuperar la API KEY.
Después de este paso, la aplicación solicitará otro URI (el URI recibido en la respuesta 301 de la solicitud de registro) para acceder a la API KEY (usaré el esquema ApiKeyAuthentication de Tastypie ). La solicitud contendrá la cookie de sesión recibida en la respuesta de petición anterior, de esta manera se verá la vista y podré al usuario el decorador login_required. La respuesta será simple JSON con nombre de usuario y clave api.
Estos valores se almacenarán en algún lugar de la aplicación.
Cualquier solicitud que se haga ahora agregará el nombre de usuario y la clave de la API almacenados en la aplicación para que otras solicitudes sean más seguras.
¿Se parece esto a un buen esquema a seguir? ¿Hay agujeros en el diseño?
- ¿Cómo puedo empaquetar el intérprete entero de python en un APK de Android?
- Ejecución de script python en el emulador de terminal android
- Problemas con la conexión Bluetooth de Android
- Acción de zoom en android utilizando appium-python-client
- Cómo guardar la URL actual en Android Kivy Application
- Buildozer no pudo ejecutar el último comando
- ¿Cómo desactiva webview una vez adjunto?
- Cómo ejecutar script Monkeyrunner en varios dispositivos al mismo tiempo
- Utilizar Ant para crear un proyecto y ejecutar la aplicación Android de JUnit Test, pero falla la prueba Ant Junit
- Webservice llamada no funciona después de cambiar entre Wifi a 3G o 3G a Wifi