Asegure la API de node.js restful

Me gustaría asegurar un Api tranquilo, y estoy tratando de mantenerlo lo más simple posible, además de ser apátrida.

¿Cuál es la forma óptima de almacenar, generar y autenticar las claves de api? Estaba pensando en generar claves con nodo-uuid, almacenarlas en redis y luego autenticarlas con pasaporte-apikeys.

¿Funcionaría esto? ¿O hay otra solución óptima que me falta?

He estado leyendo una buena cantidad sobre esto, pero faltan muchos recursos para la implementación, como esta publicación.

Tu solución me suena bien, pero no tan segura como me temo. Me gustaría sugerirle que firme la solicitud con la clave, para que pueda proteger su API de manipulación. Por lo tanto, debe generar un par de claves, digamos access id access key y access key , para el usuario que va a utilizar su API. La solicitud HTTP tendrá dos secciones, una es el access id y la otra es una firma que calcula el contenido completo de la solicitud mediante la access key . Pero la access key nunca debe pasar a través de HTTP. Por lo tanto, en el lado del servidor, puede verificar la firma de la solicitud HTTP mediante la access key almacenada en Redis.

Puede utilizar el módulo Crypto Node.js para esto. http://nodejs.org/api/crypto.html#crypto_class_hmac

Espero que esto ayude un poco.