theo dõi -
nếu người dùng của bạn không thể nhớ rằng họ đã đăng ký trước đây, tốt, tốt nhất của may mắn đối với họ nói chung;)
nhiều như bạn mô tả, tôi đang lập kế hoạch cung cấp cho người dùng tùy chọn liên kết các tài khoản bổ sung sau khi họ đã đăng nhập bằng một phương tiện hoặc phương thức khác.
nhưng theo như kiểm tra chéo, chỉ có quá nhiều thứ bạn có thể làm. nhiều API mạng xã hội thực sự cung cấp địa chỉ email (khi bạn đã truy cập qua OAuth) nhưng chúng chỉ có thể truy cập được nếu người dùng đã chọn công khai địa chỉ của họ, điều này không được bảo đảm.
cũng không được đảm bảo là người dùng đã sử dụng địa chỉ email SAME cho từng tài khoản mạng xã hội, vì vậy ngay cả khi bạn quản lý để truy xuất địa chỉ có thể hoặc không sử dụng bất kỳ cho bạn.
cuối cùng, nếu bạn tìm thấy địa chỉ email phù hợp thông qua các phương tiện như vậy, có thể được khuyến khích nhắc người dùng liên kết tài khoản thay vì giả sử anh/cô ấy muốn điều này được thực hiện tự động. một số người thích duy trì nhiều tính cách. tức là "có vẻ như bạn cũng đã đăng ký với twitter - bạn có muốn liên kết các tài khoản của mình không? nó sẽ làm cho cuộc sống của bạn có vẻ đáng sống."
bạn có thể xem xét cung cấp các ưu đãi để liên kết tài khoản người dùng hoặc cung cấp địa chỉ email (tùy thuộc vào bạn tất nhiên để tìm hiểu điều này có thể là gì, dựa trên chức năng của trang web của bạn).
giải pháp tôi đang làm việc, bên cơ sở dữ liệu, là duy trì nhiều tài khoản và sau đó nếu thông tin liên kết được phát hiện bằng nhiều cách khác nhau, liên kết được chỉ ra trong bảng tra cứu. một giải pháp thay thế là khi bạn tìm thấy liên kết, hãy cố gắng kết hợp tất cả các mục có liên quan cho nhiều tài khoản vào một thực thể tài khoản - tất cả những gì tôi có thể nói về cách tiếp cận thứ hai này là tôi sẽ thận trọng vì có thể có mức độ phức tạp ghê gớm tùy thuộc vào mức độ hoạt động của người dùng và độ phức tạp của lược đồ cơ sở dữ liệu của bạn.
trong không gian tên (tinh thần/thực tế) của tôi mà người dùng đăng ký theo cách cũ có tài khoản 'chuẩn' và một người sử dụng mạng xã hội có tài khoản 'bí danh'. thì mục tiêu trở thành để xác định nơi bí danh được cho là điểm, tức là tạo tra cứu sao cho thông tin đăng nhập tiếp theo qua hoặc nghĩa là truy xuất thông tin có liên quan cho cả hai tài khoản (với tùy chọn hiển thị dữ liệu cá nhân cho 'chuẩn' tài khoản).
btw tôi đã tìm ra cách làm cho Twitter OAuth hoạt động từ bài đăng cuối cùng của tôi - bạn có thể xem các câu trả lời khác của tôi để biết chi tiết nếu bạn quan tâm.
JB
hi mờ,
tôi đang làm việc trên cùng một vấn đề ngay bây giờ.
giả sử người dùng bắt đầu với thường xuyên tài khoản trang web (đó là không nhất thiết an toàn để giả định nếu ông thấy tất cả các khá "kết nối với XXX mạng" nút !!!), bạn có thể sử dụng một trong hai OAuth hoặc javascript API (facebookConnect hoặc @anywhere - chưa hoàn toàn tìm ra số sau đó và tôi không chắc chắn tôi khuyên bạn nên dùng nó là Tôi không nghĩ rằng nó cung cấp các API phong phú như một thư viện phụ trợ) để đăng nhập vào các trang web khác.
các API sẽ trả về một số thông tin sau một đăng nhập thành công/chuyển hướng từ mạng xã hội - chẳng hạn như ID người dùng và một thẻ truy cập mà sau đó bạn có thể lưu trữ trong cơ sở dữ liệu bạn trong một số khả năng liên kết 'thực tế của bạn 'người dùng ứng dụng có ID của mạng xã hội.
khi người dùng quay trở lại trang web, bạn có thể sau đó
1 xác minh các tập tin cookie được thiết lập bởi các dịch vụ mạng xã hội (các chương trình khác nhau thường xác minh chữ ký, dựa trên sha1 hoặc md5 hash của ứng dụng của bạn dữ liệu - theo đó tôi có nghĩa là dữ liệu bạn nhận được khi đăng ký ứng dụng với twitter/facebook, thường là khóa người dùng, ID ứng dụng, v.v. với cookie đã nhận) để bạn biết người dùng đã đăng nhập xã hội mạng
2 tìm mục nhập của bạn liên kết cơ sở dữ liệu như mô tả ở trên
3 người dùng đăng nhập của bạn tay dựa trên giả định rằng facebook/twitter kết nối được an toàn.
báo trước: điều này chỉ an toàn như triển khai của bạn (hoặc bảo mật như triển khai facebook/twitter, nếu bạn thích ...)
mặc dù OAuth twitter của hiện không có vẻ làm việc hoàn toàn đúng, mô tả chung của họ về quá trình là khá nhiều thông tin: http://dev.twitter.com/pages/auth
chúc may mắn.
J
j, vui mừng khi thấy người khác đang làm việc về vấn đề này. tôi cảm thấy tôi có được kịch bản bạn mô tả, khi người dùng đăng ký tài khoản trang web lần đầu tiên và sau đó muốn đính kèm các tài khoản mạng xã hội khác, v.v. vấn đề chính của tôi là nắm bắt kịch bản khác, khi người dùng sử dụng lần đầu tiên " đăng nhập bằng các nút "XXX" mà không cần có tài khoản trang web. rõ ràng là tôi cần tự động tạo tài khoản, nhưng điều gì sẽ xảy ra khi họ quay lại trang web và sử dụng nút "đăng nhập bằng XXX" khác? tôi có nên kiểm tra dựa trên email không? những gì tôi nên hiển thị cho người dùng? matt – Matt
thật khó để tìm một kế hoạch dễ dàng. một điều - không thực sự là một chương trình rất phức tạp như giải pháp UX - tôi đã thấy các trang web có trang tiểu sử (và đôi khi PROMPT người dùng theo cách nào đó để 'hoàn thành tiểu sử của bạn'). 'cài đặt mạng xã hội. một khi bạn có dữ liệu này, bạn có thể rút ra kết luận hợp lý phía máy chủ và tạo các liên kết thích hợp trong DB người dùng của bạn. – jsh