Italiano
  • Token di accesso personale
  • Autenticazione

Semplifica l'autenticazione API con i token di accesso personale — Un token API più sicuro

Spiega come funzionano i token di accesso personale (PAT), quando usarli, come supportare le funzionalità PAT nei tuoi servizi e come si differenziano dalle chiavi API, token API, token bearer, token OAuth e password.

Ran
Ran
Product & Design

Smetti di sprecare settimane sull'autenticazione degli utenti
Lancia app sicure più velocemente con Logto. Integra l'autenticazione degli utenti in pochi minuti e concentrati sul tuo prodotto principale.
Inizia ora
Product screenshot

I token di accesso personale (PAT) sono token generati dagli utenti che sostituiscono le password per le chiamate API. Progettati per utenti specifici, i PAT offrono accesso sicuro e controllato alle risorse.

Autenticazione senza sforzo. Controllo dell'accesso granulare. Flussi di lavoro semplificati. Queste sono solo alcune delle ragioni per cui sviluppatori e team di prodotto in tutto il mondo si affidano ai token di accesso personale per potenziare la produttività, gestendo pipeline CI/CD, integrando API o accedendo a strumenti.

Curiosi di sapere come funzionano i PAT, i loro vantaggi o quando usarli? Questa guida copre tutto.

Cos'è un token di accesso personale?

Un token di accesso personale è un modo temporaneo e sicuro per autenticarsi e accedere alle tue risorse e servizi personali tramite le API. È utilizzato principalmente dagli sviluppatori per semplificare ed efficientare compiti come l'accesso alle API o l'automazione dei flussi di lavoro.

Pensa a un token di accesso personale come a una "chiave" per l'accesso API, sostituendo la necessità di una password. A differenza della password, i PAT hanno permessi specifici e date di scadenza, assicurando che siano usati solo per lo scopo previsto, come accedere a profili utente o sistemi di fatturazione, ma non ai controlli amministrativi.

Caratteristiche principali dei token di accesso personale:

  • Amico degli sviluppatori: I token di accesso personale sono più facili da gestire rispetto ai flussi di lavoro OAuth completi, rendendoli ideali per script, automazione o pipeline CI/CD.
  • Token multipli: Gli utenti possono generare e gestire più token di accesso personale, ciascuno dedicato a un servizio o scopo specifico.
  • Accesso specifico per l'utente: A differenza delle chiavi API globali, i token di accesso personale sono associati a singoli account utente. Questo significa che i membri del team potrebbero dover creare token separati per l'accesso condiviso.
  • Permessi granulari: Con i token di accesso personale, puoi definire ambiti specifici, concedendo accesso solo alle risorse e azioni richieste.
  • Accesso a tempo limitato: I token di accesso personale possono essere configurati con date di scadenza, riducendo la finestra di rischio in caso di esposizione.
  • Revoca facile: A differenza delle password, i token di accesso personale possono essere revocati o rigenerati senza compromettere le credenziali principali di un account.

Token di accesso personale vs. Token Bearer vs. Token API

  1. Il token di accesso personale è un tipo di token API: Un token di accesso personale è un tipo di token API a livello utente collegato a un account utente. Dà il permesso di accedere alle risorse di sistema per conto dell'utente. I PAT sono più sicuri rispetto alle chiavi API tradizionali perché consentono un controllo granulare sui permessi, come restringere l'accesso a repository o organizzazioni specifiche, e possono includere date di scadenza per una maggiore sicurezza.
  2. Il token di accesso personale può essere utilizzato come un token Bearer: Un token bearer è un modo per autorizzare richieste API, spesso creato dinamicamente utilizzando protocolli come OAuth o JWT. Un token di accesso personale è una versione statica di un token bearer, generato manualmente da un utente (ad esempio, su GitHub). Ad esempio, quando si utilizza un PAT di GitHub per le chiamate API, lo si include nell'intestazione della richiesta come authorization: bearer <your-pat>. In questo caso, il PAT funge da token bearer.
  3. Token API è un termine generico: Un token API è un termine generico per qualsiasi token utilizzato per autenticare le richieste API. Include diversi tipi, come i token bearer, i token OAuth e i token di accesso personale. I PAT e i token bearer sono semplicemente tipi specifici di token API.

Scegli i tuoi meccanismi AuthN e AuthZ

Prima di adottare un token di accesso personale, è cruciale capire il suo ruolo all'interno del panorama più ampio dei metodi di autenticazione. Con diversi meccanismi tra cui scegliere, è importante sapere come si confrontano. Di seguito è riportata una tabella completa che descrive le differenze chiave tra token di accesso personale (PAT), password, chiavi API e token OAuth per aiutarti a prendere una decisione informata.

  1. Token di accesso personale: Un metodo di autenticazione leggero ideale per compiti automatizzati o accesso attraverso API. Fornisce un controllo preciso e granulare sui permessi, garantendo un accesso sicuro e su misura.
  2. Password: Un approccio di autenticazione tradizionale utilizzato per accedere agli account personali tramite interfaccia utente. Concede gli stessi permessi del proprietario dell'account, non offrendo granularità aggiuntiva.
  3. Token OAuth: Il metodo più sicuro per concedere ai servizi di terze parti un accesso limitato. Consente agli utenti di definire ambiti di accesso specifici senza esporre le proprie credenziali, garantendo sia sicurezza che flessibilità.
  4. Chiave API: Tipicamente utilizzate per automatizzare l'accesso API, le chiavi API sono collegate ad account di servizio anziché ad account personali. Tuttavia, mancano dei controlli di permessi dettagliati disponibili con PAT o OAuth.
CaratteristicaPasswordToken di accesso personaleToken OAuthChiave API
DefinizioneGli utenti si autenticano con un identificatore e una password.Un token per accedere a risorse o API specifiche, spesso con permessi limitati.Un sistema in cui gli utenti concedono alle app di terze parti l'accesso ai propri dati senza condividere le credenziali. E.g., accesso GoogleUna stringa unica usata dai client per autenticare le richieste API.
Limitazione dell'ambitoTipicamente garantisce accesso completo all'account dell'utente una volta effettuato il login.Consente un controllo granulare sui permessi.Consente all'utente di definire a cosa l'app di terze parti può accedere.Tipicamente garantisce accesso a risorse API specifiche. Nessun controllo granulare.
RevocaDifficile da revocare senza cambiare la password, influenzando più servizi.Facile da revocare da parte dell'utente o amministratore.Può essere revocato senza influenzare le credenziali dell'utente.Può essere revocato o rigenerato a livello dei servizi API.
ScadenzaNon scade a meno che non venga cambiata dall'utente.Spesso a lunga durata, ma configurabile per scadere.I token di accesso scadono dopo un tempo impostato; i token di aggiornamento possono estendere l'accesso.Spesso a lunga durata, ma possono essere ruotati o limitati dal fornitore di API.
Facilità d'usoFacile da ricordare ma rischioso se maneggiato incautamente.Semplice da generare e usare per compiti automatizzati.Richiede un'interazione iniziale dell'utente ma offre una delega sicura dell'accesso.Facile da utilizzare nelle richieste ma non ideale per l'autenticazione orientata all'utente.
Ideale perAccesso e verifica di base lato cliente.Automazione, accesso limitato a risorse API e sviluppo in pipeline CI/CD.App di terze parti che necessitano di un accesso limitato ai dati utente senza memorizzare password.Servizi backend, comunicazione server-to-server e API pubbliche.
Rischio di sicurezzaSe rubata, concede accesso completo all'account.Se trapelato, concede solo accesso alle risorse specificate. Può essere revocato facilmente.Se trapelato, le app di terze parti possono eseguire azioni entro l'ambito concesso.Se rubato, è tipicamente usato per accesso server-to-server.

Come funziona un token di accesso personale?

I token di accesso personale funzionano in modo simile ai token di accesso OAuth, ma sono tipicamente stringhe senza dati leggibili dall'utente sul loro contenuto. Quando ti autentichi con un servizio come GitHub, puoi generare un PAT legato al tuo account utente e assegnargli permessi specifici. Questo token funge da alternativa sicura all'uso di una password quando si effettuano richieste, come accedere a un repository privato tramite un'API.

Tipicamente, un PAT è incluso nelle intestazioni delle richieste, come mostrato in questo esempio:

Inviando il tuo PAT in questo modo, il servizio può verificare la tua identità, valutare i permessi legati al tuo token e fornire i dati richiesti o eseguire l'azione specificata.

Come usare un token di accesso personale?

  • Genera un token di accesso personale: Inizia creando un token di accesso personale tramite la piattaforma che utilizzi. E seleziona ambiti specifici per definire i suoi permessi di accesso (ambiti).
  • Autentica le richieste API: Con il tuo token di accesso personale pronto, usalo per autenticare le richieste ai servizi che richiedono un accesso sicuro. Includi il token come token bearer nell'intestazione dell'autorizzazione delle tue richieste API.
  • Revoca un token di accesso personale: Se hai bisogno di disattivare il tuo token, revocalo semplicemente tramite le impostazioni di autenticazione della piattaforma. Una volta revocato, qualsiasi richiesta API effettuata con quel token sarà automaticamente negata.

Quando dovrei usare i token di accesso personale?

I token di accesso personale eccellono in scenari in cui è necessario fornire accesso sicuro, amico degli sviluppatori e con campo d'azione definito alle tue API. Ecco alcuni casi d'uso ideali:

  • Compiti automatizzati: Perfetto per script o strumenti che devono recuperare dati dalle API senza richiedere agli sviluppatori di incorporare credenziali sensibili.
  • Controllo di permessi granulari: Consentono accessi precisi concedendo a script o strumenti permessi limitati, come l'accesso a repository specifici, senza esporre privilegi completi dell'account.
  • Accesso temporaneo: Ideale per situazioni sensibili al tempo, dove limitare la durata dell'accesso minimizza i rischi per la sicurezza.
  • Accesso sviluppatore semplificato: Un modo conveniente per concedere l'accesso a singoli sviluppatori senza la complessità di configurare un flusso di autorizzazione OAuth completo.
  • Integrazione di terze parti: Ottimizza la funzionalità con strumenti esterni limitando l'accesso ad azioni specifiche predefinite. Ad esempio, quando un'azienda utilizza uno strumento di gestione progetti, l'integrazione di terze parti può consentire ai membri del team di creare compiti o aggiornare stati direttamente da una chat Slack senza dover accedere completamente allo strumento di gestione progetti.

GitHub sta guidando l'uso dei token di accesso personale dal 2013, che stanno diventando popolari per la loro semplicità e flessibilità. Molti strumenti per sviluppatori e piattaforme SaaS supportano i PAT, rendendoli facili da usare e una scelta preferita dagli sviluppatori:

  • GitHub/GitLab/Azure DevOps (Strumenti di sviluppo): Aiuta con l'automazione delle CI/CD, la connessione ad altri strumenti e la gestione dei repository di codice.

    github-personal-access-token.png

  • Figma (Strumenti di design): Rende più facile collaborare sui design attraverso integrazioni API.

    figma-personal-access-token.png

  • Atlassian Jira / Asana (Gestione dei progetti): Facilita la creazione, aggiornamento o eliminazione di compiti, la gestione di sprint e l'organizzazione dei progetti tramite API.

    jira-personal-access-token-admin.png

Posso condividere un token di accesso personale con altri utenti?

Risposta breve—No, non dovresti.

I token devono essere legati a un account individuale e non devono mai essere condivisi. Se altri richiedono accesso, è meglio generare token unici con i loro permessi o impostare ruoli utente per evitare rischi di sicurezza. L'uso improprio dei token può portare a accessi non previsti, compromettendo dati o violazioni della privacy. Mantieni privati i token e revoca qualsiasi token che sospetti possa essere compromesso.

Abilita la tua applicazione a generare token di accesso personale con Logto

Che tu stia offrendo servizi B2B o sviluppando prodotti di IA all'avanguardia, implementare un'autenticazione e un'autorizzazione amichevoli per gli sviluppatori è essenziale. Un token di accesso personale può sbloccare nuove opportunità per il tuo business.

Logto, una soluzione completa di Customer Identity and Access Management (CIAM), ti consente di creare, gestire e revocare facilmente i token di accesso personale. Ecco come iniziare:

  1. Naviga su Logto Console > User Management.
  2. Accedi al profilo di un utente specifico per gestire i suoi token di accesso personale.

personal-acess-tokens-management.webp

Con Logto, puoi:

  • Generare nuovi token di accesso personale.
  • Gestire più token per un singolo utente.
  • Impostare date di scadenza personalizzate per i token.
  • Rinominare i token per una migliore organizzazione.
  • Revocare i token quando non sono più necessari.

logto-create-personal-access-token.png

Inoltre, puoi consentire agli utenti di autogestire i loro token di accesso personale nelle loro pagine di impostazioni del profilo tramite Logto Management APIs.