Panoramica di OAuth 2.0

*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.

Puoi costruire o autorizzare app che utilizzano le API cloud aperte per accedere alle risorse Roblox.Open Cloud fornisce l'autenticazione per queste app utilizzando OAuth 2.0.

Come creatore di esperienza o proprietario di gruppo

Puoi utilizzare in modo sicuro strumenti creati da altri per migliorare la produttività della tua creazione.Lo strato di autorizzazione OAuth 2.0 ti consente di concedere autorizzazioni alle app di terze parti per accedere alle tue o alle esperienze del tuo Grupposenza dare loro le tue credenziali e le informazioni personali.Selezioni le autorizzazioni di accesso delle risorse Roblox specifiche e Roblox gestisce il processo di autorizzazione per te con il framework OAuth 2.0.

Come sviluppatore di app

Puoi creare app per te stesso e per gli altri nella comunità Roblox.OAuth 2.0 definisce i ruoli coinvolti nel processo di autorizzazione, il protocollo di come i ruoli interagiscono tra loro e i flussi di autorizzazione di cui devi seguire per sviluppare app sicure e compatibili.

Ruoli

Il protocollo Open Cloud OAuth 2.0 ha i seguenti ruoli.È utile comprendere i ruoli specifici prima di imparare come interagiscono tra loro nei flussi di autorizzazione.

  • Proprietario risorsa : Un'entità in grado di concedere l'accesso a una risorsa protetta.Ad esempio, un creatore che consente a un'app di terze parti di accedere alle proprie risorse Roblox attraverso le API Web Open Cloud.

  • Server delle risorse : Un servizio Roblox che ospita risorse protette e risponde alle richieste di un proprietario di risorse.

  • Cliente : Un'app che accede a risorse protette a nome del proprietario della risorsa (con l'autorizzazione del proprietario).

  • Server di autorizzazione : Il server Roblox che autentica l'identità del proprietario della risorsa e rilascia token di accesso al client.

Tipi di concessione

I flussi di autorizzazione o i tipi di concessione sono i passaggi delle azioni che i ruoli eseguono durante il processo di autorizzazione.Roblox supporta il flusso di codice di autorizzazione OAuth 2.0 e la sua chiave di prova per l'estensione Code Exchange (PKCE), con diversi requisiti di implementazione per le app in grado o incapaci di archiviare segreti client.

Flusso di codice di autorizzazione

Attraverso il flusso di codice di autorizzazione, un client scambia un codice di autorizzazione per un token di accesso e un token di aggiornamento per completare il processo di autorizzazione nei seguenti passaggi:

  1. Il client invia una richiesta di autorizzazione al Serverdi autorizzazione Roblox.

  2. Il server di autorizzazione verifica l'identità del proprietario della risorsa.

  3. Il server di autorizzazione riceve i permessi per accedere a risorse specifiche di Roblox dall'owner della risorsa.

  4. Il server di autorizzazione reindirizza il proprietario della risorsa al client con un codice di autorizzazione.

  5. Il client richiede un token di accesso utilizzando il codice di autorizzazione al punto di terminazione del token.

  6. Il client riceve una risposta dal punto di interfaccia del token che contiene un token di accesso, un token di identità e un token di aggiornamento.

  7. Il client recupera le risorse consentite dopo aver ottenuto il token di accesso.

La seguente figura descrive le interazioni tra ruoli nel flusso di codice di autorizzazione che leggerai nelle seguenti sezioni:

Flusso di codice di autorizzazione con PKCE

L'estensione PKCE del flusso di codice di autorizzazione aiuta a ridurre il rischio di perdita del codice di autorizzazione e a prevenire la contraffazione delle richieste cross-site (CSRF), un attacco che inganna gli utenti a inviare richieste Web non intese.Questo flusso completa il processo di autorizzazione con i seguenti passaggi:

  1. Il client genera una chiave unica e casuale criptograficamente casuale chiamata un verificatore di codice per ogni Richiestadi autorizzazione.

  2. Il client esegue un algoritmo di hashing SHA-256 sul verificatore del codice per generare una sfida di codice .

  3. Se il cliente:

    • È un cliente pubblico, invece di utilizzare il segreto del client, trasmette l'ID del client e la sfida del codice nella Richiestadi autorizzazione.

    • È un cliente confidenziale, aggiunge la sfida del codice insieme all'ID del client e al segreto nella Richiesta.

  4. Il client invia una richiesta di autorizzazione al Serverdi autorizzazione Roblox.

  5. Il server di autorizzazione verifica l'identità del proprietario della risorsa.

  6. Il server di autorizzazione riceve i permessi per accedere a risorse specifiche di Roblox dall'owner della risorsa.

  7. Il server di autorizzazione reindirizza il proprietario della risorsa al client con un codice di autorizzazione.

  8. Il client include il codice di autorizzazione e il verificatore del codice originale nella richiesta di token alla endpoint del token.

  9. Il server di autorizzazione verifica il codice di autorizzazione e il verificatore del codice associato.

  10. Il client riceve una risposta dal punto di interfaccia del token che contiene un token di accesso, un token di identità e un token di aggiornamento.

  11. Il client recupera le risorse consentite dopo aver ottenuto il token di accesso.

AssistenzaOpenID Connect

Roblox utilizza OpenID Connect (OIDC) come strato di identità sopra il protocollo OAuth 2.0 per l'autenticazione per proteggere le informazioni sensibili sull'account.OIDC consente alle applicazioni di verificare l'identità degli utenti e ottenere le informazioni di base sul loro profilo pubblico, come l'ID dell'utente, i nomi utente, i nomi di visualizzazione e i link al profilo.

Registrazione e implementazione

Per implementare un'app web o mobile che utilizza il flusso di codice di autorizzazione, devi:

  1. Registra la tua app con Roblox.Questo ti consente di ottenere un ID client e un segreto per registrare la tua app con Roblox e fare chiamate ai tuoi endpoint.

  2. Implementa il flusso di codice di autorizzazione.Per un riferimento completo degli endpoint OAuth 2.0 che devi chiamare, vedi il riferimento Autenticazione.

  3. Passa attraverso il processo di revisione per ottenere più quota utente.