Blazalek.com

Awarie e-maili transakcyjnych

Na tej stronie

Dlaczego użytkownicy nie otrzymują e-maili z resetem hasła?

Poziom ważności: KrytycznyWstrzymanie wysyłki: Wstrzymaj warunkowo

Prześledź jeden wewnętrzny identyfikator żądania od utworzenia tokenu do zdarzenia końcowego u dostawcy, zanim zlecisz kontrolowane ponowne wysłanie. Awaria w bocznym kanale e-mailowym może uniemożliwić odzyskanie konta, gdy nie ma dostępnej alternatywnej metody odzyskiwania. Nazwy zdarzeń u dostawców i granice systemów różnią się, więc zlokalizuj ostatni potwierdzony etap przed przypisaniem przyczyny.

Pierwsze 15 minut

  1. Skoreluj wewnętrzny ID żądania poprzez utworzenie tokenu, renderowanie, przekazanie do dostawcy i końcowe zdarzenie u dostawcy.
  2. Utrzymuj jednolitą publiczną odpowiedź dotyczącą resetu podczas wewnętrznego dochodzenia.

Teraz

  • Prześledź bezpieczny dla prywatności wewnętrzny ID żądania przez granice tokenu, renderowania, przekazania i zdarzenia końcowego.

Najbliższe 24 godziny

  • Zlecaj tylko kontrolowane ponowne wysyłanie, które unika wyliczania kont i burz tokenów.

Najbliższe 7 dni

  • Uczyń korelację ID żądania i obsługę kontrolowanego ponownego wysyłania częścią przepływu resetowania.

Kontrole techniczne

Inżynieria

  • Zidentyfikuj ostatnie zdarzenie Amazon SES spośród Send, Rendering Failure, Delivery, Bounce, Reject, Complaint i DeliveryDelay, gdy publikowanie zdarzeń SES jest włączone.
  • W przypadku osobistych odbiorców Gmail, zweryfikuj, czy uwierzytelnianie SPF lub DKIM kończy się sukcesem.

Kryteria weryfikacji

  • Żądanie resetu można prześledzić do zdarzenia Amazon SES, które rejestruje, czy zostało wysłane, opóźnione, dostarczone, odrzucone, czy nastąpiło odrzucenie, skarga lub błąd renderowania.

Kryteria eskalacji

  • Eskaluj z identyfikatorami żądań i diagnostyką dostawcy dopiero po potwierdzeniu, że wiadomość dotarła do granicy dostawcy tożsamości lub dostawcy poczty bez oczekiwanego zdarzenia końcowego.

Zapobieganie

  • Publikuj zdarzenia dostarczania dla strumienia resetowania, aby każdą wiadomość można było zlokalizować w stanie końcowym lub opóźnionym.
  • Zweryfikuj SPF lub DKIM dla maili resetujących hasło wysyłanych na osobiste konta Gmail.
  • Używaj jednolitych publicznych odpowiedzi, wewnętrznej korelacji żądań i kontrolowanych limitów ponownego wysyłania.

Wpływ na biznes

  • Użytkownicy mogą nie być w stanie odzyskać swoich kont, gdy skonfigurowany boczny kanał e-mailowy zawiedzie.

Uwagi dostawcy

  • Amazon SES udostępnia odrębne zdarzenia, które mogą zlokalizować postęp wiadomości resetującej, gdy skonfigurowane jest publikowanie zdarzeń.
  • W przypadku przepływów opartych na Auth0, eskaluj po potwierdzeniu granicy dostawcy; inne systemy powinny używać właściciela ich ostatniej potwierdzonej granicy.

Otwarte pytania

  • Dostawca tożsamości, ESP, domeny poszkodowanych odbiorców, odsetek niepowodzeń i ostatnie potwierdzone zdarzenie w potoku są nieznane.
  • Nazwy zdarzeń u dostawców, zachowanie wykluczeń i granice wsparcia różnią się; przykłady Auth0 i SES są tylko przykładami o określonym zakresie.
  • Zamrożony adres URL wsparcia Auth0 rozwiązuje się teraz do ogólnego Centrum Wsparcia bez cytowanej treści artykułu, więc wymienione tam przyczyny specyficzne dla dostawcy nie mogły zostać niezależnie zweryfikowane.
Źródła (5)
  1. Forgot Password Cheat SheetIntroduction and MethodsOWASP Cheat Sheet Series
  2. Examples of event data that Amazon SES publishes to Amazon SNSEvent record examplesAmazon SES
  3. Email sender guidelinesRequirements for all senders; authenticationGoogle Gmail
  4. Forgot Password Cheat SheetForgot Password RequestOWASP Cheat Sheet Series
  5. Troubleshoot Email Provider Delivery IssuesView errors and Contact Auth0 supportAuth0

Powiązane procedury

Dlaczego e-maile z resetem hasła docierają po wygaśnięciu?

Poziom ważności: WysokiWstrzymanie wysyłki: Wstrzymaj warunkowo

Porównaj czas życia każdego tokenu resetowania z całkowitym opóźnieniem od żądania do dostarczenia przed obwinianiem skrzynki pocztowej. Ogólne ponowienia SMTP mogą trwać znacznie dłużej, niż token bezpieczeństwa pozostaje użyteczny, pozostawiając użytkowników z wygasłymi linkami odzyskiwania. Użyj budżetu ponowień i alertów specyficznego dla resetowania zamiast ogólnej kolejki pocztowej.

Pierwsze 15 minut

  1. Zbadaj szczegóły DeliveryDelay w Amazon SES, w tym odbiorcę, rozszerzony status, diagnostykę, typ opóźnienia, czas zdarzenia i czas wygaśnięcia, gdy publikowanie jest włączone.
  2. Zmierz opóźnienie od żądania do dostawcy, od dostawcy do dostarczenia i od dostarczenia do kliknięcia w stosunku do czasu życia tokenu.

Teraz

  • Wydaj nowo wygenerowany token przez ścieżkę ponownego wysłania z limitem częstotliwości, gdy opóźniona wiadomość już wygasła.

Najbliższe 24 godziny

  • Utrzymuj wcześniejsze tokeny resetowania jako nieważne po użyciu lub wymianie zgodnie z modelem zaległych tokenów w aplikacji.

Najbliższe 7 dni

  • Ustaw budżet ponowień i alertów specyficzny dla resetowania krótszy niż skonfigurowany czas życia tokenu.

Kontrole techniczne

Inżynieria

  • Skoreluj znaczniki czasu aplikacji i dostawcy ze spójnymi zegarami i porównaj każdy segment opóźnienia z wygaśnięciem tokenu.
  • Nie traktuj zdarzenia zakolejkowania lub dostarczenia przez dostawcę jako dowodu na to, że użytkownik otrzymał i otworzył użyteczny link resetujący.

Wsparcie ESP

  • Przejrzyj diagnostykę DeliveryDelay z SES i czas wygaśnięcia dla poszkodowanego odbiorcy, gdy publikowanie zdarzeń jest włączone.

Kryteria weryfikacji

  • Zmierzone opóźnienie od żądania do dostawcy, od dostawcy do dostarczenia i od dostarczenia do kliknięcia pozostaje w skonfigurowanym czasie życia tokenu dla testowanego przepływu.

Kryteria eskalacji

  • Eskaluj do ESP, gdy diagnostyka DeliveryDelay pokazuje, że kolejka dostawcy zbliża się do wygaśnięcia przed budżetem specyficznym dla resetowania.

Zapobieganie

  • Używaj jednorazowych tokenów resetowania z czasem życia dobranym do modelu zagrożeń aplikacji i doświadczenia odzyskiwania.
  • Monitoruj każdy segment opóźnienia pod kątem wygaśnięcia tokenu, zamiast polegać wyłącznie na akceptacji przez dostawcę.
  • Utrzymuj budżet ponowień i alertów dla resetowania krótszy niż czas życia tokenu.

Wpływ na biznes

  • Użytkownicy mogą otrzymywać bezużyteczne linki odzyskiwania, ponieważ ogólne okna ponowień SMTP mogą przekraczać odpowiedni czas życia jednorazowego tokenu.

Uwagi dostawcy

  • Zdarzenia DeliveryDelay w Amazon SES zawierają diagnostykę opóźnienia i czas wygaśnięcia tylko wtedy, gdy to publikowanie zdarzeń jest włączone.

Otwarte pytania

  • Skonfigurowane TTL tokenu, obserwowany rozkład opóźnień, harmonogram ponowień i etap opóźnienia nie zostały podane.
  • MTA ESP i odbiorców używają różnych harmonogramów ponowień i zdarzeń opóźnienia, więc przykłady z RFC i SES nie ustalają rzeczywistego zachowania kolejki.
Źródła (6)
  1. RFC 5321: Simple Mail Transfer ProtocolSections 4.2.1 and 4.5.4.1IETF RFC 5321
  2. Forgot Password Cheat SheetIntroduction; General Security PracticesOWASP Cheat Sheet Series
  3. Examples of event data that Amazon SES publishes to Amazon SNSDeliveryDelay recordAmazon SES
  4. Examples of event data that Amazon SES publishes to Amazon SNSSend, Delivery, and DeliveryDelay recordsAmazon SES
  5. Forgot Password Cheat SheetForgot Password Request; token securityOWASP Cheat Sheet Series
  6. RFC 5321: Simple Mail Transfer ProtocolSection 4.5.4.1, Sending StrategyIETF RFC 5321

Powiązane procedury

Dlaczego klienci otrzymują zduplikowane e-maile z potwierdzeniem zamówienia?

Poziom ważności: WysokiWstrzymanie wysyłki: Wstrzymaj warunkowo

Zduplikowane potwierdzenia mogą wystąpić, gdy żądanie z kolejki lub API jest przetwarzane więcej niż raz bez stabilnej granicy idempotencyjności. Powiąż każde ponowienie dla jednego zdarzenia zamówienia z tym samym kluczem logicznym i uczyń konsumenta idempotentnym. Wstrzymaj dotkniętą ścieżkę potwierdzeń, jeśli nadal generuje ona powtarzające się wysyłki.

Pierwsze 15 minut

  1. Sprawdź, czy zdarzenie zamówienia przeszło przez standardową kolejkę SQS, która może zwrócić tę samą kopię wiadomości więcej niż raz.
  2. Porównaj klucze idempotencyjności dla zduplikowanych potwierdzeń i potwierdź, że ponownie użyto jednego stabilnego klucza typu zdarzenia i ID zamówienia.
  3. Sprawdź, czy Resend zwrócił 409 dla zmienionego ładunku lub identycznego żądania z kluczem, które nadal jest w toku.

Teraz

  • Ponownie użyj tego samego klucza idempotencyjności i ładunku Resend dla każdego ponowienia jednego żądania potwierdzenia zamówienia.

Najbliższe 24 godziny

  • Wygeneruj stabilny klucz z typu zdarzenia i ID zamówienia, tak aby jedno zdarzenie zamówienia mapowało się na jedną logiczną wysyłkę.

Najbliższe 7 dni

  • Utrzymuj współbieżne ponowienia na tym samym kluczu i ponów przypadek 409 w toku później z tym samym żądaniem.

Kontrole techniczne

Inżynieria

  • Zweryfikuj, czy konsument SQS jest idempotentny, zanim utworzy wysyłkę potwierdzenia.
  • Uwzględnij 24-godzinny czas przechowywania klucza idempotencyjności w Resend przy ustawianiu okna ochrony przed duplikatami w aplikacji.
  • Obsługuj odpowiedzi 409 z Resend bez tworzenia nowego logicznego klucza idempotencyjności dla tego samego potwierdzenia.

Kryteria weryfikacji

  • Powtórz to samo żądanie Resend z kluczem w udokumentowanym 24-godzinnym oknie przechowywania i potwierdź, że jest ono przetwarzane raz.
  • Potwierdź, że klucz użyty ponownie z innym ładunkiem zwraca 409, a nie tworzy kolejną logiczną wysyłkę.
  • Potwierdź, że identyczne żądanie z kluczem, które było w toku, może zostać ponowione później z tym samym żądaniem.

Kryteria eskalacji

  • Eskaluj projekt ochrony przed duplikatami, gdy musi on obejmować okres dłuższy niż udokumentowane 24-godzinne przechowywanie klucza idempotencyjności w Resend.
  • Eskaluj do ESP, gdy obserwowane zachowanie 409 różni się od udokumentowanych przypadków zmienionego ładunku lub żądania w toku.

Zapobieganie

  • Uczyń konsumentów standardowych kolejek idempotentnymi, aby ponowne dostarczenie wiadomości nie mogło tworzyć zduplikowanych efektów.
  • Używaj tego samego klucza idempotencyjności dostawcy przy każdym ponowieniu.
  • Wygeneruj jeden stabilny klucz typu zdarzenia i ID encji dla każdej logicznej wysyłki potwierdzenia zamówienia.

Wpływ na biznes

  • Bez tego samego klucza idempotencyjności Resend przy każdym ponowieniu, powtarzające się żądania wysyłki nie są chronione przez udokumentowane zachowanie jednokrotnego przetwarzania.

Uwagi dostawcy

  • Resend przechowuje klucze idempotencyjności e-maili przez 24 godziny.
  • Resend zwraca 409, gdy klucz jest ponownie używany z innym ładunkiem lub gdy identyczne żądanie z kluczem jest nadal w toku.

Otwarte pytania

  • Źródłem duplikatu mogą być powtarzające się zdarzenia zamówień, ponowne dostarczenie z kolejki, współbieżni workerzy, ponowienie HTTP lub różne klucze idempotencyjności; logi muszą je rozróżnić.
  • Obsługa idempotencyjności API e-mail, przechowywanie kluczy i semantyka konfliktów różnią się w zależności od ESP; udokumentowane 24-godzinne zachowanie Resend nie jest uniwersalne.
  • Obecny trwały rejestr wysyłek aplikacji i ograniczenia unikalności są nieznane.
Źródła (5)
  1. Amazon SQS at-least-once deliveryAt-least-once delivery behaviorAmazon Web Services SQS
  2. Idempotency KeysHow does it work?Resend
  3. Idempotency KeysHow does it work? and How to use idempotency keys?Resend
  4. Idempotency KeysHow to use idempotency keys?Resend
  5. Idempotency KeysPossible responsesResend

Powiązane procedury

Czy awaria e-maili konta wpływa na wiadomości rejestracyjne, resety haseł, czy na oba?

Poziom ważności: WysokiWstrzymanie wysyłki: Wstrzymaj warunkowo

Traktuj e-maile rejestracyjne i e-maile z resetem hasła jako oddzielne ścieżki usług, dopóki dowody nie wskażą inaczej. Wyzwól każdy przepływ niezależnie i porównaj jego stany wysłania, dostarczenia, opóźnienia i niepowodzenia u dostawcy. To pokaże, czy potwierdzenie rejestracji, odzyskiwanie hasła, czy oba są niedostępne.

Pierwsze 15 minut

  1. Wyzwól szablony rejestracji i resetu hasła oddzielnie i oznacz każdy test według przepływu.
  2. Dla każdego wyzwalacza odróżnij pomyślną akceptację API od przekazania do serwera odbiorcy, porównując zdarzenia wysłania i dostarczenia.
  3. Zbadaj szczegóły zdarzeń opóźnienia dostarczenia i niepowodzenia przed przypisaniem przyczyny.

Teraz

  • Skoryguj problem z nieprawidłowym odbiorcą, poświadczeniami, weryfikacją domeny lub limitem zidentyfikowany w szczegółach zdarzenia niepowodzenia.

Najbliższe 24 godziny

  • Sprawdź, czy ta sama przyczyna zdarzenia niepowodzenia pojawia się w obu przepływach uwierzytelniania, czy tylko w jednym.

Najbliższe 7 dni

  • Udokumentuj odpowiedź dla każdej przyczyny zdarzenia niepowodzenia zaobserwowanej u wdrożonego dostawcy.

Kontrole techniczne

Inżynieria

  • Skoreluj każde żądanie do dostawcy z jego zdarzeniami wysłania i dostarczenia.
  • Uruchom oddzielne kontrolowane testy z etykietami testowymi dostawcy dla rejestracji i resetu hasła.

Wsparcie ESP

  • Przejrzyj szczegóły dołączone do zdarzeń opóźnienia dostarczenia i niepowodzenia dla dotkniętego przepływu.

Kryteria weryfikacji

  • Oddzielne kontrolowane testy rejestracji i resetu hasła osiągają stan dostarczenia u dostawcy, zamiast zatrzymywać się na wysłaniu.
  • Dwa przepływy testowe pozostają rozróżnialne w rekordach zdarzeń, więc nawrót problemu można wyizolować według przepływu.

Kryteria eskalacji

  • Eskaluj do dostawcy e-mail, gdy zdarzenia opóźnienia dostarczenia utrzymują się bez użytecznego szczegółu tymczasowej przyczyny.
  • Eskaluj do zespołu inżynieryjnego będącego właścicielem, gdy zdarzenia niepowodzenia identyfikują jako przyczynę poświadczenia, weryfikację domeny lub limit.

Zapobieganie

  • Utrzymuj oddzielne kontrolowane testy rejestracji i resetu hasła, aby obie ścieżki uwierzytelniania można było sprawdzać niezależnie.

Wpływ na biznes

  • Incydent może zakłócić potwierdzenie rejestracji, reset hasła lub oba te odrębne przepływy uwierzytelniania.

Uwagi dostawcy

  • Nazwy sent, delivered, delivery-delayed i failed w tym runbooku to semantyka zdarzeń Resend; zmapuj równoważne stany dla innego dostawcy.

Otwarte pytania

  • Dotknięta platforma, dostawca, środowisko i identyfikatory wiadomości nie są dostarczone; dokładna przyczyna główna nie może zostać określona na podstawie samego pytania.
  • To, czy dotyczy to rejestracji, resetu hasła, czy obu, musi zostać zmierzone za pomocą oddzielnych kontrolowanych wyzwalaczy i śladów zdarzeń.
  • Nazwy zdarzeń u dostawców i zachowanie ponowień różnią się; zmapuj udokumentowane stany Resend na wdrożonego dostawcę.
Źródła (5)
  1. Email TemplatesAuthentication emailsSupabase
  2. Event TypesEmail Events: email.sent and email.deliveredResend
  3. Event TypesEmail Events: email.delivery_delayedResend
  4. Event TypesEmail Events: email.failedResend
  5. Send Test EmailsUsing labels effectivelyResend

Powiązane procedury

Dlaczego Lovable przestał wysyłać maile transakcyjne?

Poziom ważności: WysokiWstrzymanie wysyłki: Wstrzymaj warunkowo

Najpierw ustal, czy projekt używa zarządzanego e-maila Lovable Cloud, czy oddzielnego konektora Resend. Odłączony projekt traci dostęp do konektora, podczas gdy poczta z własną domeną w Cloud wymaga statusu Verified dla domeny i włączenia e-maila dla projektu. Lovable Cloud ma również godzinny limit dla przestrzeni roboczej (workspace), który nie dotyczy oddzielnego konektora.

Pierwsze 15 minut

  1. Ustal, czy projekt używa konektora Resend, czy zarządzanego e-maila Lovable Cloud.
  2. W przypadku konektora Resend sprawdź klucz API, konfigurację nadawcy lub domeny, powiązanie projektu oraz odrzuconą lub zakończoną niepowodzeniem aktywność.
  3. W przypadku Lovable Cloud potwierdź, że własna domena ma status Verified, a e-mail jest włączony dla projektu.

Teraz

  • Przywróć poprawny klucz API Resend, konfigurację nadawcy lub domeny oraz powiązanie projektu, gdy testy konektora wykażą niezgodność.

Najbliższe 24 godziny

  • Przywróć wysyłanie z własnej domeny Lovable Cloud dopiero po tym, jak domena uzyska status Verified, a e-mail zostanie włączony dla projektu.

Najbliższe 7 dni

  • Udokumentuj oddzielne kontrole powiązania konektora i domeny Cloud, aby przyszłe incydenty były kierowane na właściwą ścieżkę.

Kontrole techniczne

Inżynieria

  • Potwierdź, że dotknięty projekt jest nadal powiązany z zamierzonym połączeniem Resend w przestrzeni roboczej.
  • Zweryfikuj klucz API Resend, konfigurację nadawcy lub domeny oraz odrzuconą lub zakończoną niepowodzeniem aktywność.
  • Jeśli używasz Lovable Cloud, potwierdź status Verified domeny i włączenie e-maila w projekcie.

Wsparcie ESP

  • Przejrzyj powiązane konto Resend pod kątem odrzuconej lub zakończonej niepowodzeniem aktywności związanej z projektem.

Kryteria weryfikacji

  • Nowy test konektora pojawia się na zamierzonym koncie Resend bez odrzuconej lub zakończonej niepowodzeniem aktywności.
  • Test Lovable Cloud jest wysyłany dopiero po tym, jak własna domena pokaże status Verified, a e-mail w projekcie jest włączony.

Kryteria eskalacji

  • Eskaluj powtarzalny błąd platformy lub brakujące obejście do wsparcia Lovable i korzystaj ze strony statusu Lovable, aby uzyskać aktualizacje dotyczące incydentów na całej platformie.

Zapobieganie

  • Rejestruj, które projekty są powiązane z konektorem Resend w przestrzeni roboczej i traktuj odłączenie jako usunięcie dostępu do e-maila.
  • Monitoruj weryfikację domeny Lovable Cloud i włączenie e-maila w projekcie jako oddzielne kontrole.

Wpływ na biznes

  • Odłączony konektor Resend odbiera projektowi dostęp do tego połączenia e-mailowego.
  • Poczta z własną domeną Lovable Cloud wymaga zarówno zweryfikowanej domeny, jak i włączonego e-maila dla projektu.

Uwagi dostawcy

  • Zarządzany e-mail Lovable Cloud jest udokumentowany na poziomie 100 wiadomości na godzinę na przestrzeń roboczą; ten limit nie dotyczy oddzielnego konektora Resend.

Otwarte pytania

  • Pytanie nie określa, czy aplikacja używa zarządzanego e-maila Lovable Cloud, czy oddzielnego konektora Resend; ich kontrole i logi się różnią.
  • Nie dostarczono logów projektu, stanu konektora, statusu domeny, błędu HTTP, stanu limitu ani identyfikatora wiadomości dostawcy, więc dokładna przyczyna jest nieznana.
  • Awarii specyficznej dla dzierżawcy (tenant) nie można przypisać do incydentu w całym Lovable bez jednoczesnych dowodów w postaci statusu.
Źródła (6)
  1. Connect your app to ResendHow Resend connections workLovable
  2. Connect your app to ResendFAQ and Limitations: emails are not sendingLovable
  3. Connect your app to ResendHow to unlink projects from a connectionLovable
  4. Send branded emails from your own domainEmail domain scope and Troubleshooting: Emails are not sendingLovable
  5. Send branded emails from your own domainAvailability and usage; TroubleshootingLovable
  6. Support policyScope and ChannelsLovable

Powiązane procedury

Dlaczego e-maile OTP lub weryfikacyjne docierają za późno?

Poziom ważności: WysokiWstrzymanie wysyłki: Wstrzymaj warunkowo

Zlokalizuj opóźnienie między akceptacją API przez dostawcę a przekazaniem do serwera odbiorcy, zanim zmienisz ustawienia OTP. Porównaj znaczniki czasu wysłania, opóźnienia dostarczenia i dostarczenia ze skonfigurowanym czasem wygaśnięcia OTP w projekcie. Jednogodzinny czas wygaśnięcia w Supabase to domyślne ustawienie hostowane, a nie uniwersalny cel.

Pierwsze 15 minut

  1. Skoreluj znaczniki czasu akceptacji API, wysłania, opóźnienia dostarczenia i dostarczenia dla kontrolowanych żądań OTP.
  2. Porównaj zmierzony czas przekazania ze skonfigurowanym czasem wygaśnięcia OTP w projekcie, zamiast zakładać domyślne ustawienie hostowane.

Teraz

  • Użyj Send Email Auth Hook w Supabase, aby kolejkować e-maile uwierzytelniające, gdy skoki ruchu przyczyniają się do opóźnień.

Najbliższe 24 godziny

  • Skonfiguruj kolejkę Send Email Auth Hook, aby wygładzić obserwowane skoki liczby e-maili uwierzytelniających.

Najbliższe 7 dni

  • Rozważ kierowanie Send Email Auth Hook przez wiele usług wysyłkowych w celu zwiększenia niezawodności.

Kontrole techniczne

Inżynieria

  • Zmierz interwał od wysłania przez dostawcę do dostarczenia dla każdego kontrolowanego żądania OTP.
  • Odczytaj wdrożony interwał żądań i czas wygaśnięcia OTP zamiast zakładać domyślne 60 sekund i jedną godzinę.

Wsparcie ESP

  • Zbadaj szczegóły zdarzeń opóźnienia dostarczenia i niepowodzenia dla poszkodowanych odbiorców.

Kryteria weryfikacji

  • Kontrolowane żądania osiągają zdarzenie dostarczenia przed skonfigurowanym czasem wygaśnięcia OTP w projekcie.
  • Zmierzony interwał od wysłania do dostarczenia pozostaje widoczny dla każdego kontrolowanego żądania OTP.

Kryteria eskalacji

  • Eskaluj do dostawcy, gdy zdarzenia opóźnienia dostarczenia utrzymują się, a szczegóły ich tymczasowej przyczyny nie wyjaśniają powrotu do normy.
  • Eskaluj do inżynierii, gdy zdarzenia niepowodzenia identyfikują błędy odbiorcy, poświadczeń, weryfikacji domeny lub limitu.

Zapobieganie

  • Utrzymuj skonfigurowany interwał żądań jako jawny, zamiast zakładać domyślne 60 sekund hostowane przez Supabase.
  • Używaj zakolejkowanego Send Email Auth Hook i, w stosownych przypadkach, wielu usług wysyłkowych, aby wygładzać skoki ruchu i poprawiać niezawodność.

Wpływ na biznes

  • OTP, które dociera po skonfigurowanym czasie wygaśnięcia, nie może zostać użyte w tym oknie ważności.

Uwagi dostawcy

  • Jednogodzinny czas wygaśnięcia OTP i 60-sekundowy interwał żądań to domyślne ustawienia hostowane Supabase; konfiguracja projektu może się różnić.

Otwarte pytania

  • Wdrożony dostawca uwierzytelniania, skonfigurowany czas życia OTP, znaczniki czasu kolejki, zdarzenia dostawcy, dostawca odbiorcy i obserwowany rozkład opóźnień nie zostały podane.
  • Jednogodzinny czas wygaśnięcia i 60-sekundowe okno żądań to domyślne wartości Supabase, a nie uniwersalne wymagania OTP.
  • Nierozstrzygnięte jest, czy opóźnienie występuje przed akceptacją przez dostawcę, podczas dostarczania przez dostawcę, czy po przekazaniu do serwera odbiorcy.
Źródła (6)
  1. Event TypesEmail Events: email.sent and email.deliveredResend
  2. Event TypesEmail Events: email.delivery_delayedResend
  3. Passwordless email loginsEmail OTP request behaviorSupabase
  4. Passwordless email loginsEmail OTP request behaviorSupabase
  5. Send emails with custom SMTPUse the Send Email Auth Hook for more controlSupabase
  6. Event TypesEmail Events: email.failedResend

Powiązane procedury

Dlaczego e-maile z weryfikacją logowania Salesforce nie docierają do użytkowników?

Poziom ważności: WysokiWstrzymanie wysyłki: Kontynuuj wysyłkę

Zacznij od Salesforce Email Log Files, aby ustalić, czy wiadomość z weryfikacją logowania została wysłana, czy zakończyła się niepowodzeniem. Traktuj weryfikację logowania z noreply[at]salesforce.com jako odrębny strumień od resetu hasła z support[at]salesforce.com. Unikaj powtarzających się żądań kodu podczas zbierania dowodów, ponieważ przepływ weryfikacji ma limit żądań na godzinę.

Pierwsze 15 minut

  1. Potwierdź, czy brakujący strumień to weryfikacja logowania z noreply[at]salesforce.com, a nie reset hasła z support[at]salesforce.com.
  2. Zażądaj Salesforce Email Log Files, aby ustalić, czy wiadomość weryfikacyjna została wysłana, czy zakończyła się niepowodzeniem.
  3. Sprawdź Login History i Identity Verification History pod kątem wyzwania i miejsca docelowego, do którego Salesforce próbował wysłać wiadomość.

Teraz

  • Gdy filtrowana jest tylko weryfikacja logowania, prześledź i dodaj noreply[at]salesforce.com do listy dozwolonych dla tego strumienia.

Najbliższe 24 godziny

  • Użyj śledzenia Message-ID lub nadawcy, aby potwierdzić, że zmiana na liście dozwolonych wpływa na zamierzony strumień weryfikacji.

Najbliższe 7 dni

  • Udokumentuj odrębnych nadawców Salesforce i limit pięciu żądań kodu weryfikacyjnego na godzinę w runbooku wsparcia.

Kontrole techniczne

Inżynieria

  • Dopasuj wyzwanie logowania w Login History lub Identity Verification History do wpisu w logu e-mail.

IT / DNS

  • Gdy logi Salesforce pokazują dostarczenie do serwera odbiorcy, prześledź Message-ID przez filtrowanie u odbiorcy.
  • Dodaj noreply[at]salesforce.com do listy dozwolonych (allowlist) tylko wtedy, gdy filtrowany jest wyłącznie ten strumień weryfikacji logowania.

Kryteria weryfikacji

  • Salesforce Email Log Files pokazują, czy kontrolowana wiadomość weryfikacyjna została wysłana, czy zakończyła się niepowodzeniem.
  • Jeśli log pokazuje dostarczenie do serwera odbiorcy, śledzenie po stronie odbiorcy identyfikuje późniejszą decyzję filtra.

Kryteria eskalacji

  • Eskaluj do administratora poczty odbiorcy, gdy logi Salesforce pokazują dostarczenie do serwera odbiorcy, ale wiadomość jest nadal filtrowana.
  • Eskaluj przypadek filtrowania specyficznego dla nadawcy, gdy śledzenie Message-ID i dodanie noreply[at]salesforce.com do listy dozwolonych nie przywracają strumienia weryfikacji logowania.

Zapobieganie

  • Monitoruj strumień weryfikacji noreply[at]salesforce.com oddzielnie od strumienia resetu hasła support[at]salesforce.com.
  • Zachowaj logi e-mail Salesforce i historię wyzwań, aby można było odróżnić przekazanie wiadomości od filtrowania przez odbiorcę.

Wpływ na biznes

  • Filtrowanie strumienia weryfikacji logowania noreply[at]salesforce.com może uniemożliwić użytkownikom otrzymanie tej ścieżki weryfikacji, nawet jeśli maile z resetem hasła nie są dotknięte problemem.

Uwagi dostawcy

  • Salesforce dokumentuje noreply[at]salesforce.com dla weryfikacji logowania, support[at]salesforce.com dla resetu hasła oraz limit pięciu żądań kodu na godzinę dla opisanego przepływu weryfikacji.

Otwarte pytania

  • Salesforce Email Log Files, Login History, Identity Verification History, Message-ID, domena odbiorcy i werdykt filtra nie zostały podane.
  • Adresy nadawców Salesforce i limity kodów są ograniczone do udokumentowanych przepływów i mogą się różnić w zależności od produktu lub metody weryfikacji.
  • Bez wyniku przekazania przez Salesforce incydent nie może zostać jeszcze przypisany do wysyłki Salesforce ani do systemu pocztowego odbiorcy.
Źródła (6)
  1. Salesforce Login Verification Emails Not ReceivedImportant distinctionSalesforce
  2. Salesforce Login Verification Emails Not ReceivedResolution, Step 1: Request and Review Salesforce Email Log FilesSalesforce
  3. Salesforce Login Verification Emails Not ReceivedResolution, Step 2: Confirm If Salesforce Delivered the Email SuccessfullySalesforce
  4. Salesforce Login Verification Emails Not ReceivedResolution, Steps 2-3Salesforce
  5. System Verification Codes Not Received for SalesforceEmail Verification codesSalesforce
  6. Admin Guide: Resolve User Login ProblemsScenario 2: Verification IssuesSalesforce

Powiązane procedury

Dlaczego klient nie otrzymał e-maila z potwierdzeniem zamówienia?

Poziom ważności: ŚredniWstrzymanie wysyłki: Wstrzymaj warunkowo

Traktuj brakujące potwierdzenie zamówienia jako problem z identyfikowalnością przed ponownym wysłaniem. Dopasuj wiadomość wyzwoloną przez zamówienie do stanów wysłania i dostarczenia u dostawcy, aby zlokalizować, czy nastąpiło przekazanie. Jeśli wymagane jest ponowienie, użyj idempotencyjności, aby dochodzenie nie utworzyło zduplikowanego potwierdzenia.

Pierwsze 15 minut

  1. Dopasuj zdarzenie zamówienia do zdarzenia wysłania u dostawcy, a następnie sprawdź przekazanie do serwera odbiorcy (dostarczenie).
  2. Sprawdź, czy odbiorca jest wykluczony (suppressed) po twardym odrzuceniu lub skardze spamowej.
  3. Przed jakimkolwiek ponowieniem ustal, czy ważny klucz idempotencyjności może zapobiec zduplikowanemu żądaniu.

Teraz

  • Zidentyfikuj i skoryguj oryginalną przyczynę twardego odrzucenia lub skargi przed zmianą wykluczonego odbiorcy.

Najbliższe 24 godziny

  • Usuń wykluczenie dopiero po potwierdzeniu adresu i naprawieniu podstawowej przyczyny.

Najbliższe 7 dni

  • Sprawdź, czy rozwiązani odbiorcy są ponownie wykluczani, co wskazuje, że pierwotna przyczyna nadal występuje.

Kontrole techniczne

Inżynieria

  • Skoreluj zdarzenie zamówienia ze stanami wysłania i dostarczenia u dostawcy.
  • Potwierdź, czy oryginalne żądanie używało klucza idempotencyjności i czy jego 24-godzinne okno przechowywania nadal obowiązuje.

Dostarczalność

  • Zbadaj stan wykluczenia odbiorcy oraz przyczynę twardego odrzucenia lub skargi.

Kryteria weryfikacji

  • Kontrolowane potwierdzenie zamówienia osiąga stan dostarczenia u dostawcy, zamiast zatrzymywać się na wysłaniu.
  • Adresy testowe dostawcy odtwarzają wyniki dostarczenia, odrzucenia, skargi i wykluczenia bez użycia fałszywych odbiorców.

Kryteria eskalacji

  • Eskaluj do dostawcy, gdy wiadomość ma zdarzenie wysłania, ale nie ma wyjaśnialnego zdarzenia dostarczenia lub końcowego.
  • Eskaluj do zespołu dostarczalności, gdy przyczyny wykluczenia nie można skorygować bez ryzyka kolejnego twardego odrzucenia lub skargi.

Zapobieganie

  • Używaj klucza idempotencyjności Resend w ponawianych żądaniach potwierdzenia zamówienia w ramach jego 24-godzinnego okna przechowywania.
  • Testuj ścieżki dostarczenia, odrzucenia, skargi i wykluczenia za pomocą udokumentowanych adresów testowych dostawcy.
  • Wymagaj naprawienia pierwotnej przyczyny odrzucenia lub skargi przed usunięciem wykluczenia.

Wpływ na biznes

  • Brakujące potwierdzenie zamówienia jeden-do-jednego zakłóca wiadomość transakcyjną wyzwalaną przez zakup klienta.

Uwagi dostawcy

  • Stany wysłania i dostarczenia w Resend, regionalne wykluczenia, adresy testowe i 24-godzinne okno idempotencyjności to kontrole specyficzne dla dostawcy.

Otwarte pytania

  • ID zdarzenia zamówienia, adres odbiorcy, ID wiadomości dostawcy, odpowiedź API, zdarzenia dostarczenia i stan wykluczenia nie zostały podane.
  • Dokładny dostawca jest nieznany; fakty dotyczące Resend i Postmark opisują specyficzne dla dostawcy przykłady stanu i klasyfikacji.
  • Przekazanie do serwera odbiorcy nie dowodzi widoczności w skrzynce odbiorczej ani przeczytania przez klienta.
Źródła (6)
  1. IntroductionThings you should know: Message StreamsPostmark
  2. Event TypesEmail Events: email.sent and email.deliveredResend
  3. Email SuppressionsWhat caused the suppression and Suppression ScopeResend
  4. Send EmailHeaders: Idempotency-KeyResend
  5. Send Test EmailsHow to send test emailsResend
  6. Email SuppressionsViewing Suppression Details and removal guidanceResend

Powiązane procedury

Dlaczego API OTP na środowisku staging zwraca sukces, gdy żaden e-mail nie jest odbierany?

Poziom ważności: ŚredniWstrzymanie wysyłki: Wstrzymaj warunkowo

Sukces API OTP nie jest dowodem na to, że serwer pocztowy odbiorcy zaakceptował e-mail. W projekcie stagingowym Supabase najpierw sprawdź autoryzację odbiorcy dla domyślnego SMTP i odpowiedzi dotyczące limitów (rate-limit), a następnie śledź zdarzenia wysłania i dostarczenia w dół potoku. Wbudowana usługa SMTP działa na zasadzie "best-effort" i jest przeznaczona do użytku nieprodukcyjnego.

Pierwsze 15 minut

  1. Potwierdź, że adres odbiorcy jest wstępnie autoryzowany jako członek zespołu organizacji projektu, gdy używane jest domyślne SMTP.
  2. Sprawdź, czy Supabase zwróciło HTTP 429 i czy ma zastosowanie limit wbudowanego dostawcy dla całego projektu.
  3. Prześledź żądanie poza sukces API do zdarzeń wysłania i dostarczenia w dół potoku.

Teraz

  • Zdecyduj, czy stagingowa ścieżka uwierzytelniania wymaga niezawodności niestandardowego SMTP zamiast domyślnego SMTP.

Najbliższe 24 godziny

  • Skonfiguruj niestandardowe SMTP, gdy ścieżka e-maila uwierzytelniającego jest produkcyjna lub w inny sposób krytyczna.

Najbliższe 7 dni

  • Utrzymuj krytyczne e-maile uwierzytelniające na ścieżce niestandardowego SMTP zalecanej przez Supabase.

Kontrole techniczne

Inżynieria

  • Zweryfikuj autoryzację zespołu projektu dla odbiorcy testowego, gdy skonfigurowane jest domyślne SMTP.
  • Zarejestruj odpowiedzi HTTP 429 i aktywny limit wbudowanego dostawcy.
  • Skoreluj żądanie OTP ze zdarzeniami wysłania i dostarczenia w dół potoku, zamiast zatrzymywać się na sukcesie API.

Kryteria weryfikacji

  • Kontrolowane żądanie OTP osiąga zdarzenie dostarczenia w dół potoku, a nie tylko stan wysłania lub sukcesu API.
  • Krytyczna ścieżka używa skonfigurowanej usługi niestandardowego SMTP zamiast domyślnego SMTP Supabase.

Kryteria eskalacji

  • Eskaluj do właściciela projektu, gdy krytyczna ścieżka uwierzytelniania nadal zależy od domyślnego SMTP typu "best-effort".
  • Eskaluj konfigurację e-mail, gdy niestandardowe SMTP jest wymagane, ale jeszcze nieobecne dla krytycznego przepływu.

Zapobieganie

  • Śledź limit dwóch wiadomości na godzinę wbudowanego dostawcy dla całego projektu wszędzie tam, gdzie pozostaje on włączony.
  • Używaj niestandardowego SMTP do produkcyjnych i innych krytycznych e-maili uwierzytelniających Supabase.

Wpływ na biznes

  • Przepływ stagingowy, który polega na domyślnym SMTP typu "best-effort", nie może używać odpowiedzi o sukcesie API jako gwarancji przekazania do serwera odbiorcy w dół potoku.

Uwagi dostawcy

  • Domyślne SMTP Supabase ogranicza odbiorców do autoryzowanych adresów zespołu projektu, działa na zasadzie "best-effort" i jest przeznaczone wyłącznie do użytku nieprodukcyjnego.

Otwarte pytania

  • API OTP i dostawca e-mail nie są zidentyfikowani; zachowania Supabase i Resend nie można zakładać dla innego stosu technologicznego.
  • Autoryzacja zespołu projektu dla odbiorcy, bieżąca odpowiedź dotycząca limitu, konfiguracja SMTP i zdarzenia dostarczenia w dół potoku nie zostały podane.
  • Sama odpowiedź o sukcesie API nie pozwala zidentyfikować, gdzie zatrzymał się potok e-mail w dół.
Źródła (6)
  1. Send emails with custom SMTPDefault SMTP restrictions: Send messages only to pre-authorized addressesSupabase
  2. Rate limitsRate-limit table: endpoints that trigger email sendsSupabase
  3. Send emails with custom SMTPDefault SMTP restrictions: No SLA guaranteeSupabase
  4. Event TypesEmail Events: email.sent and email.deliveredResend
  5. Send emails with custom SMTPDefault SMTP restrictions and custom SMTP setupSupabase
  6. Rate limitsRate-limit behaviorSupabase

Powiązane procedury

Jak powinniśmy zapewnić niezawodność e-maili transakcyjnych w naszym SaaS?

Poziom ważności: WysokiWstrzymanie wysyłki: Wstrzymaj warunkowo

Traktuj akceptację API jako próbę, a nie dowód na to, że klient otrzymał wiadomość, i monitoruj zdarzenia końcowego dostarczenia, odrzucenia, skargi i opóźnienia. Tam, gdzie używany jest Resend, używaj tego samego klucza idempotencyjności i ładunku dla ponowień w ramach jego 24-godzinnego okna przechowywania. Dla wrażliwych na czas e-maili Amazon SES, skonfiguruj okno dostarczania tak, aby pasowało do okresu ważności tokenu i biznesowego okresu ważności w aplikacji.

Pierwsze 15 minut

  1. Oddziel udane żądania API od zdarzeń dostarczenia, odrzucenia, skargi i opóźnienia dla dotkniętego strumienia wiadomości.
  2. Sprawdź, czy każde ponowienie przestrzegało kontraktu idempotencyjności wdrożonego dostawcy; dla Resend potwierdź, że ten sam klucz i ładunek zostały ponownie użyte w ciągu 24 godzin.

Teraz

  • Dodaj obsługiwaną przez dostawcę idempotencyjność do powtarzających się żądań wysyłki.
  • Deduplikuj zdarzenia webhooka SendGrid według sg_event_id, gdy jest obecny.

Najbliższe 24 godziny

  • Ustaw maksymalny czas dostarczania Amazon SES dla poczty wrażliwej na czas na okres ważności w aplikacji.

Najbliższe 7 dni

  • Oddziel wiadomości transakcyjne jeden-do-jednego od newsletterów, ogłoszeń i innych strumieni masowych, używając równoważnych kontroli wdrożonego dostawcy.

Kontrole techniczne

Inżynieria

  • Potwierdź, że ponowienia Resend używają tego samego klucza idempotencyjności i ładunku w udokumentowanym 24-godzinnym oknie.
  • Deduplikuj ładunki zdarzeń SendGrid Event Webhook za pomocą sg_event_id, gdy tylko ten identyfikator jest obecny.
  • Sprawdź, czy endpoint webhooka SendGrid zwracał odpowiedzi inne niż 2xx i uwzględnij ponowienia w rosnących odstępach czasu przez maksymalnie 24 godziny.
  • Odróżnij akceptację wysłania Amazon SES od zdarzeń dostarczenia, odrzucenia, skargi i opóźnienia.

Kryteria weryfikacji

  • Testowa wysyłka generuje wynik końcowego dostarczenia, odrzucenia, skargi lub opóźnienia, odrębny od akceptacji API.
  • Monitorowanie raportuje zdarzenia końcowego dostarczenia, odrzucenia, skargi i opóźnienia dla strumienia transakcyjnego, zamiast liczyć akceptację API jako dostarczenie do klienta.

Kryteria eskalacji

  • Eskaluj do ESP i inżynierii, gdy zaakceptowanym wysyłkom brakuje wyniku końcowego dostarczenia, odrzucenia, skargi lub opóźnienia od dostawcy.

Zapobieganie

  • Używaj idempotentnych żądań wysyłki i deduplikuj wywołania zwrotne zdarzeń od dostawcy.
  • Utrzymuj strumienie transakcyjne oddzielnie od poczty masowej i alertuj o wynikach końcowego dostarczenia, odrzucenia, skargi i opóźnienia.

Wpływ na biznes

  • Wrażliwe na czas wiadomości, takie jak e-mail z jednorazowym hasłem, mogą dotrzeć poza użytecznym okresem ważności w aplikacji, chyba że okno dostarczania jest odpowiednio dostosowane.
  • Traktowanie akceptacji API jako dostarczenia do klienta może ukryć odrzucenie, skargę, opóźnienie lub brakujące wyniki końcowego dostarczenia.

Uwagi dostawcy

  • SendGrid ponawia POST Event Webhook po odpowiedzi innej niż 2xx w rosnących odstępach czasu przez maksymalnie 24 godziny.

Otwarte pytania

  • Wdrożony ESP, jego kontrakt idempotencyjności, gwarancje dostarczania webhooków, stan wykluczenia i możliwości failover nie są dostępne.
  • Biznesowe SLO, okna ważności tokenów, akceptowalne ryzyko duplikatów i zaobserwowane luki w zdarzeniach muszą zostać dostarczone przez właściciela SaaS.
Źródła (7)
  1. Idempotency KeysHow does it work?Resend
  2. Twilio SendGrid Event Webhook OverviewDuplicate eventsTwilio SendGrid
  3. Twilio SendGrid Event Webhook OverviewGeneral troubleshootingTwilio SendGrid
  4. Creating Amazon SES event destinationsSelect event typesAmazon SES
  5. Creating configuration sets in SESMaximum delivery durationAmazon SES
  6. Postmark Developer DocumentationThings you should know: Message StreamsPostmark
  7. Creating Amazon SES event destinationsSending and delivery event typesAmazon SES

Powiązane procedury

Wojtek BlazalekWojtek BlazalekEkspert ds. dostarczalności e-mail

Masz incydent z pocztą? Pomagam zespołom przywrócić dostarczanie, reputację i uwierzytelnianie do normy.

Praktyczna praca nad dostarczalnością dla firm wysyłających na dużą skalę

Umów bezpłatną rozmowę diagnostycznąZobacz usługi
Need help? Contact us!