Estoy construyendo una aplicación de iPhone que se comunica con un backend de Ruby on Rails. La aplicación Ruby on Rails también servirá a los usuarios de la web. El complemento restful_authentication es una excelente manera de proporcionar autenticación de usuario rápida y personalizable. Sin embargo, me gustaría que los usuarios de la aplicación iPhone tengan una cuenta creada automáticamente por el identificador único del teléfono ([[UIDevice device] uniqueIdentifier]) almacenado en una nueva columna. Más tarde, cuando los usuarios estén listos para crear un nombre de usuario/contraseña, la cuenta se actualizará para contener el nombre de usuario y la contraseña, dejando intacto el identificador único del iPhone. Los usuarios no deberían poder acceder al sitio web hasta que hayan configurado su nombre de usuario/contraseña. Sin embargo, pueden usar la aplicación iPhone, ya que la aplicación puede autenticarse utilizando su identificador.¿Cuál es la mejor manera de extender restful_authentication/AuthLogic para admitir inicios de sesión perezosos mediante un iPhone anónimo?
¿Cuál es la mejor manera de modificar restful_authentication para hacer esto? Crear un plugin? ¿O modificar el código generado?
¿Qué pasa con los marcos alternativos, como AuthLogic. ¿Cuál es la mejor manera de permitir que los iPhones obtengan un token de autenticación generado bloqueado en su UUID, pero luego deje que el usuario cree un nombre de usuario/contraseña más adelante?
No es realmente una respuesta, pero algo más que pensar: ¿cómo puede su diseño para manejar el caso en que alguien tiene una cuenta iPhone, registra una cuenta de usuario/contraseña en la página web de forma independiente, y luego quiere fusionar las dos cuentas? – Stobor
he hecho pensar un poco más en este problema, y aunque todavía tengo que llegar a una solución que me satisface, he intentado un par de cosas. crear un usuario anónimo al azar con un nombre de usuario/contraseña vinculada a un objeto de dispositivo funciona un poco. Sin embargo, esto requiere que el dispositivo obtenga el nombre de usuario/contraseña al momento de la creación y lo almacene. El problema con esta solución es que el sitio está lleno de contribuciones de cuenta anónimas (fácilmente corregibles al tener un campo de tipo de cuenta en Usuario llamado Anónimo, que luego puede filtrar si es necesario). Esta solución funciona, pero no es genial. –