Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Configura le autorizzazioni IAM per le app MLFlow
È necessario configurare i ruoli del servizio IAM necessari per iniziare a utilizzare le app MLFlow in Amazon SageMaker AI.
Se crei un nuovo dominio Amazon SageMaker AI per accedere ai tuoi esperimenti in Studio, puoi configurare le autorizzazioni IAM necessarie durante la configurazione del dominio. Per ulteriori informazioni, consulta Configurazione delle autorizzazioni IAM MLflow quando si crea un nuovo dominio.
Per configurare le autorizzazioni utilizzando la console IAM, consulta Creazione dei ruoli di servizio IAM necessari nella console IAM.
È necessario configurare i controlli di autorizzazione per le azioni sagemaker-mlflow. Facoltativamente, puoi definire controlli di autorizzazione più granulari per gestire le autorizzazioni MLflow specifiche per azione. Per ulteriori informazioni, consulta Creazione di controlli di autorizzazione specifici per azione.
Configurazione delle autorizzazioni IAM MLflow quando si crea un nuovo dominio
Quando configuri un nuovo dominio Amazon SageMaker AI per la tua organizzazione, puoi configurare le autorizzazioni IAM per il tuo ruolo di servizio di dominio tramite le impostazioni Users and ML Activities.
-
Configura un nuovo dominio utilizzando la console SageMaker AI. Nella pagina Configura il dominio SageMaker AI, scegli Configura per le organizzazioni. Per ulteriori informazioni, consulta Configurazione personalizzata tramite la console.
-
Quando configuri utenti e attività ML, scegli tra le seguenti attività ML per MLFlow: Usa MLFlow, Gestisci app MLFlow e Accesso richiesto ai AWS servizi per MLFlow. Per ulteriori informazioni su tali attività, consulta le spiegazioni che seguono questa procedura.
-
Completa la configurazione e la creazione del tuo nuovo dominio.
Le seguenti attività MLFlow ML sono disponibili in Amazon Role Manager: SageMaker
Usa MLflow: questa attività ML concede al ruolo del servizio di dominio l’autorizzazione a chiamare le REST API di MLflow per gestire esperimenti, esecuzioni e modelli in MLflow.
Gestisci le app MLFlow: questa attività ML concede al ruolo del servizio di dominio l'autorizzazione a creare, aggiornare ed eliminare le app MLFlow.
Accesso richiesto Servizi AWS per le app MLFlow: questa attività ML fornisce le autorizzazioni per il ruolo del servizio di dominio necessarie per accedere ad Amazon S3 e all'AI Model Registry. SageMaker Questo consente di utilizzare il ruolo del servizio di dominio come ruolo di servizio del server di tracciamento.
Per ulteriori informazioni sulle attività ML in Gestione dei ruoli, consulta Riferimento all'attività ML.
Creazione dei ruoli di servizio IAM necessari nella console IAM
Se non hai creato o aggiornato il tuo ruolo di servizio di dominio, devi invece creare i seguenti ruoli di servizio nella console IAM per creare e utilizzare un'app MLFlow:
Un ruolo del servizio IAM dell'app MLFlow che l'app può utilizzare per accedere alle risorse AI SageMaker
Un ruolo di servizio SageMaker AI IAM che l' SageMaker IA può utilizzare per creare e gestire le risorse MLFlow
Policy IAM per il ruolo del servizio IAM dell'app MLFlow
Il ruolo del servizio IAM dell'app MLFlow viene utilizzato dall'app per accedere alle risorse di cui ha bisogno, come Amazon S3 e il Model SageMaker Registry.
Quando crei il ruolo del servizio IAM dell'app, utilizza la seguente politica di fiducia IAM:
Nella console IAM, aggiungi la seguente politica di autorizzazioni al tuo ruolo di servizio dell'app:
Politica IAM per il ruolo del servizio SageMaker AI IAM
Il ruolo del servizio SageMaker AI viene utilizzato dal client che accede all'app MLFlow e necessita delle autorizzazioni per chiamare le API REST MLFlow. Il ruolo del servizio SageMaker AI richiede anche le autorizzazioni SageMaker API per creare, visualizzare, aggiornare ed eliminare app.
Puoi creare un nuovo ruolo o aggiornarne uno esistente. Il ruolo del servizio SageMaker AI richiede la seguente politica:
Creazione di controlli di autorizzazione specifici per azione
È necessario configurare i controlli di autorizzazione esagemaker-mlflow, se lo si desidera, è possibile configurare controlli di autorizzazione specifici per un'azione per gestire le autorizzazioni MLFlow più granulari di cui dispongono gli utenti su un'app MLFlow.
Nota
I passaggi seguenti presuppongono che sia già disponibile un ARN per un'app MLFlow.
Azioni IAM di Data Plane supportate per le app MLFlow
Le seguenti azioni SageMaker AI MLFlow sono supportate per il controllo dell'accesso alle autorizzazioni:
-
sagemaker: CallMlflowAppApi
autorizzazioni IAM per la sincronizzazione del Model Registry e la gestione del ciclo di vita
Quando si registrano i modelli MLFlow con l' SageMaker AI Model Registry, il ruolo del servizio IAM dell'app MLFlow richiede le seguenti autorizzazioni per eseguire la registrazione del modello, la gestione del ciclo di vita e il tracciamento del lignaggio:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sagemaker:CreateModelPackageGroup", "sagemaker:DescribeModelPackageGroup", "sagemaker:CreateModelPackage", "sagemaker:UpdateModelPackage", "sagemaker:AddTags" ], "Resource": "*" }, { "Sid": "S3ArtifactAccess", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:PutObject", "s3:ListBucket" ], "Resource": "*" }, { "Sid": "LineageTracking", "Effect": "Allow", "Action": [ "sagemaker:CreateAction", "sagemaker:AddAssociation" ], "Resource": "*" } ] }
La tabella seguente descrive cosa consente ciascuna autorizzazione:
| Azione | Scopo |
|---|---|
sagemaker:CreateModelPackageGroup |
Crea un Model Package Group quando si registra un nuovo nome di modello. |
sagemaker:DescribeModelPackageGroup |
Verifica se esiste già un Model Package Group prima di crearne uno. |
sagemaker:CreateModelPackage |
Crea un Model Package (versione) quando si registra una versione del modello. |
sagemaker:UpdateModelPackage |
Aggiorna la fase e lo stato del ciclo di vita del Model Package quando si impostano gli alias del ciclo di vita. |
sagemaker:AddTags |
Contrassegna il Model Package con i metadati che lo collegano al modello MLFlow. |
s3:GetObject |
Legge le specifiche di inferenza e gli artefatti di valutazione da Amazon S3 durante la registrazione. |
sagemaker:CreateAction, sagemaker:AddAssociation |
Crea associazioni di derivazione tra il modello MLFlow e il pacchetto di modelli AI. SageMaker Se manca, il lignaggio viene ignorato silenziosamente. |
Limita le transizioni del ciclo di vita con le chiavi di condizione IAM
Puoi utilizzare le chiavi di condizione IAM per controllare quali transizioni del ciclo di vita un ruolo è autorizzato a eseguire. Le seguenti chiavi di condizione sono disponibili per l'azione: sagemaker:UpdateModelPackage
sagemaker:ModelLifeCycle/stage— La fase del ciclo di vita che si sta impostando. Valori:staging,.productionsagemaker:ModelLifeCycle/stageStatus— Lo stato del ciclo di vita da impostare. Valori:pending,.active
Esempio: Negare le promozioni di produzione
La seguente politica impedisce a un ruolo di promuovere modelli sul production palco:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "sagemaker:UpdateModelPackage", "Resource": "*", "Condition": { "StringEquals": { "sagemaker:ModelLifeCycle/stage": "production" } } } ] }
Esempio: consenti solo le staging/pending transizioni
La seguente politica limita un ruolo a impostare i modelli solo sullo staging stage con pending status:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "sagemaker:UpdateModelPackage", "Resource": "*", "Condition": { "StringEquals": { "sagemaker:ModelLifeCycle/stage": "staging", "sagemaker:ModelLifeCycle/stageStatus": "pending" } } } ] }