Co właściwie usuwasz
Osobisty token dostępu (PAT) to jeden z kilku poświadczeń, które mogą działać na Twoim koncie GitHub. Przed usunięciem czegokolwiek warto wiedzieć, na jaki rodzaj poświadczenia patrzysz, ponieważ kroki usuwania i skutki uboczne się różnią.
| Poświadczenie | Co zwykle robi | Gdzie jest zarządzane | Co usuwa usunięcie |
|---|---|---|---|
| Osobisty token dostępu (fine-grained lub classic) | Pozwala skryptom, narzędziom lub CI działać w Twoim imieniu z ograniczonymi uprawnieniami | Ustawienia → Ustawienia deweloperskie → Osobiste tokeny dostępu | Wszystko, co nadal używa tego tokenu, oraz każdy klucz wdrożeniowy utworzony przez ten token |
| Autoryzacja OAuth | Aplikacja zewnętrzna, której zatwierdziłeś działanie na swoim koncie | Ustawienia → Aplikacje (autoryzowane aplikacje OAuth) | Dostęp tej aplikacji; sama aplikacja nie jest usuwana |
| Klucz konta SSH | Uwierzytelnia operacje Git przez SSH dla Twojego konta | Ustawienia → Klucze SSH i GPG | Dostęp SSH, który opiera się na tym kluczu |
| Sesja przeglądarki | Aktywna zalogowana sesja w przeglądarce | Mechanizmy wylogowania i ustawienia sesji | Tylko ta sesja; to nie jest token ani klucz |
Ten artykuł dotyczy pierwszego wiersza. Pozostałe wiersze są wymienione, abyś nie pomylił jednego z drugim: usunięcie autoryzacji OAuth lub klucza SSH nie usuwa osobistego tokenu dostępu, a usunięcie tokenu nie unieważnia kluczy SSH ani nie kończy sesji przeglądarki.
Krok 1: Zbuduj inwentarz tokenów bez ujawniania wartości
Celem jest lista nazw tokenów i miejsc, w których każdy jest używany — nie lista ciągów tokenów. Wartość tokenu traktuj jako sekret, którego nigdy nie kopiujesz do notatek, zgłoszeń ani czatu.
- Otwórz ustawienia swojego konta GitHub i przejdź do Ustawienia deweloperskie, a następnie Osobiste tokeny dostępu. Sprawdź zarówno Fine-grained tokens, jak i Tokens classic, ponieważ oba typy są wymienione osobno.
- Dla każdego tokenu zapisz tylko: nazwę tokenu, jego typ (fine-grained lub classic) oraz wszelkie uwagi, które GitHub wyświetla na temat jego przeznaczenia lub wygaśnięcia.
- Dla każdego tokenu zapisz, gdzie według Ciebie jest używany: zadanie CI, skrypt wdrożeniowy, narzędzie lokalne, zadanie zaplanowane, integracja zewnętrzna lub nigdzie, gdzie możesz sobie przypomnieć.
- Oznacz tokeny, których nie potrafisz przypisać. Nieprzypisany token to kandydat do przeglądu, a nie do automatycznego usunięcia — coś może nadal od niego zależeć.
Wystarczy prosta tabela robocza:
| Nazwa tokenu | Typ | Znany konsument | Ostatnie znane użycie | Decyzja |
|---|---|---|---|---|
| example-deploy | Fine-grained | Zadanie wdrożeniowe CI | Nieznane | Sprawdź zadanie przed usunięciem |
| example-old-script | Classic | Nie znaleziono | Stare | Zweryfikuj, następnie usuń |
Nie wklejaj wartości tokenów do tej tabeli. Jeśli konsument przechowuje token, sprawdź konfigurację tego systemu, zamiast ponownie odczytywać sekret.
Krok 2: Sprawdź zależną automatyzację przed usunięciem
Usunięcie tokenu psuje wszystko, co nadal się nim uwierzytelnia. Przed usunięciem potwierdź każdego znanego konsumenta:
- Przeszukaj konfigurację CI, skrypty wdrożeniowe i zadania zaplanowane pod kątem odwołań do nazwy tokenu lub wpisu w magazynie sekretów, który go przechowuje.
- Sprawdź, czy uprawnienia tokenu odpowiadają potrzebom konsumenta. Token, który wygląda na nieużywany, może być jedynym działającym poświadczeniem dla małego zadania.
- Zdecyduj dla każdego tokenu: zachować, zastąpić węższym poświadczeniem lub usunąć. Jeśli nie możesz potwierdzić konsumenta, wstrzymaj się, zamiast zgadywać.
GitHub dokumentuje jedną konkretną zależność, którą warto sprawdzić najpierw: osobisty token dostępu, który utworzył klucz wdrożeniowy, jest powiązany z tym kluczem wdrożeniowym.
GitHub ostrzega, że usunięcie osobistego tokenu dostępu, który utworzył klucz wdrożeniowy, usuwa także ten klucz wdrożeniowy. Źródło
To ostrzeżenie jest wąskie. Dotyczy kluczy wdrożeniowych utworzonych przez ten token. Nie jest stwierdzeniem, że usunięcie dowolnego tokenu wpływa na każdy klucz SSH, każdy klucz wdrożeniowy lub każdą integrację na koncie. Sprawdź historię konkretnego tokenu i klucze wdrożeniowe repozytorium, zamiast zakładać szeroki skutek.
Krok 3: Usuń token
Gdy potwierdzisz, że token można bezpiecznie usunąć, udokumentowana przez GitHub ścieżka to:
Udokumentowana przez GitHub ścieżka usunięcia osobistego tokenu dostępu to Ustawienia, Ustawienia deweloperskie, Osobiste tokeny dostępu, a następnie Fine-grained tokens lub Tokens classic i Usuń. Źródło
Po usunięciu zweryfikuj wynik, zamiast zakładać, że zadziałało:
- Potwierdź, że token nie pojawia się już na liście dla swojego typu.
- Uruchom lub wyzwól automatyzację, którą zidentyfikowałeś jako konsumenta, i sprawdź, czy nadal się uwierzytelnia. Jeśli to nie działa, znalazłeś zależność, którą pominąłeś; przywróć dostęp za pomocą nowego poświadczenia, które kontrolujesz, zamiast używać starej wartości.
- Jeśli usunięty token utworzył klucz wdrożeniowy, sprawdź klucze wdrożeniowe repozytorium, aby potwierdzić, że udokumentowane usunięcie nastąpiło i że żaden inny klucz nie został dotknięty.
Ścieżki awarii, na które warto się przygotować
| Sytuacja | Co zrobić |
|---|---|
| Zadanie CI nie działa po usunięciu | Zidentyfikuj, którego sekretu użyło, potwierdź właściciela zadania i wydaj zastępcze poświadczenie w ramach swojego normalnego procesu |
| Nie możesz znaleźć konsumenta tokenu | Nie usuwaj na podstawie domysłu; najpierw przeszukaj pliki konfiguracyjne i magazyny sekretów, a token zachowaj, dopóki nie potwierdzisz |
| Klucz wdrożeniowy zniknął | To udokumentowana konsekwencja, gdy token go utworzył; odtwórz klucz celowo, jeśli repozytorium nadal go potrzebuje |
| Nie masz pewności, czy poświadczenie to token, czy aplikacja OAuth | Sprawdź sekcję ustawień, w której się pojawia; oba są zarządzane osobno |
Czego ta lista kontrolna nie obejmuje
Ten przewodnik nie opisuje rotacji poświadczeń, wydawania nowych tokenów ani zmiany uprawnień — te kroki zależą od Twojej konfiguracji i aktualnego interfejsu GitHub, który powinieneś potwierdzić w momencie działania. Nie obejmuje również usuwania autoryzacji OAuth, kluczy konta SSH ani sesji przeglądarki poza zaznaczeniem, że są one odrębne. Usunięcie tokenu usuwa to poświadczenie; samo w sobie nie dowodzi, że jakiekolwiek dane przechowywane przez połączoną usługę zostały wymazane.
Gdzie pasuje wyszukiwanie nazw użytkowników, a gdzie nie
Jeśli Twoje porządki są częścią szerszego przeglądu tego, co jest publicznie widoczne pod nazwą użytkownika, TraceSeek to osobna aplikacja, która sprawdza znane publiczne nazwy użytkowników na ponad 3 000 platformach. Raportuje publiczne dopasowania, które są tropami, a nie dowodem własności, i nie może logować się do kont, zmieniać ustawień konta, usuwać tokenów ani weryfikować czyjejkolwiek prawdziwej tożsamości. Nie jest narzędziem do dostępu do prywatnych kont ani gwarantowanego usuwania czegokolwiek. W przypadku zadania z tokenem w tym artykule praca odbywa się w ustawieniach GitHub, a nie w aplikacji do wyszukiwania.