Amazon Sage Maker Studio è un ambiente di sviluppo integrato (IDE) basato sul Web per l'apprendimento automatico (ML) che ti consente di creare, addestrare, eseguire il debug, distribuire e monitorare i tuoi modelli ML. Per eseguire il provisioning di Studio nell'account e nella regione AWS, devi prima creare un file Amazon Sage Maker dominio: un costrutto che incapsula il tuo ambiente ML. Più concretamente, un dominio SageMaker è costituito da un dominio associato File system elastico Amazon (Amazon EFS), un elenco di utenti autorizzati e una varietà di sicurezza, applicazione, policy e Cloud privato virtuale di Amazon (Amazon VPC).
Quando crei il tuo dominio SageMaker, puoi scegliere di utilizzare entrambi Centro di identità AWS IAM (successore di AWS Single Sign-On) o Gestione dell'identità e dell'accesso di AWS (IAM) per i metodi di autenticazione degli utenti. Entrambi i metodi di autenticazione hanno il proprio set di casi d'uso; in questo post, ci concentriamo sui domini SageMaker con IAM Identity Center, o modalità Single Sign-On (SSO), come metodo di autenticazione.
Con la modalità SSO, imposti un utente e un gruppo SSO in IAM Identity Center e quindi concedi l'accesso al gruppo o all'utente SSO dalla console di Studio. Attualmente, tutti gli utenti SSO in un dominio ereditano il ruolo di esecuzione del dominio. Questo potrebbe non funzionare per tutte le organizzazioni. Ad esempio, gli amministratori potrebbero voler configurare le autorizzazioni IAM per un utente SSO di Studio in base alla loro appartenenza al gruppo Active Directory (AD). Inoltre, poiché gli amministratori devono concedere manualmente agli utenti SSO l'accesso a Studio, il processo potrebbe non essere scalabile durante l'onboarding di centinaia di utenti.
In questo post, forniamo una guida prescrittiva per la soluzione per il provisioning degli utenti SSO a Studio con autorizzazioni con privilegi minimi in base all'appartenenza al gruppo AD. Questa guida ti consente di scalare rapidamente per l'onboarding di centinaia di utenti in Studio e raggiungere il tuo livello di sicurezza e conformità.
Panoramica della soluzione
Il diagramma seguente illustra l'architettura della soluzione.
Il flusso di lavoro per il provisioning degli utenti AD in Studio include i seguenti passaggi:
- Impostare un Dominio Studio in modalità SSO.
- Per ogni gruppo AD:
- Imposta il tuo ruolo di esecuzione di Studio con i criteri IAM granulari appropriati
- Registrare una voce nella mappatura del ruolo del gruppo AD Amazon DynamoDB tabella.
In alternativa, puoi adottare uno standard di denominazione per gli ARN del ruolo IAM basato sul nome del gruppo AD e derivare l'ARN del ruolo IAM senza dover archiviare la mappatura in un database esterno.
- Sincronizza gli utenti e i gruppi AD e le iscrizioni ad AWS Identity Center:
- Se utilizzi un provider di identità (IdP) che supporta SCIM, utilizza l'integrazione dell'API SCIM con IAM Identity Center.
- Se utilizzi AD autogestito, puoi utilizzare AD Connector.
- Quando il gruppo AD viene creato nell'AD aziendale, completa i seguenti passaggi:
- Crea un gruppo SSO corrispondente in IAM Identity Center.
- Associa il gruppo SSO al dominio Studio utilizzando la console SageMaker.
- Quando un utente AD viene creato nell'AD aziendale, viene creato un utente SSO corrispondente in IAM Identity Center.
- Quando l'utente AD viene assegnato a un gruppo AD, un'API IAM Identity Center (Crea appartenenza al gruppo) viene richiamato e viene creata l'appartenenza al gruppo SSO.
- L'evento precedente è connesso AWS CloudTrail con il nome
AddMemberToGroup
. - An Amazon EventBridge la regola ascolta gli eventi CloudTrail e corrisponde a
AddMemberToGroup
modello di regola. - La regola EventBridge attiva la destinazione AWS Lambda funzione.
- Questa funzione Lambda richiamerà le API IAM Identity Center, otterrà le informazioni sull'utente e sul gruppo SSO ed eseguirà i passaggi seguenti per creare il profilo utente di Studio (Crea profilo utente) per l'utente SSO:
- Cerca la tabella DynamoDB per recuperare il ruolo IAM corrispondente al gruppo AD.
- Crea un profilo utente con l'utente SSO e il ruolo IAM ottenuto dalla tabella di ricerca.
- All'utente SSO viene concesso l'accesso a Studio.
- L'utente SSO viene reindirizzato all'IDE di Studio tramite l'URL del dominio di Studio.
Tieni presente che, al momento della scrittura, il passaggio 4b (associare il gruppo SSO al dominio Studio) deve essere eseguito manualmente da un amministratore utilizzando la console SageMaker a livello di dominio SageMaker.
Imposta una funzione Lambda per creare i profili utente
La soluzione utilizza una funzione Lambda per creare i profili utente di Studio. Forniamo la seguente funzione Lambda di esempio che puoi copiare e modificare per soddisfare le tue esigenze di automatizzazione della creazione del profilo utente di Studio. Questa funzione esegue le seguenti azioni:
- Ricevi il CloudTrail
AddMemberToGroup
evento da EventBridge. - Recupera lo Studio
DOMAIN_ID
dalla variabile di ambiente (in alternativa puoi codificare l'ID dominio o utilizzare anche una tabella DynamoDB se hai più domini). - Leggi da una tabella di markup fittizia per abbinare gli utenti AD ai ruoli di esecuzione. Puoi modificare questa impostazione per recuperare dalla tabella DynamoDB se utilizzi un approccio basato sulla tabella. Se utilizzi DynamoDB, anche il ruolo di esecuzione della tua funzione Lambda necessita delle autorizzazioni per leggere dalla tabella.
- Recupera le informazioni sull'appartenenza dell'utente SSO e del gruppo AD da IAM Identity Center, in base ai dati dell'evento CloudTrail.
- Crea un profilo utente di Studio per l'utente SSO, con i dettagli SSO e il ruolo di esecuzione corrispondente.
Tieni presente che, per impostazione predefinita, il ruolo di esecuzione Lambda non ha accesso per creare profili utente o elencare utenti SSO. Dopo aver creato la funzione Lambda, accedi al ruolo di esecuzione della funzione su IAM e collega la seguente policy come policy inline dopo aver ridotto l'ambito in base alle esigenze in base ai requisiti dell'organizzazione.
Imposta la regola EventBridge per l'evento CloudTrail
EventBridge è un servizio bus di eventi serverless che puoi utilizzare per connettere le tue applicazioni con i dati provenienti da una varietà di origini. In questa soluzione, creiamo un trigger basato su regole: EventBridge ascolta gli eventi e le corrispondenze rispetto al modello fornito e attiva una funzione Lambda se la corrispondenza del modello ha esito positivo. Come spiegato nella panoramica della soluzione, ascoltiamo il AddMemberToGroup
evento. Per configurarlo, completare i seguenti passaggi:
- Nella console EventBridge, scegli Regole nel pannello di navigazione.
- Scegli Crea regola.
- Fornisci un nome per la regola, ad esempio,
AddUserToADGroup
. - Facoltativamente, inserisci una descrizione.
- Seleziona difetto per l'autobus degli eventi.
- Sotto Tipo di regolascegli Regola con un modello di evento, Quindi scegliere Avanti.
- Sulla Costruisci un modello di eventi pagina, scegli Origine evento as Eventi AWS o eventi dei partner EventBridge.
- Sotto Modello di eventi, scegli il Pattern personalizzati (editor JSON) scheda e inserire il seguente modello:
- Scegli Avanti.
- Sulla Seleziona destinazione/i pagina, scegli il servizio AWS per il tipo di destinazione, la funzione Lambda come destinazione e la funzione che hai creato in precedenza, quindi scegli Avanti.
- Scegli Avanti sul canale Configura i tag pagina, quindi scegli Crea regola sul canale Rivedi e crea .
Dopo aver impostato la funzione Lambda e la regola EventBridge, puoi testare questa soluzione. Per fare ciò, apri il tuo IdP e aggiungi un utente a uno dei gruppi AD con il ruolo di esecuzione di Studio mappato. Una volta aggiunto l'utente, puoi verificare i log della funzione Lambda per ispezionare l'evento e vedere anche il provisioning automatico dell'utente di Studio. Inoltre, puoi utilizzare il DescriviProfiloUtente Chiamata API per verificare che l'utente sia stato creato con le autorizzazioni appropriate.
Supporto di più account Studio
Per supportare più account Studio con l'architettura precedente, consigliamo le seguenti modifiche:
- Imposta un gruppo AD associato a ogni livello di account Studio.
- Imposta un ruolo IAM a livello di gruppo in ogni account Studio.
- Configurare o derivare il gruppo per l'associazione dei ruoli IAM.
- Imposta una funzione Lambda da eseguire assunzione del ruolo tra account, in base all'ARN della mappatura dei ruoli IAM e al profilo utente creato.
Deprovisioning degli utenti
Quando un utente viene rimosso dal suo gruppo AD, devi rimuovere anche il suo accesso dal dominio di Studio. Con SSO, quando un utente viene rimosso, l'utente viene disabilitato automaticamente in IAM Identity Center se è attiva la sincronizzazione tra AD e IAM Identity Center e il suo accesso all'applicazione Studio viene immediatamente revocato.
Tuttavia, il profilo utente su Studio persiste ancora. Puoi aggiungere un flusso di lavoro simile con CloudTrail e una funzione Lambda per rimuovere il profilo utente da Studio. Il trigger EventBridge dovrebbe ora restare in ascolto per il file Elimina appartenenza al gruppo evento. Nella funzione Lambda, completare i seguenti passaggi:
- Ottenere il nome del profilo utente dall'ID utente e gruppo.
- Elenca tutte le app in esecuzione per il profilo utente utilizzando il file ElencoApp Chiamata API, filtro in base a
UserProfileNameEquals
parametro. Assicurati di controllare la risposta impaginata, per elencare tutte le app per l'utente. - Elimina tutte le app in esecuzione per l'utente e attendi che tutte le app vengano eliminate. Puoi usare il DescriviApp API per visualizzare lo stato dell'app.
- Quando tutte le app sono in a Soppresso stato (o fallito), eliminare il profilo utente.
Con questa soluzione, gli amministratori della piattaforma ML possono mantenere le appartenenze ai gruppi in una posizione centrale e automatizzare la gestione dei profili utente di Studio tramite le funzioni EventBridge e Lambda.
Il codice seguente mostra un evento CloudTrail di esempio:
Il codice seguente mostra un esempio di richiesta API del profilo utente di Studio:
Conclusione
In questo post, abbiamo discusso di come gli amministratori possono ridimensionare l'onboarding di Studio per centinaia di utenti in base alla loro appartenenza al gruppo AD. Abbiamo dimostrato un'architettura di soluzione end-to-end che le organizzazioni possono adottare per automatizzare e ridimensionare il proprio processo di onboarding per soddisfare le proprie esigenze di agilità, sicurezza e conformità. Se stai cercando una soluzione scalabile per automatizzare l'onboarding degli utenti, prova questa soluzione e lascia il tuo feedback qui sotto! Per ulteriori informazioni sull'onboarding in Studio, vedere Integrazione nel dominio Amazon SageMaker.
Circa gli autori
Ram Vital è un ML Specialist Solutions Architect presso AWS. Ha oltre 20 anni di esperienza nell'architettura e nella creazione di applicazioni distribuite, ibride e cloud. È appassionato di creare soluzioni AI/ML e Big Data sicure e scalabili per aiutare i clienti aziendali nel loro percorso di adozione e ottimizzazione del cloud per migliorare i loro risultati aziendali. Nel tempo libero guida la sua moto e cammina con la sua pecora-a-doodle di 2 anni!
Durga Sury è un ML Solutions Architect nel team di Amazon SageMaker Service SA. È appassionata di rendere il machine learning accessibile a tutti. Nei suoi 4 anni in AWS, ha contribuito a configurare piattaforme AI/ML per clienti aziendali. Quando non lavora, ama i giri in moto, i romanzi gialli e le escursioni con il suo husky di 5 anni.
- Distribuzione di contenuti basati su SEO e PR. Ricevi amplificazione oggi.
- EVM Finance. Interfaccia unificata per la finanza decentralizzata. Accedi qui.
- Quantum Media Group. IR/PR amplificato. Accedi qui.
- PlatoAiStream. Intelligenza dei dati Web3. Conoscenza amplificata. Accedi qui.
- Fonte: https://aws.amazon.com/blogs/machine-learning/onboard-users-to-amazon-sagemaker-studio-with-active-directory-group-specific-iam-roles/
- :ha
- :È
- :non
- $ SU
- 1
- 11
- 116
- 20
- 20 anni
- 200
- 22
- 24
- 7
- 9
- a
- WRI
- Accetta
- accesso
- accessibile
- Il mio account
- conti
- Raggiungere
- Action
- azioni
- attivo
- Ad
- aggiungere
- aggiunto
- Inoltre
- Admin
- amministratori
- adottare
- Adozione
- Dopo shavasana, sedersi in silenzio; saluti;
- contro
- AI / ML
- Tutti
- consentire
- anche
- Amazon
- Amazon Sage Maker
- Amazon Sage Maker Studio
- Amazon Web Services
- an
- ed
- api
- API
- Applicazioni
- applicazioni
- approccio
- opportuno
- applicazioni
- architettura
- SONO
- AS
- addetto
- Associate
- associato
- assunzione
- At
- allegare
- Autenticazione
- autorizzato
- automatizzare
- automaticamente
- Automatizzare
- AWS
- precedente
- basato
- BE
- perché
- stato
- Big
- Big Data
- stile di vita
- entrambi
- costruire
- Costruzione
- autobus
- affari
- by
- chiamata
- Materiale
- casi
- centro
- centrale
- il cambiamento
- Modifiche
- carattere
- dai un'occhiata
- Scegli
- cliente
- Cloud
- adozione del cloud
- codice
- COM
- completamento di una
- conformità
- Connettiti
- consiste
- consolle
- costruire
- contesto
- Aziende
- Corrispondente
- creare
- creato
- Creazione
- creazione
- Attualmente
- Clienti
- dati
- Banca Dati
- Predefinito
- dimostrato
- schierare
- descrizione
- dettaglio
- dettagli
- Mercato
- disabile
- discusso
- distribuito
- do
- non
- fare
- dominio
- domini
- Dont
- giù
- ogni
- In precedenza
- editore
- effetto
- o
- altro
- Abilita
- da un capo all'altro
- entrare
- Impresa
- iscrizione
- Ambiente
- Evento
- eventi
- tutti
- esempio
- esecuzione
- esperienza
- ha spiegato
- esterno
- falso
- feedback
- Compila il
- filtraggio
- Nome
- Focus
- i seguenti
- Nel
- da
- function
- funzioni
- Inoltre
- ottenere
- concedere
- concesso
- Gruppo
- Gruppo
- guida
- maniglia
- Avere
- he
- Aiuto
- aiutato
- suo
- il suo
- Come
- HTML
- http
- HTTPS
- centinaia
- IBRIDO
- ID
- Identità
- if
- illustra
- subito
- importare
- competenze
- in
- inclusi
- informazioni
- esempio
- integrato
- integrazione
- invocato
- IT
- viaggio
- json
- apprendimento
- meno
- Lasciare
- Consente di
- Livello
- Lista
- località
- registrati
- logica
- cerca
- ricerca
- ama
- macchina
- machine learning
- mantenere
- make
- Fare
- gestione
- manualmente
- mappatura
- partita
- corrispondenza
- Maggio..
- Soddisfare
- membro
- iscrizione
- appartenenze
- metodo
- metodi
- ML
- Moda
- modelli
- modificare
- Monitorare
- Scopri di più
- MOTO
- multiplo
- Mistero
- Nome
- di denominazione
- Navigazione
- Bisogno
- di applicazione
- che necessitano di
- esigenze
- Niente
- adesso
- ottenuto
- of
- OTTA
- on
- Onboard
- Procedura di Onboarding
- una volta
- ONE
- aprire
- ottimizzazione
- or
- organizzazione
- organizzazioni
- OS
- su
- risultati
- ancora
- panoramica
- proprio
- pagina
- vetro
- parametro
- partner
- appassionato
- Cartamodello
- modelli
- Eseguire
- eseguita
- esegue
- permessi
- persiste
- posto
- piattaforma
- Piattaforme
- Platone
- Platone Data Intelligence
- PlatoneDati
- politica
- Post
- un bagno
- privilegio
- processi
- Profilo
- Profili
- fornire
- purché
- fornitore
- fornitura
- rapidamente
- Leggi
- raccomandare
- regione
- rimuovere
- rimosso
- richiesta
- necessario
- Requisiti
- risorsa
- risposta
- ritorno
- Ruolo
- ruoli
- Regola
- running
- s
- SA
- sagemaker
- scalabile
- Scala
- Scopo
- sicuro
- problemi di
- vedere
- serverless
- servizio
- Servizi
- set
- lei
- dovrebbero
- Spettacoli
- simile
- da
- singolo
- So
- soluzione
- Soluzioni
- Fonte
- fonti
- specialista
- Standard
- Regione / Stato
- dichiarazione
- Stato dei servizi
- step
- Passi
- Ancora
- Tornare al suo account
- studio
- di successo
- supporto
- supporti
- tavolo
- Target
- team
- test
- che
- Il
- loro
- poi
- questo
- Attraverso
- tempo
- a
- Treni
- innescare
- vero
- prova
- Digitare
- Sconosciuto
- fino a quando
- URL
- uso
- Utente
- utenti
- usa
- utilizzando
- APPREZZIAMO
- varietà
- verificare
- versione
- via
- Visualizza
- virtuale
- volume
- aspettare
- volere
- we
- sito web
- servizi web
- Web-basata
- WELL
- quando
- volere
- con
- senza
- Lavora
- flusso di lavoro
- lavoro
- scrittura
- anni
- Tu
- Trasferimento da aeroporto a Sharm
- zefiro