Tôi đang xây dựng một ứng dụng iPhone nói chuyện với chương trình phụ trợ của Ruby on Rails. Ứng dụng Ruby on Rails cũng sẽ phục vụ người dùng web. Plugin restful_authentication là một cách tuyệt vời để cung cấp xác thực người dùng nhanh chóng và tùy chỉnh. Tuy nhiên, tôi muốn người dùng ứng dụng iPhone tự động tạo tài khoản bằng mã định danh duy nhất của điện thoại ([[Thiết bị UIDevice] uniqueIdentifier]) được lưu trữ trong một cột mới. Sau đó, khi người dùng đã sẵn sàng để tạo tên người dùng/mật khẩu, tài khoản sẽ được cập nhật để chứa tên người dùng và mật khẩu, để nguyên định danh duy nhất của iPhone. Người dùng sẽ không thể truy cập trang web cho đến khi họ thiết lập tên người dùng/mật khẩu của họ. Tuy nhiên, họ có thể sử dụng ứng dụng iPhone, vì ứng dụng có thể tự xác thực bằng cách sử dụng mã nhận diện của nó.Cách tốt nhất để mở rộng restful_authentication/AuthLogic để hỗ trợ đăng nhập lười biếng bằng iPhone ẩn danh là gì?
Cách tốt nhất để sửa đổi restful_authentication để làm điều này là gì? Tạo plugin? Hoặc sửa đổi mã được tạo ra?
Còn các khung thay thế, chẳng hạn như AuthLogic. Cách tốt nhất để cho phép iPhone có được mã thông báo xác thực được tạo ra bị khóa với UUID của họ là gì, nhưng sau đó cho phép người dùng tạo tên người dùng/mật khẩu sau?
Không thực sự là một câu trả lời, nhưng một cái gì đó nhiều hơn để suy nghĩ về: làm thế nào thiết kế của bạn để xử lý trường hợp ai đó có tài khoản iphone, đăng ký một tài khoản người dùng/mật khẩu trên trang web một cách độc lập, và sau đó muốn kết hợp hai tài khoản? – Stobor
Tôi đã thực hiện một số suy nghĩ thêm về vấn đề này, và trong khi tôi vẫn chưa đưa ra một giải pháp thỏa mãn tôi, tôi đã thử một vài điều. Tạo tài khoản ẩn danh với tên người dùng/mật khẩu ngẫu nhiên được liên kết với một đối tượng Thiết bị hoạt động đôi chút. Tuy nhiên, điều này yêu cầu thiết bị phải có tên người dùng/mật khẩu khi tạo và lưu trữ nó. Vấn đề với giải pháp này là trang web được phân phối bằng các đóng góp tài khoản ẩn danh (dễ dàng khắc phục được bằng cách có trường loại tài khoản trong Người dùng được gọi là Ẩn danh, sau đó bạn có thể lọc ra nếu cần). Giải pháp này hoạt động nhưng không phải là tuyệt vời. –