Tylko po stronie serwera
Klucz produkcyjny w aplikacji webowej lub mobilnej jest kluczem publicznym: dostarczony kod jest czytelny, a minifikacja to nie szyfrowanie. Wywołuj API ze swojego serwera.
Developers
Jak punkt końcowy wyceny jest chroniony dziś, jak będą wydawane klucze oraz zasady postępowania, które pozwalają uniknąć klasycznego scenariusza: klucza produkcyjnego w publicznym repozytorium.
Punkt końcowy wyceny jest otwarty i nie wymaga klucza. Wybór jest do obrony: wycena ani nie odczytuje, ani nie zapisuje danych osobowych, a integracja musi być w stanie pokazać cenę, zanim konto istnieje.
Czego jeszcze nie ma
Żaden limit szybkości nie jest dziś stosowany na tym punkcie końcowym. Wolelibyśmy to napisać, niż wyświetlać tabelę limitów, która nie jest egzekwowana: w dniu, w którym limit powstanie, zostanie opublikowany tutaj wraz z wartościami, nagłówkami odpowiedzi i kodem zwracanym po przekroczeniu.
Klucz niesie swoje środowisko w prefiksie. Klucz testowy, który działałby w produkcji, byłby wadą projektową: umożliwia prawdziwy transfer, który myślałeś, że symulujesz.
Authorization: Bearer sk_live_9f2c4b1e8a7d3f60c5b2a1e9d8c7b6a5| Prefiks | Środowisko | Co umożliwia |
|---|---|---|
sk_test_ | Piaskownica | Każda operacja na danych symulowanych. Bez rzeczywistego przepływu środków, bez kontaktu z instytucją płatniczą. Opóźnienia kanałów płatności są symulowane, aby Twoje testy napotykały te same czasy oczekiwania co w produkcji. |
sk_live_ | Produkcja | Rzeczywiste operacje. Zamówienia utworzone za pomocą tego klucza przenoszą środki: nie może on nigdy opuścić Twojego serwera. |
whsec_ | Oba | Tajny klucz podpisu webhooków. Nigdy nie jest używany do wywoływania API: służy wyłącznie do weryfikacji, że to, co otrzymujesz, rzeczywiście pochodzi od nas. |
Żadna z nich nie jest oryginalna. Wszystkie są regularnie łamane i właśnie w ten sposób dochodzi do wycieków kluczy.
Klucz produkcyjny w aplikacji webowej lub mobilnej jest kluczem publicznym: dostarczony kod jest czytelny, a minifikacja to nie szyfrowanie. Wywołuj API ze swojego serwera.
Jako parametr zapytania klucz trafia do logów serwera, nagłówków referrer i historii przeglądarki. Nagłówek Authorization istnieje właśnie po to.
Klucz współdzielony przez trzy usługi nie może zostać unieważniony bez zablokowania wszystkich trzech. Jeden klucz na zastosowanie sprawia, że unieważnienie jest bezbolesne.
Klucz wypchnięty do repozytorium przez pomyłkę, nawet prywatnego, nawet później usunięty, jest skompromitowany: historia go zachowuje, a roboty indeksujące czytają publiczne repozytoria w ciągu kilku minut.
Dwa klucze ważne jednocześnie pozwalają na rotację bez okna niedostępności.