Che cos’è realmente un’autorizzazione OAuth
Quando fai clic su “Autorizza” su un’app di terze parti, GitHub registra una concessione: l’app può ora agire per tuo conto entro i permessi che hai approvato. Questa concessione non è la tua sessione del browser, non è una chiave SSH e non è una GitHub App installata con le sue impostazioni di installazione. Ognuna di queste viene revocata o rimossa in un punto diverso, quindi il primo passo è identificare che tipo di accesso stai effettivamente guardando.
| Cosa vedi | Cos’è | Dove viene gestito |
|---|---|---|
| Un’app di terze parti elencata con gli scope che hai approvato | Autorizzazione OAuth | Impostazioni → Applicazioni → App OAuth autorizzate |
| Una coppia di chiavi che hai aggiunto per Git su SSH | Chiave SSH | Impostazioni → Chiavi SSH e GPG |
| Hai effettuato l’accesso in questo browser | Sessione di accesso | Uscendo, o dalla pagina delle sessioni |
| Un’app installata su un repository o un’organizzazione | Installazione di GitHub App | Le impostazioni di installazione dell’app o dell’organizzazione |
Se la voce che stai guardando non è un’autorizzazione OAuth, revocarla dall’elenco OAuth non risolverà il problema.
Perché rivedere prima di revocare
Una vecchia autorizzazione potrebbe ancora svolgere qualcosa da cui dipendi, come uno strumento di deployment, un plugin dell’editor o un’integrazione CI. Revocarla interrompe l’accesso di quell’app tramite la concessione, che è lo scopo, ma può anche rompere un flusso di lavoro che ancora dipende da essa. Rivedi il nome dell’app, i permessi elencati e quando l’hai usata l’ultima volta prima di agire.
GitHub consiglia di rivedere le applicazioni autorizzate, comprese quelle con accesso ai repository privati. Fonte
Se non riconosci l’app, o l’accesso che detiene è più ampio del compito che svolge, è il caso di revocarla. Se la riconosci e la usi ancora, valuta se gli scope attuali sono ancora appropriati prima di decidere.
Lista di controllo prima e dopo
Usala come breve registro per poter capire cosa è cambiato e annullare un errore se necessario.
Prima di revocare
- Annota il nome dell’app e i permessi mostrati, così potrai riconoscere la stessa voce in seguito.
- Controlla se qualcosa che usi attualmente dipende da quell’app: una build, un deploy, un accesso all’editor, un job pianificato.
- Verifica di essere su App OAuth autorizzate e non su chiavi SSH, sessioni o app installate.
- Decidi se vuoi revocare una specifica autorizzazione o tutte.
Dopo aver revocato
- Ricarica la pagina App OAuth autorizzate e conferma che la voce sia sparita.
- Esegui una volta il flusso di lavoro che usava l’app e nota se ora ti chiede di riautorizzare. Quel prompt è il segno atteso che la concessione è stata rimossa.
- Se un flusso di lavoro si rompe e ne hai ancora bisogno, riautorizza deliberatamente e rivedi gli scope richiesti.
- Mantieni il tuo metodo di recupero dell’account finché non sei sicuro che nient’altro dipendesse dall’accesso revocato.
Come revocare l’autorizzazione
Apri le Impostazioni dell’account, Applicazioni sotto Integrazioni, quindi App OAuth autorizzate per rivedere l’accesso. Fonte
Dall’elenco, apri il menu per l’app specifica che vuoi rimuovere.
Un’autorizzazione non riconosciuta o obsoleta può essere revocata dal menu dell’app; la pagina offre anche Revoca tutto. Fonte
Revoca la singola voce quando vuoi rimuovere solo un’app. L’opzione Revoca tutto serve quando hai esaminato l’elenco e vuoi cancellare ogni autorizzazione; influenzerà ogni app su quella pagina, non solo quella che stavi guardando.
Limiti di errore da tenere a mente
- Revocare non è cancellare. Rimuovere la concessione interrompe l’accesso futuro tramite essa. Non rimuove i dati che l’app ha già memorizzato o copiato al di fuori di GitHub, e non è una garanzia di cancellazione.
- Revocare non è disconnettersi. La tua sessione del browser su GitHub è separata; revocare un’app non ti disconnette, e disconnettersi non revoca le autorizzazioni delle app.
- Una chiave SSH non è un’app OAuth. Se l’accesso che ti preoccupa è una chiave, la rimozione avviene nelle impostazioni Chiavi SSH e GPG, non in App OAuth autorizzate.
- Una GitHub App installata non è la stessa voce. L’accesso a livello di installazione è gestito dove l’app è installata, quindi controlla lì se l’app non compare nell’elenco OAuth.
- Una corrispondenza di nome utente pubblico non è una prova. Se stai verificando se un handle appare altrove, una corrispondenza su un profilo pubblico è un indizio, non una prova di proprietà. TraceSeek può cercare nomi utente pubblici noti su oltre 3.000 piattaforme, ma non può rivedere o revocare le impostazioni di GitHub per te.
Quando considerare sospetta un’autorizzazione
Non serve una storia drammatica per agire. I segnali pratici sono: non riconosci l’app, i permessi sono più ampi del compito che svolge, o non ricordi di averla autorizzata. In questi casi, revocare la voce specifica è un passo ragionevole, seguito dal controllo se qualcosa da cui dipendi smette di funzionare. Se un flusso di lavoro si rompe, riautorizza solo dopo aver confermato che l’app è quella che ti aspetti e che gli scope corrispondono a ciò di cui ha bisogno.