Câu trả lời:
Tùy thuộc vào đối tượng mục tiêu của bạn ( 'bình thường', hiểu biết rất kỹ thuật, hoặc có nguồn gốc từ các mạng xã hội) hoặc là :
hoặc là
Cả hai đều có vấn đề của họ.
Trong một số đối tượng địa chỉ email thay đổi rất nhiều. Bạn cần một cơ chế phục hồi tài khoản tốt, tốt nhất là với tùy chọn thêm nhiều địa chỉ email vào mỗi tài khoản. Tuy nhiên, địa chỉ email là tên người dùng vượt trội so với tên người dùng tự chọn vì mọi người có thể nhớ chúng và chỉ sử dụng email + mật khẩu sẽ đơn giản hóa quá trình đăng ký.
OpenID, Facebook Connect, v.v ... thật tuyệt. Nhưng việc xác định "Tôi đang ở Trang B và tôi không thể đăng nhập. Tôi cần phải truy cập Trang A để kiểm tra thông tin đăng nhập của mình". OpenID hoạt động tuyệt vời với những khán giả rất am hiểu công nghệ, như được minh họa bởi các trang web Stack Exchange ...
Kết luận: Bạn cần xem xét cẩn thận đối tượng mục tiêu của mình và nếu có thể, hãy chạy thử nghiệm khả năng sử dụng hành lang của các cơ chế xác thực khác nhau.
Có vấn đề với cả hai, tin hay không.
Mọi người thay đổi email của họ gần như liên tục, có vẻ như. Họ càng trẻ thì càng tệ. Vì lý do này, thật khó khăn để buộc tài khoản vào email. Tuy nhiên, email có vẻ dễ nhớ hơn nhiều so với tên người dùng.
Tên người dùng tuyệt vời ở chỗ họ không thường xuyên thay đổi, nhưng mọi người thường quên họ. Sau đó, bạn phải đối phó với cả hệ thống truy xuất mật khẩu VÀ hệ thống truy xuất tên người dùng. Nhân đôi công việc, một nửa niềm vui.
Cá nhân tôi làm cả hai khi tôi đang làm một trang web không có hệ thống id mở nào đó. Tôi thu thập cả hai, lưu trữ cả hai trong DB, sau đó tìm kiếm dựa trên giá trị đăng nhập đã nhập để xem cái nào họ định sử dụng. Rõ ràng, điều này có nghĩa là không có ký hiệu @ trong tên người dùng. Tuy nhiên, nó giúp người dùng của tôi dễ nhớ ít nhất một trong hai tùy chọn. Để truy xuất, tôi sử dụng một hệ thống thử thách, vì tôi cảnh giác với các email cho mục đích xác nhận. Tin tặc có thể nhận được email ... họ có thể không biết tên con chó hoặc chiếc xe yêu thích đầu tiên của một người là gì.
OpenId dường như làm cho rất nhiều tranh luận này trở nên ít quan trọng hơn. Đó là một điều tốt để kiểm tra.
Nó cũng có thể phụ thuộc vào cách bạn lưu trữ thông tin người dùng của bạn. Ví dụ: nếu bạn sử dụng cơ sở dữ liệu có khóa chính làm tên người dùng thì có lẽ bạn sẽ không muốn sử dụng địa chỉ email làm tên người dùng, vì nếu người dùng thay đổi địa chỉ email của họ thì điều này sẽ thay đổi khóa chính (và làm hỏng bất kỳ tài liệu tham khảo khóa nước ngoài).
Bạn có thể muốn có một trường tên người dùng nếu bạn muốn người dùng ẩn địa chỉ email hoặc tên thật của họ khỏi những người dùng / khách truy cập khác.
Thay vào đó, nó thường được gọi là biệt danh trong những trường hợp này và đôi khi có thể được thay đổi nhanh chóng mà không ảnh hưởng đến thông tin đăng nhập của người dùng.
Tôi nghĩ rằng câu trả lời phụ thuộc vào những gì bạn sẽ làm với thông tin bạn thu thập, ví dụ như không gửi email người dùng - không yêu cầu địa chỉ email, không hiển thị thông tin người dùng, không thu thập tên hiệu, v.v.
Tên người dùng, địa chỉ email và OpenId đều có ưu và nhược điểm.
Nhưng đừng bao giờ gọi nó là tên người dùng và yêu cầu đó phải là một địa chỉ email!
Khi đăng ký, tôi nhập một trong những tên người dùng ưa thích của mình làm tên người dùng. Và nó làm tôi tức giận khi - sau khi nhấp vào OK - tôi nhận được thông báo rằng tên người dùng không phải là địa chỉ email hợp lệ.