Przejdź do treści
Narzędzia i Platformy

OAuth, tokeny API i wklejone ciasteczka: co naprawdę pozwala zrobić każde z nich

Zaktualizowano 8 min czytania
MK

Marta Kowalczyk

Agency Operations Lead

Każde narzędzie, które dotyka twoich kont reklamowych, musiało jakoś wejść, a drzwi są tylko troje. Różnica między oauth tokeny i ciasteczka konta reklamowe decyduje o tym, do czego to narzędzie sięga, co może zrobić w złym dniu i jak szybko da się je odciąć. Prawie nikt nie sprawdza, którymi drzwiami weszło narzędzie, zanim je podłączy — a potem ocenia je po panelu. Ten artykuł to ta nudna część pod spodem: co naprawdę daje każda forma dostępu, jak się ją odbiera i dlaczego sposób, w jaki oprogramowanie trafia na twoją maszynę, należy do tej samej rozmowy.

Krótka odpowiedź: OAuth przekazuje aplikacji token o wąskim zakresie, który da się odebrać, i nigdy nie pokazuje jej twojego hasła. Surowy token API to klucz bez zapisu, kto go trzyma. Wklejone ciasteczko sesji to w ogóle nie dostęp, tylko twoja zduplikowana sesja — z pełnią twoich uprawnień i bez możliwości odebrania jej osobno. Wokół wszystkich trzech stoi pytanie, co działa na twojej maszynie: każdy samoaktualizujący się komponent dziedziczy uprawnienia, które mu nadałeś, więc użyteczne pytanie nie brzmi «czy ufam temu dostawcy», tylko «jak daleko to sięga, jeśli aktualizacja zrobi coś, czego nie przewidziałem».


Troje drzwi

1. OAuth: delegowany, wąski, odwoływalny

Przepływ OAuth ma kształt, który warto rozpoznawać, bo ten kształt jest własnością bezpieczeństwa.

  1. Narzędzie odsyła cię do domeny platformy, żebyś się zalogował. Hasło wpisujesz w platformę, nie w narzędzie.
  2. Platforma pokazuje nazwaną listę żądanych uprawnień: zarządzanie kampaniami, odczyt raportów, wypisanie zasobów firmowych.
  3. Zatwierdzasz, a platforma wydaje narzędziu token. Token niesie te uprawnienia i nic poza nimi.
  4. Zgoda pojawia się na twoim koncie, wśród połączonych aplikacji lub integracji firmowych, z nazwą.
  5. Możesz ją usunąć z tego ekranu kiedy chcesz, a narzędzie traci dostęp przy następnym wywołaniu.

Cztery z tych pięciu kroków istnieją dla twojej korzyści, nie dla korzyści narzędzia. Hasło nie opuszcza platformy. Lista uprawnień zostaje zapisana. Zgoda trafia do ewidencji. Usunięcie to jeden ekran i nie rusza niczego innego.

2. Surowy token API: klucz i żadnego zapisu, kto go trzyma

Niektóre narzędzia pomijają przepływ i proszą, żebyś sam wygenerował token i go wkleił. Token wciąż może mieć zakres — to zależy od tego, jak został wydany — ale trzy z pięciu powyższych własności znikają.

Nie ma ekranu zgody, który zapisuje, o co poproszono. Zwykle nie ma wpisu na liście połączonych aplikacji, więc pół roku później nic w twoim koncie nie mówi, że to narzędzie istnieje. I odbieranie dostępu przestaje być czynnością per narzędzie: trzeba wrócić tam, gdzie token został wydany, i tam go skasować, co w praktyce znaczy pamiętać, że się go wydało.

Wklejony token nie jest automatycznie niebezpieczny. Jest poza ewidencją, a to inny i wolniejszy problem. Ewidencje oparte na pamięci rozsypują się, a rozsypywanie zostaje niewidoczne, dopóki audyt albo incydent nie wymusi pytania.

3. Wklejone ciasteczko sesji: ty, zduplikowany

To zasługuje na poważne spojrzenie i jest omówione szerzej w naszym tekście o bezpieczeństwie tokenów i ciasteczek Facebooka.

Ciasteczko sesji to to, co przeglądarka trzyma po zalogowaniu. To nie jest delegowane uprawnienie: to jest zalogowana sesja. Kto ma kopię, jest nie do odróżnienia od ciebie — te same uprawnienia, ten sam zasięg — dopóki sesja żyje.

To znaczy, że nie ma zakresu do zawężenia, bo sesja nie ma zakresu. Nie ma wpisu na ekranie uprawnień, bo niczego nie udzielono. I nie ma odbierania osobno, bo nie ma nic osobnego do odebrania: jedyną dźwignią jest zakończenie sesji, co wylogowuje cię ze wszystkich innych miejsc, w których jej używałeś.

Troje drzwi obok siebie

Zgoda OAuthSurowy token APIWklejone ciasteczko sesji
Co dostaje narzędzieToken o wąskim zakresieKlucz, z zakresem lub bezKopię twojej żywej sesji
Czy widzi twoje hasłoNieNieNie, ale go nie potrzebuje
Czy jest na liście połączonych aplikacjiTak, z nazwąZwykle nieNie
Czy da się zawęzić uprawnieniaTak, przy zgodzieCzasem, przy wydaniuNie
Jak to odbieraszUsuwasz aplikację, jeden ekranUnieważniasz token tam, gdzie powstałKończysz sesję, wszędzie
Co robi zmiana hasłaNic, zgoda zostajeNicKończy je, razem z innymi sesjami
Jak daleko sięgaTylko do zatwierdzonych uprawnieńDo tego, z czym został wydanyDo wszystkiego, dokąd sięgasz ty

Nic z tego nie mówi, które narzędzia są dobre. Sporo sprawnego oprogramowania prosi o wklejone ciasteczko, bo platforma, którą automatyzuje, nigdy nie wypuściła publicznego API. Rzecz w tym, że te trzy wiersze zachowują się inaczej w najgorszym dniu i warto wiedzieć, w którym wierszu się jest, zanim ten dzień nadejdzie.


Co naprawdę ogranicza zakres

«Token o wąskim zakresie» bywa używany jako pocieszenie, więc warto być precyzyjnym co do tego, co to pocieszenie obejmuje.

Zakres reklamowy zwykle pozwala czytać dane o wynikach, tworzyć i edytować kampanie oraz wypisywać zasoby firmowe, które zatwierdziłeś. Nie pozwala zmienić twojego hasła, dodać metody logowania, przeczytać prywatnych wiadomości ani sięgnąć do innego produktu używanego na tym samym koncie. Token wydany dla jednej platformy nic nie znaczy na innej.

Czego zakres nie robi: nie czyni dostępu nieszkodliwym. Token z uprawnieniami do zarządzania kampaniami może wydawać pieniądze, bo wydawanie pieniędzy to właśnie zarządzanie kampaniami. Zakres zmniejsza promień rażenia, nie usuwa go. Rozsądne oczekiwanie brzmi «mniejszy niż konto i usuwalny z jednego ekranu», a nie «nic nie może pójść źle».

Dlatego też lista uprawnień na ekranie zgody jest warta dwóch sekund uwagi. Jeśli narzędzie raportowe prosi o uprawnienia do zarządzania zasobami, dysproporcja jest widoczna właśnie tam, raz, i nigdy potem.


Odbieranie dostępu to część, którą wszyscy pomijają

Higiena dostępów przewraca się na końcu, nie na początku. Nadanie to świadomy gest z przyciskiem; odebranie to obowiązek, którego nikt nie wpisuje do kalendarza.

Trzy nawyki załatwiają większość.

Poznaj drogę, zanim będzie potrzebna. Na większości platform połączone aplikacje mieszkają w ustawieniach bezpieczeństwa albo firmowych, wypisane z nazwy i z datą zatwierdzenia. Otwórz ten ekran dzisiaj, kiedy nic się nie dzieje, i przeczytaj go. Lista jest prawie zawsze dłuższa, niż ktokolwiek się spodziewa, a część wpisów należy do narzędzi ocenionych raz i nigdy niewdrożonych.

Odbieraj przy wyjściu, nie «kiedyś». Kiedy narzędzie zostaje odstawione, współpracownik odchodzi albo kończy się test, zgoda powinna zniknąć w tym samym tygodniu. Agencja, o której pisaliśmy, zbudowała całą procedurę odejścia dokładnie wokół tego i sprowadziła ją do jednego kliknięcia — to właściwy odruch: jeśli coś jest uciążliwe, nie wydarzy się.

Pamiętaj, że zmiana hasła to nie odebranie dostępu. Kończy sesje, więc rzeczywiście zabija wklejone ciasteczka. Zwykle nie rusza zgód OAuth ani wydanych tokenów, i to celowo: inaczej każda rotacja hasła rozwalałaby wszystkie integracje, na których się opierasz. Dwa mechanizmy, dwie dźwignie — a mylenie ich to sposób, w jaki «zrotowaliśmy wszystko» okazuje się rotacją jednego z trzech.


Dlaczego kanał aktualizacji należy do obrazu

Teraz część, która nie ma nic wspólnego z reklamą i dotyczy wszystkiego, co instalujesz.

Każdy komponent, który aktualizuje się sam, ma stałą umowę z twoją maszyną: uruchomić to, co łańcuch dystrybucji przyśle następnym razem, bez pytania. Ta umowa nie jest usterką. To powód, dla którego poprawki bezpieczeństwa docierają do ciebie w godzinach, a nie w kwartałach, i zawiera ją każdy poważny produkt: przeglądarki, menedżery haseł, wtyczki środowisk programistycznych, system operacyjny pod nimi wszystkimi.

Kosztem jest to, że zaufanie zostaje udzielone z góry. Więc użyteczne pytanie o zainstalowany komponent nigdy nie brzmi «czy ufam temu dostawcy» — na to odpowiedziałeś, instalując go — tylko jak daleko sięga ten komponent, jeśli aktualizacja zrobi coś, czego nie przewidziałem?

Odpowiedź zawsze ma ten sam kształt: dokładnie tak daleko, jak mu pozwoliłeś, i ani kroku dalej.

  • Dodatek z prawem do odczytu i zmiany danych na wszystkich stronach może czytać i zmieniać dane na wszystkich stronach, także na tych, gdzie jesteś zalogowany.
  • Dodatek ograniczony do jednej domeny zostaje zamknięty w tej domenie.
  • Komponent, który zarządza cennymi, nieodwracalnymi sekretami, sięga do tych sekretów, bo taka jest jego praca.
  • Integracja serwer-serwer bez obecności lokalnej nie ma na twojej maszynie do czego sięgnąć, bo nic nie zostało zainstalowane.

Ostatnia linijka to nie przechwałka, tylko kształt. I to również powód, dla którego praktyczna rada sprowadza się do segmentacji, a nie do wyboru marki:

  1. Trzymaj nieodwracalne sekrety poza współdzielonymi środowiskami. Frazy odzyskiwania, klucze prywatne, poświadczenia administracyjne i instrumenty płatnicze nie należą do tego samego profilu przeglądarki, w którym działają ogólne dodatki. «Nieodwracalne» to słowo kluczowe: skradzioną sesję da się zakończyć, ujawnionego klucza prywatnego nie da się cofnąć.
  2. Przeczytaj prośbę o uprawnienia ten jeden raz, kiedy się pojawia. «Odczyt i zmiana wszystkich twoich danych na wszystkich stronach» to prawdziwe zdanie z prawdziwym znaczeniem, pokazywane dokładnie raz.
  3. Wybieraj odwoływalny, wąski dostęp zamiast przechowywanych poświadczeń, wszędzie tam, gdzie platforma daje wybór.
  4. Trzymaj krótką listę tego, co zainstalowane. Każdy dodatek to stała umowa. Dziesięć dodatków to dziesięć umów.
  5. Zakładaj, że każdy samoaktualizujący się komponent kiedyś dostarczy coś zaskakującego, i projektuj tak, żeby zdanie kończyło się na «i sięga dotąd, i nie dalej».

Żaden z tych pięciu kroków nie wymaga zgadywania, który dostawca będzie miał zły kwartał. O to właśnie chodzi: przewidywania są zawodne, segmentacja nie.


Dwie warstwy, dwa zawody

Krąży przekonanie, że przeglądarki antydetekcyjne i platformy kampanijne to konkurencyjne odpowiedzi na to samo pytanie. Nie są: odpowiadają na różne pytania, a działające zestawy zwykle zawierają jedno i drugie.

Przeglądarki antydetekcyjne takie jak AdsPower rozwiązują dostęp i tożsamość. Odizolowane profile, które się nawzajem nie widzą, odciski przeglądarki, proxy przypisane per profil i dostęp zespołu bez podawania sobie haseł. Jeśli prowadzisz wiele kont, to prawdziwa infrastruktura, której platforma kampanijna nie dostarcza.

Platformy kampanijne takie jak Wevion rozwiązują to, co dzieje się już w środku. Uruchamianie i pomiar na sześciu platformach reklamowych — Meta, Google, TikTok, Taboola, Snapchat i Outbrain — reguły budżetu na pięciu z nich, porównanie obok siebie na czterech, pauzowanie i włączanie na poziomie zestawu reklam i reklamy na trzech oraz wycofanie i ponowne uruchomienie na Meta.

Różne warstwy tego samego zestawu. Profil wpuszcza cię na konto; potem zaczyna się praca.

Podłączenie konta reklamowego do platformy kampanijnej nie usuwa warstwy przeglądarki z twojego układu i nie każe niczego migrować. Otwierasz profil tak jak zawsze, podłączasz konto raz przez ekran zgody platformy, i od tej pory uruchamianie, reguły i marża mieszkają w jednym panelu zamiast w sześciu kartach. Dłuższa wersja tego wywodu jest w Wevion a przeglądarki antydetekcyjne.


Gdzie architektonicznie stoi Wevion

Jeden akapit, bo to fakt o naszej konstrukcji, a nie wyrok o czyjejś.

Wevion łączy się z kontami reklamowymi przez OAuth wobec oficjalnych API. Logujesz się w domenie platformy, my dostajemy token o wąskim zakresie, ten token jest szyfrowany w spoczynku, a zgodę możesz usunąć w ustawieniach platformy kiedy zechcesz, bez ruszania hasła i bez ruszania żadnej innej integracji. Na twojej maszynie nie ma żadnego naszego komponentu, więc w twoim obrazie ryzyka nie ma też żadnego naszego kanału aktualizacji. Mechanika jest rozpisana w jak Wevion się łączy.

Czego to nie znaczy: to nie obietnica, że konto nigdy nie zostanie ograniczone. Konta bywają ograniczane także na oficjalnych API, z powodów zasad i jakości, które nie mają nic wspólnego z tym, jak narzędzie się uwierzytelniło — i każdy, kto kupował media na skalę, o tym wie. Ogólniejsze nawyki na poziomie konta zebrane są w praktykach bezpieczeństwa kont Meta.


Podsumowanie

Troje drzwi, i nie są wymienne. OAuth oddaje wąski, nazwany, odwoływalny token i zatrzymuje twoje hasło na platformie. Surowy token działa, ale nie zostawia po sobie śladu, więc żyje w twoim układzie długo po tym, jak zapomniałeś, że istnieje. Wklejone ciasteczko sesji to w ogóle nie zgoda: to twoja zduplikowana sesja, a jedynym sposobem odzyskania jej jest zakończenie sesji dla wszystkich, łącznie z tobą.

Wokół wszystkich trzech stoi pytanie, co działa na twojej maszynie. Każdy samoaktualizujący się komponent to stała umowa, a sposobem na spokój z tą umową nie jest przewidywanie dostawców, tylko arytmetyka zasięgu: nadawać wąsko, trzymać nieodwracalne sekrety w ich własnym środowisku, trzymać krótką listę zainstalowanych i znać drogę odebrania dostępu przed tym porankiem, w którym będzie potrzebna.

Zacznij 14-dniowy bezpłatny okres próbny Wevion i podłącz jedno konto reklamowe przez ekran zgody platformy. Reszta twojego zestawu zostaje dokładnie tam, gdzie jest.

Powiązane lektury

Najczęściej zadawane pytania

Newsletter

The Ad Signal

Cotygodniowe spostrzeżenia dla media buyerów, którzy odmawiają zgadywania. Jeden e-mail. Tylko konkrety.

Wróć do bloga
Udostępnij

Powiązane artykuły

Gotowy na automatyzację operacji reklamowych?

Zacznij uruchamiać kampanie masowo na wielu kontach. Zacznij za darmo, na zawsze. Bez karty. Anuluj w dowolnym momencie.