6

Estoy empezando a planear una aplicación web y Backbone.js será perfecto para el lado del cliente. He estado planeando usar un nodo para el back-end, pero esto está abierto por el momento.¿Cómo conecto con seguridad una aplicación Backbone.js a una base de datos?

Necesito una forma de asegurar la conexión de la aplicación front-end a una base de datos. He tenido discussions with others on Quora pero creo que el proceso de pensamiento fue demasiado abstracto del problema central.

Preferiría acceder a los datos por RESTful end-points, pero debo asegurarme de que solo mi aplicación pueda hablar con la API. Tendré control total sobre el front-end y back-end de la aplicación. Existe la posibilidad de que se creen otras aplicaciones alrededor de la base de datos (en uno o dos años); sin embargo, las desarrollaré yo (es decir, no una API pública) y probablemente utilicen puntos finales OAuth separados.

Algunas notas sobre la aplicación (puede o no puede ser de utilidad):

  • esté prevista la aplicación que se ofrecerán en un modelo SaaS, donde las empresas se suscriben y se les permite que varios usuarios.
  • Los datos de cada empresa deben ser seguros y solo accesibles para los miembros de esa empresa.
  • Todo el tráfico (front-end y aplicación a API) se enviará a través de SSL.

Cualquier consejo sobre la mejor manera de hacer esto será muy apreciado.

Respuesta

1

Tenemos la misma configuración que usted - modelo SaaS, múltiples aplicaciones (móvil, web, etc.) y cuando seguí su enlace, Miguel tiene la solución exacta que usamos.

Token que se marca con el tiempo y se envía al cliente en la autenticación. Almacenamos ese token hash en un Modelo de Usuario y luego cada solicitud subsiguiente validamos ese token.

Puede extender Backbone.Model con un BaseModel que anexa el token a cada petición del servidor sobreescribiendo Backbone.sync

Ver here acerca de cómo se extendió una Visión de base y se puede aplicar lo mismo a un basemodel.

+0

Estaba pensando que esta sería la mejor solución, pero pensé que buscaría una segunda opinión. Dices que funciona en la práctica así que creo que me quedaré con eso, gracias. –

Cuestiones relacionadas