Utilizzare l'API se è attivato il single sign-on (Azure)
Se lo hai fatto "SSO (Single Sign-on) configurato e abilitato" Inoltre, come provider SSO, Azure consente di utilizzare due script di esempio per ottenere un token di autenticazione valido per l'API Grid Management o l'API Tenant Management.
Accedere all'API se Azure Single Sign-on è attivato
Queste istruzioni sono valide se si utilizza Azure come provider di identità SSO
-
Si conoscono l'indirizzo e-mail SSO e la password di un utente federato che appartiene a un gruppo di utenti StorageGRID.
-
Se si desidera accedere all'API di gestione tenant, si conosce l'ID account tenant.
Per ottenere un token di autenticazione, è possibile utilizzare i seguenti script di esempio:
-
Il
storagegrid-ssoauth-azure.py
Script Python -
Il
storagegrid-ssoauth-azure.js
Script node.js
Entrambi gli script si trovano nella directory dei file di installazione di StorageGRID (./rpms
Per Red Hat Enterprise Linux o CentOS, ./debs
Per Ubuntu o Debian, e. ./vsphere
Per VMware).
Per scrivere la propria integrazione API con Azure, vedere storagegrid-ssoauth-azure.py
script. Lo script Python effettua due richieste direttamente a StorageGRID (prima per ottenere la SAMLRequest e poi per ottenere il token di autorizzazione) e chiama anche lo script Node.js per interagire con Azure per eseguire le operazioni SSO.
Le operazioni SSO possono essere eseguite utilizzando una serie di richieste API, ma non è semplice. Il modulo Puppeteer Node.js viene utilizzato per scrapare l'interfaccia SSO di Azure.
Se si verifica un problema di codifica URL, potrebbe essere visualizzato l'errore: Unsupported SAML version
.
-
Installare le dipendenze richieste, come indicato di seguito:
-
Installare Node.js (vedere "https://nodejs.org/en/download/").
-
Installare i moduli Node.js richiesti (puppeteer e jsdom):
npm install -g <module>
-
-
Passare lo script Python all'interprete Python per eseguirlo.
Lo script Python chiamerà quindi lo script Node.js corrispondente per eseguire le interazioni SSO di Azure.
-
Quando richiesto, immettere i valori per i seguenti argomenti (o passarli utilizzando i parametri):
-
Indirizzo e-mail SSO utilizzato per accedere ad Azure
-
L'indirizzo per StorageGRID
-
L'ID account tenant, se si desidera accedere all'API di gestione tenant
-
-
Quando richiesto, inserire la password e prepararsi a fornire un'autorizzazione MFA ad Azure, se richiesto.
Lo script presuppone che l'autenticazione MFA venga eseguita utilizzando Microsoft Authenticator. Potrebbe essere necessario modificare lo script per supportare altre forme di MFA (ad esempio l'immissione di un codice ricevuto in un messaggio di testo). Il token di autorizzazione StorageGRID viene fornito nell'output. È ora possibile utilizzare il token per altre richieste, in modo simile a come si utilizzerebbe l'API se SSO non fosse utilizzato.