L’accesso OAuth deve essere abilitato per la propria organizzazione. La configurazione iniziale fornisce
l’endpoint dei token regionale, l’issuer, l’audience e il metodo di autenticazione del client.
Se sono necessarie queste impostazioni o non è possibile accedere alla gestione dei client, contattare
il supporto di Living Security.
Prima di iniziare
- Creare un service account con i soli permessi necessari all’integrazione.
- Utilizzare una credenziale di gestione con
service_account:managee ciascun permesso che si desidera concedere al nuovo client. Anche l’account di destinazione deve possedere tali permessi. Un client non può estendere l’autorità di nessuno dei due account. - Scegliere la regione dell’organizzazione. Le credenziali API e i token di accesso OAuth devono essere utilizzati sull’host API regionale corrispondente.
- Conservare il secret del client e i token nell’archivio dei secret lato server. Non inserirli mai nel codice del browser, nelle applicazioni mobili, nel controllo del codice sorgente o nei log delle richieste.
Creare un client
POST /v1/oauth_clients richiede service_account_id, un elenco non vuoto di
scopes espliciti e un Idempotency-Key. I caratteri jolly non sono accettati. Un client supporta
fino a 100 scope, con una lunghezza complessiva massima di 4.096 caratteri. Ogni service
account può avere al massimo 20 client oppure operazioni di creazione/pulizia non risolte.
La revoca nega immediatamente l’accesso alle API. Un client o una creazione incerta
presso il provider continua a essere conteggiato nel limite finché la pulizia remota non viene confermata.
Una prenotazione abbandonata o una creazione di cui sia provato il fallimento prima dell’avvio
dell’attività presso il provider può liberare in sicurezza il proprio slot. La relativa chiave di retry appartiene comunque al
tentativo originale; recuperare quella ricevuta prima di decidere se creare un sostituto.
Scegliere una chiave di retry per questo tentativo di creazione e renderla persistente prima di inviare
la richiesta. Utilizzare da 1 a 255 caratteri ASCII visibili, senza spazi. Riutilizzarla con lo
stesso account, gli stessi scope, la stessa entità di gestione, la stessa regione e la stessa versione API dopo una risposta persa. La rotazione
della credenziale di gestione sotto lo stesso service account non
crea una nuova identità di retry.
Installare il pacchetto requests di Python. Caricare i seguenti valori di ambiente tramite
la normale gestione di secret e configurazione:
Python
201 e contengono una risorsa oauth_client
con id, service_account_id, client_id, scopes, status, created_at e
client_secret. Le risposte sono contrassegnate come Cache-Control: no-store.
ididentifica la risorsa della piattaforma. Salvarlo per il recupero e la revoca.client_ididentifica il client durante lo scambio del token. Non è l’ID della risorsa della piattaforma. Può esserenullmentre la creazione è in sospeso.client_secretviene restituito solo alla richiesta che completa la creazione. Ogni richiesta di creazione ripetuta restituiscenull, incluso un retry dopo una risposta di successo andata persa. Il recupero non restituisce mai un secret.
Ripristinare dopo una risposta persa o interrotta
Ripetere la stessa richiesta di creazione con la chiave di retry salvata per recuperare una ricevuta della risorsa. La ricevuta riflette lo stato corrente, quindi un client revocato rimane revocato. Questa operazione non utilizza il contratto generale di replay delle risposte in cache di 24 ore e non restituisce un’intestazioneIdempotent-Replayed.
Consultare errori per gli ID delle richieste e i dettagli sul ripristino.
Non inviare mai un secret del client o un token di accesso con una richiesta al supporto.
Verificare e revocare
Utilizzare la credenziale di gestione e la risorsa della piattaformaid:
La revoca blocca le richieste API successive del client, incluse quelle effettuate con
token già emessi. Non annulla le attività già accettate dall’API.
La pulizia remota delle credenziali può completarsi in un secondo momento. Ripetere la revoca è sicuro e
non richiede una chiave di retry. Continuare a utilizzare la credenziale di gestione se il client
da revocare è esso stesso un chiamante API.

