M365Con 2027 – bezpłatna konferencja online · 11–22 Jan 2027 · 120 sessions→ m365con.net

Blog · Mirko Peters

Refresh Token a Access Token: czym się różnią i dlaczego to ma znaczenie w Microsoft Entra ID

By ·

Refresh Token a Access Token: czym się różnią i dlaczego to ma znaczenie w Microsoft Entra ID

Automatically translated with AI from the original post. Read the English original

Cover: Stop OAuth Consent Attacks in Microsoft Entra ID

Jeśli kiedykolwiek zastanawiałeś się, co naprawdę odróżnia refresh token od access tokena, trafiłeś we właściwe miejsce. W świecie Microsoft Entra ID i nowoczesnego bezpieczeństwa chmury te dwa typy tokenów odgrywają główne role, a każdy ma własne zadanie, specyficzne cechy i zasady bezpieczeństwa. Dobre zrozumienie tych różnic może uratować projekt bezpiecznych przepływów logowania do Microsoft 365, Azure lub dowolnej aplikacji połączonej z platformą Entra.

To nie jest wyłącznie teoria. Wiedza o tym, którego tokena użyć i kiedy, gdzie go przechowywać i jak go bezpiecznie chronić, to podstawowa umiejętność każdego specjalisty IT, dewelopera czy administratora pracującego w ekosystemie Microsoft. Ten wybór wpływa nie tylko na poziom bezpieczeństwa aplikacji, ale także na codzienne doświadczenia użytkowników, szczególnie w kwestii pozostawania zalogowanym i odzyskiwania sprawności po incydentach bezpieczeństwa.

W tym przewodniku zobaczysz dokładnie, jak access tokeny i refresh tokeny wpisują się w konfiguracje uwierzytelniania i autoryzacji, dlaczego ich czas życia ma znaczenie i co wyróżnia każdy z nich, zwłaszcza w środowiskach Microsoft Entra ID. Na koniec będziesz wiedział, jak wyważyć silne środki bezpieczeństwa z płynnym doświadczeniem użytkownika, poruszając się po złożonym krajobrazie zarządzania tokenami w chmurze.

Zrozumienie tokenów we nowoczesnym uwierzytelnianiu

Nowoczesne uwierzytelnianie polega na przydzielaniu właściwych uprawnień we właściwym momencie, a kluczową rolę odgrywają cyfrowe tokeny. Jeśli masz aplikację lub usługę online, najprawdopodobniej już z nich korzystasz, nawet jeśli jeszcze o tym nie wiesz. To one pośredniczą w tym, by aplikacje mogły potwierdzić Twoją tożsamość przed usługą w chmurze, bez konieczności podawania hasła za każdym razem.

Tokeny stanowią serce frameworku OAuth 2.0, który obsługuje logowania i bezpieczny dostęp na platformach takich jak Microsoft Entra ID. Zamiast zarządzać identyfikatorami sesji czy kruchymi plikami cookie, aplikacje opierają się teraz na tych sprytnych cyfrowych „przepustkach”, które identyfikują użytkowników i przyznają dostęp do wrażliwych zasobów w chmurze. Ta zmiana sprawiła, że bezpieczeństwo jest zarówno ściślejsze, jak i wygodniejsze dla dużych organizacji przechodzących do chmury.

Cała magia polega na tym, że istnieją różne rodzaje tokenów do różnych zadań. Jedne służą do dostępu tymczasowego – szybkie i jednorazowe. Inne podtrzymują sesje w tle, dzięki czemu możesz pracować cały dzień bez ciągłego ponownego logowania. To rozróżnienie między access a refresh tokenami jest kluczowe dla tego, jak usługi chmurowe Microsoftu, w tym Entra ID, utrzymują równowagę między wygodą użytkownika a bezpieczeństwem organizacji.

Ta sekcja wprowadza podstawy, które są potrzebne: czym jest token, jakie typy istnieją i dlaczego ich role mają tak duże znaczenie we współczesnym krajobrazie uwierzytelniania. Przejdźmy do szczegółów, zaczynając od najbardziej podstawowego pytania – czym dokładnie jest token?

Czym jest token?

Token w bezpieczeństwie cyfrowym to zwarta porcja danych, która pełni funkcję cyfrowego poświadczenia. Wyobraź sobie go jako cyfrową wersję karty dostępu – coś, co aplikacja przedstawia, aby udowodnić Twoją tożsamość lub uprawnienia innemu systemowi. Tokeny mogą służyć do uwierzytelniania (czy jesteś tym, za kogo się podajesz?) oraz autoryzacji (czy możesz robić to, co właśnie robisz?) w aplikacjach chmurowych i interfejsach API.

Tokeny zazwyczaj opierają się na nowoczesnych standardach, takich jak OAuth 2.0, i często występują jako tokeny na okaziciela (bearer tokens), na przykład JSON Web Tokens (JWT). Są preferowane wobec klasycznych identyfikatorów sesji, ponieważ są bardziej przenośne, mogą zawierać ustrukturyzowane roszczenia (claims) i umożliwiają bezpieczny dostęp do zasobów chmurowych oraz systemów rozproszonych.

Czym są access tokeny?

Access tokeny to krótkotrwałe poświadczenia cyfrowe, wydawane aplikacji po pomyślnym uwierzytelnieniu. Ich głównym celem jest przyznanie tymczasowego, ściśle zakresowego dostępu do konkretnych zasobów – takich jak interfejsy API, dane użytkowników czy magazyny w chmurze – bez ujawniania haseł ani innych wrażliwych informacji.

Tokeny te są ważne tylko przez ograniczony czas, zazwyczaj 30–90 minut w Microsoft Entra ID. To właśnie je aplikacje wysyłają przy każdym żądaniu do API, aby potwierdzić, że użytkownik ma uprawnienia. Zgodnie ze standardami OAuth 2.0 access tokeny działają w Microsoft 365, Azure i każdej usłudze połączonej z Entra ID, zapewniając szczegółowe, ograniczone czasowo uprawnienia.

Czym są refresh tokeny?

Refresh tokeny to trwałe poświadczenia przyznawane zaufanym aplikacjom po pierwszym logowaniu. W przeciwieństwie do access tokenów, główne zadanie refresh tokena polega na cichym pobieraniu nowych access tokenów, gdy bieżący wygaśnie – bez konieczności ponownego uwierzytelniania się przez użytkownika.

Oznacza to, że token odświeżania pomaga utrzymywać długotrwałe sesje i ogranicza potrzebę wielokrotnego logowania się przez użytkowników. W środowiskach Microsoft tokeny odświeżania są kluczowe dla płynnego działania aplikacji: pozwalają im cicho odnawiać dostęp w tle, w ramach sesji, na różnych urządzeniach, a nawet po chwilowych problemach z siecią, jednocześnie chroniąc wrażliwe poświadczenia.

Kluczowe różnice między tokenem dostępu a tokenem odświeżania

Na pierwszy rzut oka tokeny dostępu i tokeny odświeżania mogą wyglądać jak losowe ciągi znaków, ale ich role i czas życia są diametralnie różne. Nie są one wymienne. Zostały zaprojektowane do bardzo konkretnych zadań w procesie uwierzytelniania w Microsoft Entra ID.

Tokeny dostępu to Twoja „przepustka” do wywoływania interfejsów API i pobierania danych, ale tylko na krótki czas. Mają celowo krótki okres ważności, aby ograniczyć ryzyko bezpieczeństwa, zwłaszcza w razie ich wycieku. Tokeny odświeżania z kolei utrzymują się dłużej. Ich zadaniem jest zapewnienie płynności korzystania z aplikacji poprzez ciche ponowne autoryzowanie w tle.

Zrozumienie tych różnic to coś więcej niż ćwiczenie teoretyczne. Jeśli wybierzesz niewłaściwą strategię albo przechowasz token w niewłaściwym miejscu, albo będziesz frustrować użytkowników zbyt częstym ponownym logowaniem, albo pozostawisz poważne luki w zabezpieczeniach. Kolejne sekcje omawiają, za co odpowiada każdy token, jak długo jest ważny i co sprawia, że jest bezpieczny (lub ryzykowny) w praktyce, a nie tylko w teorii.

Jeśli projektujesz rozwiązania dla Microsoft 365, Azure lub dowolnej usługi połączonej z Microsoft Entra ID, zwróć uwagę na poniższe różnice. Determinują one, jak Twoja aplikacja równoważy szczelne zabezpieczenia z płynnymi, nieprzerwanymi sesjami wszystkich użytkowników.

Role funkcjonalne: co robią

Tokeny dostępu to Twoja przepustka do interfejsów API i zasobów chmury, ale ich zasięg jest ograniczony. Gdy token dostępu wygaśnie, nie masz dostępu, chyba że masz też token odświeżania. Token odświeżania działa jak przepustka za kulisami: daje aplikacji prawo do cichego zażądania nowego tokenu dostępu bez ponownego angażowania użytkownika.

Tak więc w świecie chmury Microsoft 365 i Azure tokeny dostępu obsługują działania „tu i teraz”, a tokeny odświeżania zapewniają, że te działania mogą być kontynuowane w tle, sesja po sesji. Ten duet buduje bezpieczne procesy i oszczędza użytkownikom ciągłych problemów z ponownym uwierzytelnianiem.

Jak długo działają tokeny i dlaczego wygaśnięcie ma znaczenie

Tokeny dostępu mają krótki termin ważności nie bez powodu – domyślnie w Entra ID zwykle wynosi on od 30 do 90 minut. Mają zapewniać wystarczający dostęp tylko przez krótki czas, co zmniejsza ryzyko w razie wycieku tokenu. Tokeny odświeżania to natomiast maratończycy. Często są ważne przez dni, tygodnie, a nawet miesiące, w zależności od potrzeb aplikacji i skonfigurowanych zasad bezpieczeństwa.

Ta różnica ma znaczenie, ponieważ krótko żyjące tokeny oznaczają mniejsze narażenie, ale wymagają też częstszego odnawiania. Dłużej ważne tokeny odświeżania sprzyjają nieprzerwanym sesjom, ale zwiększają ryzyko, jeśli trafią w niepowołane ręce. Kluczem jest zrównoważenie bezpieczeństwa z wygodą użytkownika.

Charakterystyka bezpieczeństwa tokenów dostępu i odświeżania

Krótkotrwałe tokeny dostępu w celu ograniczenia ryzyka

Decyzja projektowa, by tokeny dostępu miały krótki czas życia, nie jest przesadną ostrożnością, tylko mądrym zarządzaniem ryzykiem. Jeśli krótkotrwały token dostępu zostanie skradziony, okno czasowe dla ataku jest bardzo wąskie. Po godzinie lub krócej token traci wartość, co kończy większość prób przemieszczania się w poziomie i incydentów polegających na ponownym odtwarzaniu tokenu.

W rozproszonych systemach, takich jak Microsoft 365 i Azure, dzięki temu zmiany uprawnień użytkowników i działania związane z wylogowaniem są egzekwowane szybko. Szybkie wygasanie oznacza, że każde nieautoryzowane użycie tokenu jest wąskim celem, co umożliwia szybką reakcję bez konieczności prowadzenia scentralizowanych list odwołań dla każdego tokenu w obiegu.

Trwałe tokeny odświeżania dla płynnego ponownego uwierzytelniania

Trwałe tokeny odświeżania służą przede wszystkim wygodzie użytkowników. Zamiast za każdą godzinę wyświetlać ekran logowania, token odświeżania pozwala aplikacjom „wymienić” wygasłe tokeny dostępu na nowe, często w sposób niewidoczny i natychmiastowy. Ma to ogromne znaczenie dla produktywności, zwłaszcza przy aplikacjach Microsoft 365 używanych przez cały dzień lub klientach mobilnych z niestabilnym połączeniem.

Haczyk? Dłużej żyjące tokeny odświeżania niosą większe ryzyko w razie kradzieży. Dlatego dobrze zaprojektowane aplikacje stosują mechanizmy odwoływania oraz zasady dostępu warunkowego, równoważąc korzyści płynące z bezproblemowego ponownego uwierzytelniania z możliwością nadużycia w razie wycieku tokenu.

Zarządzanie cyklem życia tokenów w Microsoft Entra ID

Samo uzyskanie tokenów to dopiero połowa sukcesu. Prawdziwie wyróżnia cię bezpieczeństwo i komfort użytkowania dopiero zarządzanie nimi w czasie. W Microsoft Entra ID cykl życia tokenu obejmuje wszystko: od chwili utworzenia tokenu dostępu lub odświeżania, po sposób i moment ich odnawiania, rotacji albo całkowitego odwołania.

Proces ten kształtują najlepsze praktyki OAuth 2.0 oraz mechanizmy specyficzne dla Microsoft w zakresie kontroli sesji. Trzeba brać pod uwagę zagrożenia w czasie rzeczywistym (np. ataki typu replay), problemy z czasem (np. rozjazd zegarów) oraz szczegóły rozproszonych systemów globalnych. Aby zrobić to dobrze, trzeba znać rotację tokenów, kroki walidacji i ścieżki odwoływania.

Zgodnie z podejściem Microsoft organizacje mogą stosować egzekwowanie zasad, kontrolę administracyjną i szczegółowe rejestrowanie zdarzeń, aby zarządzać rozrostem tokenów, zwłaszcza gdy liczba urządzeń połączonych z chmurą gwałtownie rośnie. Więcej o skalowaniu zasad bezpieczeństwa tożsamości w dużych środowiskach znajdziesz w praktycznych wskazówkach dotyczących zarządzania w tym odcinku podcastu o dostępie warunkowym w Entra ID i ograniczaniu ryzyka.

Poniżej omówiono, jak rotować i odnawiać tokeny, jak Entra ID wystawia i sprawdza tokeny oraz na co zwrócić uwagę w kwestii czasu i szczegółów wdrożenia. Jeśli te kroki wykonasz poprawnie, zarówno twoje aplikacje, jak i użytkownicy docenią ten wysiłek.

Najlepsze praktyki rotacji i odnawiania tokenów

Jak tokeny są wystawiane i weryfikowane w Entra ID

Okresy tolerancji i szczegóły implementacji

Okresy tolerancji łagodzą problemy z czasem występujące w praktyce w uwierzytelnianiu opartym na tokenach. Ponieważ serwery i klienty często działają z nieznacznie różniącymi się zegarami – zjawisko znane jako przesunięcie zegara (clock skew) – Microsoft Entra ID dodaje niewielki margines (zazwyczaj około 5 minut) podczas sprawdzania wygaśnięcia tokenu. Dzięki temu logowanie nie kończy się niepowodzeniem z powodu różnic w czasie systemowym liczonych w sekundach.

Aby uzyskać najlepsze rezultaty, synchronizuj zegary wszystkich serwerów za pomocą NTP i pamiętaj, że wdrożenia wysokiej dostępności lub wielu regionów mogą nieznacznie wydłużać okna ważności tokenów. Kieruj się zaleceniami Entra ID dotyczącymi okresów tolerancji i zawsze testuj zachowanie na rzeczywistym ruchu, zwłaszcza w przypadku użytkowników przemieszczających się między regionami lub strefami czasowymi.

Bezpieczne przechowywanie i obsługa tokenów w aplikacjach klienckich

Nawet najsilniejszy token jest tylko tak bezpieczny, jak miejsce, w którym go przechowujesz. Dlatego bezpieczne przechowywanie i obsługa to najbardziej praktyczne zagadnienie dla każdej aplikacji korzystającej z uwierzytelniania Microsoft Entra ID. Miejsce przechowywania tokenu dostępu lub odświeżania zależy od klienta: przeglądarki, urządzenia mobilnego lub aplikacji desktopowej. Każde środowisko ma swoje mocne strony, słabe punkty i typowe pułapki.

Jeśli uważasz, że przechowywanie tokenów w localStorage przeglądarki jest niegroźne, pomyśl jeszcze raz – wystarczy jeden atak XSS, a token jest stracony. Aplikacje mobilne wydają się bezpieczniejsze, ale rootowanie lub jailbreak mogą odsłonić również „bezpieczne” tokeny. Z kolei w aplikacjach jednostronicowych (SPA) nie ma nawet bezpiecznej opcji przechowywania, do której złośliwe skrypty nie miałyby dostępu.

Ta sekcja przedstawia wskazówki potrzebne do podjęcia właściwych decyzji dotyczących opcji przechowywania dla różnych typów aplikacji. Znajdziesz tu zestawienie praktycznych rozwiązań – ciasteczka HTTP-only z flagą secure, pamięć sesji przeglądarki, platformowe bezpieczne magazyny – oraz obowiązkowe kroki zabezpieczania trwałych tokenów. Zobaczysz też, dlaczego publiczni klienci, w których sekretów klienta nie da się ukryć, wymagają szczególnej uwagi, co pozwoli Ci przygotować plan przechowywania i rotacji uwzględniający ryzyko w każdym scenariuszu.

Bezpieczeństwo Twojej aplikacji zależy od tych wyborów, dlatego nie zostawiaj ich przypadkowi. Poznaj bezpieczne i niebezpieczne wzorce, które decydują o tym, czy aplikacja wytrzyma, czy upadnie przy pierwszych oznakach kradzieży tokenów.

Bezpieczne przechowywanie tokenów odświeżania w różnych typach klientów

Szczególne zagadnienia dotyczące rotacji tokenów w klientach publicznych

Najlepsze praktyki zarządzania tokenami dostępu i odświeżania

Znajomość zasad bezpieczeństwa tokenów to jedno, a stosowanie ich na co dzień to drugie. Gdy masz do czynienia z wrażliwymi danymi Microsoft 365, obciążeniami w Azure lub dowolnym scenariuszem Entra ID, stawka jest wyższa: musisz połączyć szczelną ochronę z doświadczeniem użytkownika, które nie wywoła narzekań na zbyt częste logowania.

Ta sekcja przedstawia obowiązkowe działania i te, których należy unikać, przy zarządzaniu tokenami odświeżania i dostępu na dużą skalę. Mówiąc szczerze, chmura Microsoft ma swoje własne niuanse – od złożonych zasad dostępu warunkowego po głęboką integrację z Microsoft Defender i Microsoft Purview w zakresie monitorowania i zarządzania. Najlepsze praktyki obejmują każdy etap: wydawanie tokenów, bezpieczne przechowywanie, rotację, użycie i – gdy zajdzie potrzeba – szybkie odcięcie dostępu, jeśli coś pójdzie nie tak.

Wkrótce przedstawię praktyczne wnioski, które możesz wdrożyć już teraz, dzięki czemu Twoje aplikacje zapewnią podwójną obietnicę: „płynniej i bezpieczniej”. Chcesz więcej o wzmacnianiu zabezpieczeń Microsoft 365 bez utrudniania pracy użytkownikom? Koniecznie przeczytaj szerszy przewodnik o zabezpieczaniu Microsoft 365 przy jednoczesnym zadowoleniu użytkowników, obejmujący Defender, Purview i zasady dostępu warunkowego w środowiskach Entra ID.

Poniżej znajdziesz podsumowanie podstawowych zasad wyboru, obsługi i zabezpieczania tokenów dostępu i odświeżania w każdym wdrożeniu opartym na rozwiązaniach Microsoft.

Najważniejsze wnioski dotyczące wyboru i obsługi tokenów

Podsumowanie i szybki sprawdzian wiedzy

Zrozumienie różnicy między tokenami dostępu a tokenami odświeżania to nie tylko punkt na liście kontrolnej procesu OAuth 2 – to klucz do budowania bezpiecznych i płynnych doświadczeń na platformie tożsamości Microsoft, takiej jak Entra ID. Znalezienie właściwej równowagi między krótkim czasem życia tokenów ze względów bezpieczeństwa a dłuższymi cyklami odświeżania dla wygody to prawdziwa sztuka, szczególnie gdy zarządzasz sesjami użytkowników na wielu urządzeniach lub w wielu usługach.

Gotowy na szybki sprawdzian wiedzy? Zadaj sobie pytanie: jak obsłużyłbyś wygasanie tokenów w aplikacji działającej przy słabym połączeniu z internetem? Czy tokeny odświeżania w ogóle powinny docierać do Twoich mikrousług w backendzie? Jeśli ten przegląd Ci pomógł lub czegoś nauczył, podziel się swoimi uwagami – najlepiej oceniane komentarze otwierają drzwi i wzmacniają całą społeczność. Podobało Ci się? Zostań z nami i rozwijaj swoje umiejętności bezpieczeństwa!

Microsoft Entra ID Microsoft Entra

Related articles

RSS