Żądania uwierzytelniania w AMP dla poczty e-mail

Dynamiczne, spersonalizowane treści e-maili często wymagają uwierzytelnienia użytkownika. Aby jednak chronić dane użytkowników, wszystkie żądania HTTP wysyłane z e-maili AMP w Gmailu są przekazywane przez serwer proxy i pozbawiane plików cookie.

Do uwierzytelniania żądań wysyłanych z e-maili AMP możesz używać tokenów dostępu.

Tokeny dostępu

Tokenów dostępu możesz używać do uwierzytelniania użytkownika. Tokeny dostępu są dostarczane i sprawdzane przez nadawcę e-maila. Nadawca używa tokenów, aby mieć pewność, że tylko osoby mające dostęp do e-maila AMP mogą wysyłać żądania zawarte w tym e-mailu. Tokeny dostępu muszą być kryptograficznie bezpieczne oraz ograniczone czasowo i zakresowo. Są one zawarte w adresie URL żądania.

Ten przykład pokazuje, jak za pomocą pola <amp-list> wyświetlać dane uwierzytelnione:

<amp-list src="https://example.com/endpoint?token=REPLACE_WITH_YOUR_ACCESS_TOKEN"
  height="300">
  <template type="amp-mustache">
    ...
  </template>
</amp-list>

Podobnie w przypadku korzystania z <amp-form> umieść token dostępu w action-xhr adresie URL.

<form action-xhr="https://example.com/endpoint?token=REPLACE_WITH_YOUR_ACCESS_TOKEN" method="post">
  <input type="text" name="data">
  <input type="submit" value="Send">
</form>

Przykład

W tym przykładzie rozważamy hipotetyczną usługę do robienia notatek, która umożliwia zalogowanym użytkownikom dodawanie notatek do konta i wyświetlanie ich w późniejszym czasie. Usługa chce wysłać e-maila do użytkownika jane@example.com, który zawiera listę notatek, które wcześniej utworzył. Lista notatek bieżącego użytkownika jest dostępna w formacie JSON w punkcie końcowym https://example.com/personal-notes.

Przed wysłaniem e-maila usługa generuje kryptograficznie bezpieczny token dostępu do jane@example.com: A3a4roX9x o ograniczonym zakresie użycia. Token dostępu jest uwzględniony w nazwie pola exampletoken w zapytaniu URL:

<amp-list src="https://example.com/personal-notes?exampletoken=A3a4roX9x" height="300">
  <template type="amp-mustache">
    <p>{{note}}</p>
  </template>
</amp-list>

Punkt końcowy https://example.com/personal-notes odpowiada za weryfikację parametru exampletoken i znalezienie użytkownika powiązanego z tokenem.

Więcej informacji znajdziesz w artykule Tokeny dostępu do ograniczonego użytku.

identyfikować użytkownika w samym adresie URL.