Czy rozróżnia się wielkość liter na adresach e-mail?
Czytałem, że standardowo pierwsza część wiadomości e-mail uwzględnia wielkość liter, jednak próbowałem wysłać e-mail do [email protected]
, [email protected]
i [email protected]
- przybył w każdym przypadku.
Jak Serwery Pocztowe obsługują nazwy użytkowników? Czy można przegapić sprawę i ta wiadomość nie zostanie dostarczona? Czy naprawdę bardzo ważne jest, aby używać dokładnie tej samej litery, jaką napisano podczas rejestracji przy podawaniu adresu e-mail?
6 answers
Z RFC 5321, sekcja-2.3.11:
Standardowa konwencja nazewnictwa skrzynek pocztowych jest zdefiniowana jako "local-part@domain"; współczesne użycie pozwala na znacznie szerszy zestaw Aplikacje niż proste "nazwy użytkowników". W konsekwencji i ze względu na długa historia problemów, gdy gospodarze pośredni próbowali optymalizacji transportu poprzez ich modyfikację, część lokalna musi być interpretowane i przypisywane semantyki tylko przez host określony w część domenowa adres.
Tak więc tak, część przed " @ " może uwzględniać wielkość liter, ponieważ jest całkowicie pod kontrolą systemu hosta. W praktyce jednak żaden powszechnie stosowany system pocztowy nie rozróżnia różnych adresów w zależności od przypadku.
Część po znaku @ jest jednak domeną i zgodnie z RFC 1035, sekcja 3.1,
[[0]} "serwery nazw i resolvery muszą porównywać [domeny] w sposób niewrażliwy na wielkość liter"
W skrócie, jesteś bezpieczny w leczeniu e-mail adresy jako niewrażliwe na wielkość liter.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-03-21 16:14:48
Wiem, że to stare pytanie, ale chcę tylko skomentować tutaj: w każdym stopniu adresy e-mail są wrażliwe na wielkość liter, większość użytkowników byłoby "bardzo nierozsądne", aby aktywnie używać adresu e-mail, który wymaga wielkich liter. Wkrótce przestaną używać adresu, ponieważ straciliby dużo poczty. (Chyba że mają konkretny powód, aby utrudniać sprawy i oczekują poczty tylko od określonych nadawców, których znają.)
To dlatego, że niedoskonali ludzie jak i niedoskonałe oprogramowanie exist, (niespodzianka!), który zakłada, że wszystkie e-maile są małymi literami i z tego powodu ci ludzie i oprogramowanie będą wysyłać wiadomości za pomocą" niższej wersji " adresu, niezależnie od tego, jak został im przekazany. Jeśli odbiorca nie jest w stanie odbierać takich wiadomości, wkrótce zauważy, że wiele ich brakuje i przełączy się na adres e-mail z małymi literami lub ustawi swój serwer na niewrażliwy na wielkość liter.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-10-24 07:39:16
Za późno na ten post, ale mam coś nieco innego do powiedzenia...
>> "Are email addresses case sensitive?"
To Zależy..." (TM)
Niektóre organizacje uważają, że to dobry pomysł, a ich serwery e-mail wymuszają wrażliwość na wielkość liter.
Więc, dla tych szalonych miejsc, " tak, e-maile są wrażliwe na wielkość liter."
Uwaga: Tylko dlatego, że specyfikacja mówi, że możesz coś zrobić, nie oznacza, że jest to dobry pomysł, aby to zrobić.
Zasada pocałunku sugeruje to nasze systemy używają e-maili niewrażliwych na wielkość liter.
Podczas gdy zasada solidności sugeruje, że akceptujemy e-maile uwzględniające wielkość liter.
Rozwiązanie:
- przechowuj e-maile z wrażliwością na wielkość liter
- wysyłanie wiadomości e-mail z rozróżnieniem wielkości liter
- Wykonywanie wewnętrznych przeszukiwań z niewrażliwością na wielkość liter
Oznaczałoby to, że jeśli ten e-mail już istnieje: [email protected]
... przychodzi kolejny użytkownik i chce skorzystać z tego maila: [email protected]
... że nasza logika wyszukiwania niewrażliwego na wielkość liter zwróci komunikat o błędzie "Ten e-mail już istnieje".
Teraz musisz podjąć decyzję: czy takie rozwiązanie jest odpowiednie w Twoim przypadku?Jeśli nie, możesz pobierać opłatę za wygodę dla tych klientów, którzy wymagają wsparcia dla ich e-maili uwzględniających wielkość liter i wdrożyć niestandardową logikę, która pozwala na [email protected] do Twojego systemu, nawet jeśli [email protected] już istnieje.
W takim przypadku twój e-mail logika wyszukiwania / walidacji może wyglądać jak coś tego pseudokodu:
if (user.paidEmailFee) {
// case sensitive email
query = "select * from users where email LIKE ' + user.email + '"
} else {
// case insensitive email
query = "select * from users where email ILIKE ' + user.email + '"
}
W ten sposób w większości wymuszasz niewrażliwość na przypadki, ale pozwalasz klientom płacić za to wsparcie, jeśli używają systemów e-mail, które obsługują takie nonsensy.
P. s. ILIKE jest słowem kluczowym PostgreSQL: http://www.postgresql.org/docs/9.2/static/functions-matching.html
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-12-04 19:23:37
RFC 5321 2.4. ogólne zasady składni i model transakcji
Implementacje SMTP muszą dbać o zachowanie skrzynki pocztowej lokalne-części. W szczególności dla niektórych hostów użytkownik "smith" jest różni się od użytkownika "Smith".
Domeny skrzynek pocztowych przestrzegają normalnych reguł DNS i dlatego nie są sensitive
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-04-27 10:03:52
Per @l3x, to zależy.
Istnieją wyraźnie dwa zestawy sytuacji ogólnych, w których poprawna odpowiedź może być różna, wraz z trzecią, która nie jest tak ogólna:
A) jesteś użytkownikiem wysyłającym prywatne maile :
Bardzo niewiele nowoczesnych systemów e-mail implementuje rozróżnianie wielkości liter, więc jesteś prawdopodobnie w porządku ignorować wielkość liter i wybierać dowolne przypadki, których chcesz użyć. Nie ma gwarancji, że wszystkie Twoje maile zostaną dostarczone - ale tak niewiele maili będzie negatywnie wpłynęło to na to, że nie powinieneś się o to martwić.
B) tworzysz oprogramowanie pocztowe :
Patrz RFC5321 2.4 fragment na dole.
Kiedy tworzysz oprogramowanie pocztowe, chcesz , Aby było zgodne z RFC. Możesz uczynić adresy e-mail użytkowników niewrażliwymi na wielkość liter, jeśli chcesz (i prawdopodobnie powinieneś). Aby jednak być zgodnym z RFC, musisz traktować zewnętrzne adresy jako uwzględniające wielkość liter .
C) Zarządzanie firmowymi listami adresów e-mail jako pracownik :
Jest możliwe, że ten sam adresat e - mail zostanie dodany do listy więcej niż jeden raz-ale przy użyciu innej litery. W tej sytuacji, chociaż adresy są technicznie różne, może to spowodować, że odbiorca otrzyma duplikaty wiadomości e-mail. Sposób traktowania tej sytuacji jest podobny do sytuacji a) w tym, że jesteś prawdopodobnie W porządku traktować je jako duplikaty i usunąć duplikat wpisu. Lepiej jest leczyć są to jednak szczególne przypadki, wysyłając wiadomość "Przypomnienie" na oba adresy, aby zapytać, czy są one duplikaty siebie i, jeśli tak, który adres e-mail odbiorca wolałby użyć.
Z prawnego punktu widzenia, jeśli usuniesz duplikat bez potwierdzenia/zgody z obu adresów, możesz być pociągnięty do odpowiedzialności za wyciek prywatnych informacji / uwierzytelniania na nieautoryzowany adres po prostu dlatego, że dwa faktycznie-oddzielne odbiorcy mają ten sam adres z różnymi przypadkami.
Fragment z RFC5321 2.4:
Lokalna część skrzynki pocztowej musi być traktowana jako uwzględniająca wielkość liter. Dlatego wdrożenia SMTP muszą zadbać o zachowanie Skrzynka pocztowa lokalna-części. W szczególności, dla niektórych hostów, użytkownik " smith" różni się od użytkownika "Smith". Jednak wykorzystanie sprawy wrażliwość lokalnych części skrzynki pocztowej utrudnia interoperacyjność i jest zniechęcony.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-06-01 12:12:47
Mogę wymyślić tylko jeden przydatny powód, aby odzyskać e-mail z wrażliwością na wielkość liter: unikanie spamu. Powiedz swoim przyjaciołom i współpracownikom, że muszą używać odpowiedniej kombinacji wielkich i małych liter. ([email protected]) myślę, że spamerzy raczej nie będą przestrzegać takiej reguły, zwłaszcza, że twój adres jest przekazywany z serwera na serwer.
Wadą może być to, że klienci e-mail Twoich znajomych są niewłaściwie zaprojektowane. Niezależnie od ich intencji mogą nie być w stanie spełnić. To może być tak szczególnie w przypadku legalnych współpracowników biznesowych, którzy przechowują tysiące adresów i częściej tasują swoje dane. Nie dadzą ci tej samej indywidualnej uwagi.
Nie zamierzam tego robić, ale myślę, że byłoby to całkiem skuteczne, jeśli chcesz adres e-mail "tylko dla znajomych", który dostaje mniej spamu. Prawdopodobnie nie jest to dobre dla kontaktów biznesowych.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-10-18 07:38:50