2009-10-01 39 views
12

理論上電子郵件是case sensitive。但是使用電子郵件作爲系統登錄,我希望它們全都是小寫(即[email protected][email protected]不能是不同的用戶)。我可以安心對待電子郵件地址小寫嗎?

這對於某些在其電子郵件地址中使用區分大小寫的用戶可能會出現問題嗎? 有人在那裏使用它?

編輯:因爲有很多「保存的情況下保存,忽略登錄」的答案:如果我真的有兩個不同的用戶約翰@史密斯和約翰@史密斯,這個系統會打破,不是嗎?

示例:john @ smith和John @ smith的密碼爲123.我如何知道哪一個只是經過身份驗證?

+2

我敢打賭,* *有人使用它。但是,這是他們的問題 – SilentGhost 2009-10-01 11:30:05

+1

@SilentGhost:不能說,我同意你的看法 - 這是我們作爲開發商的問題,而且是一個非常簡單的一個;) – RedFilter 2009-10-01 14:12:30

回答

6

某些系統區分大小寫。

我建議它被保留,但忽略la windows文件系統。

即記得john註冊了[email protected],但讓他以[email protected][email protected][email protected]的身份登錄。

這不太可能導致衝突,如果任何人有一個區分大小寫的電子郵件,我相信他們會知道它。

+1

請參閱我的編輯。我認爲這隻有在我保存了案件的情況下才會起作用,但是禁止使用相同的字母但是不同的案件進行新的註冊,這與整個大小寫敏感的事物相矛盾,不是嗎? – 2009-10-01 16:20:56

+0

這正是我的建議 – wefwfwefwe 2009-10-02 07:13:15

+0

我知道這個線程有點老,但我有一個想法可能會有所幫助。您可以隨時存儲保存的記錄和較小的記錄。爲您的支票使用較小的記錄,併爲您的電子郵件保留記錄。 – diggersworld 2014-06-09 10:41:32

0

是的,這是一個問題。我只是在Linux上進行了一些測試(運行exim),只有正確大小寫的郵件到達了郵箱...

我認爲大多數商業郵件提供商規範化所有電子郵件地址,但通常情況下您必須使用正確的大小寫!

0

This link表示「幾乎沒有任何電子郵件服務或ISP確實執行區分大小寫的電子郵件地址」。

+4

翻譯:有些電子郵件服務/互聯網服務供應商強制區分大小寫的電子郵件地址。 – Bill 2009-10-01 12:51:35

+0

另一種翻譯:除了它以外,沒有關係。 – RedFilter 2016-02-23 16:26:02

0

我不知道任何區分具有相同字母但不同情況的電子郵件地址的實現。

我從來沒有聽說過一條消息沒有被正確傳輸,只是因爲這些情況是錯誤的。

13

根據RFC 2821

郵箱的本地部分必須被視爲區分大小寫。因此,SMTP實現務必注意保留郵箱本地部分的情況。郵箱域不區分大小寫。特別是,對於某些主機,用戶「史密斯」與用戶「史密斯」不同。但是,利用郵箱本地部分的大小寫敏感性會妨礙互操作性,因此不鼓勵。

因此,儘管您可以將區分大小寫的電子郵件地址,但您不鼓勵這樣做。

+0

我讀過那段(在我的問題中與它相關),但這是否是否?這在現實世界的系統中有多適用? – 2009-10-01 16:17:25

+1

對於大多數「安全」的價值來說,這是一個肯定的答案。您不會遇到問題,如果您這樣做,解決方法(使用不同的地址)比通過執行案例會導致的用戶體驗問題更容易。 – 2009-10-13 16:00:26

0

如果您使用它作爲系統登錄,則不需要。通常(在談論登錄時),管理員和管理員是同一個人...... JohnDoe和johndoe也是......同樣,使用電子郵件提供程序以考慮區分大小寫的人數太少。

5

恕我直言,用戶按照用戶輸入的方式存儲和顯示地址,不僅因爲RFP說你必須尊重案件,而且因爲如果用戶有偏好,你應該尊重該偏好。這是他們的電子郵件地址。我不是重新格式化我提供給他們的個人細節的系統迷。例如,你會驚訝有多少INSIST系統稱我爲「Tj」 - 這顯然是錯誤的 - 而不是「T.J.」 (爲了得到它,正確地+1)。

因此,如果約翰史密斯註冊爲「[email protected]」,那麼這就是約翰史密斯希望看到他的電子郵件地址(如果他有一個偏好)。我可能不會讓別人用「[email protected]」的電子郵件地址註冊,因爲賠率是壓倒性的,它是一樣的其他帳戶的地址,但我不會與他們的地址或其他詳細信息的用戶的格式渣土約。至多我可能會提示他們,如果他們給了我很多所有帽子的選擇,問他們是否不喜歡更多......溫柔的東西。

12

不要扔掉數據。完全按照您收到的電子郵件地址或用戶名存儲,除修剪字符串的兩端外。

當發送電子郵件,使用由用戶提供的情況。僅僅因爲區分大小寫是罕見的,沒有理由不處理它 - 否則該用戶不會收到郵件,甚至可能無法註冊。

當驗證用戶時,您可以選擇對小寫(或大寫)字符串進行比較,以便忽略該情況。

所以,通過保持你突然給自己選擇的用戶輸入數據:是否做區分大小寫的比較上的認證,以及是否在發送郵件時使用的區分大小寫的電子郵件地址。即使你現在不選擇利用它們,保留數據的目的是讓你(或其他開發人員)在這些道路上做出選擇。

相關問題