2012-02-19 8 views
6

Estoy usando Devise en una aplicación de Rails y quiero exponer algunos de los datos del modelo a través de una API, pero el acceso a la API debe restringirse al igual que la aplicación.Acceso a API con autenticación de dispositivo: ¿mejores prácticas?

$ curl http://myapp.com/api/v1/sales/7.json 
{"error":"You need to sign in or sign up before continuing."} 

Obviamente.

¿Existe una mejor práctica para acceder a la API en situaciones como esta? Me gustaría preferir para autenticar + tomar los datos en un solo paso, pero eso es solo para facilitar el trabajo del cliente. Estarán conectando el lado del cliente de datos con JQuery.

¡Gracias por cualquier información!

  • Vanessa

Respuesta

0

Mi sugerencia sería para generar una API "clave" (valor hash) y han pasado que con la solicitud JSON. De esta forma puede autenticarse y rastrear el uso de API. Muchas API usan "claves" para rastrear y autenticar el uso. Los mapas de Google, por ejemplo, usan solo una clave API. Donde PayPal utiliza un nombre de usuario, contraseña y clave. Hay varias formas de hacerlo.

Intentaré crear una tabla de uno a muchos que pertenezca al usuario, solo para las claves. De esta forma, un usuario puede generar más de una clave hash para diferentes propósitos. (Uno para los informes, uno para la copia de seguridad, y uno para los elegantes gráficos circulares que extraen automágicamente de Powerpoint).

Cuestiones relacionadas