

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Einrichten von IAM-Berechtigungen für MLflow
<a name="mlflow-create-tracking-server-iam"></a>

Sie müssen die erforderlichen IAM-Servicerollen konfigurieren, um mit MLflow in Amazon SageMaker AI zu beginnen. 

Wenn Sie eine neue Amazon SageMaker AI-Domain für den Zugriff auf Ihre Experimente in Studio erstellen, können Sie die erforderlichen IAM-Berechtigungen während der Domaineinrichtung konfigurieren. Weitere Informationen finden Sie unter [Einrichten von MLflow-IAM-Berechtigungen beim Erstellen einer Domain](#mlflow-create-tracking-server-iam-role-manager).

Informationen zum Einrichten von Berechtigungen mithilfe der IAM-Konsole finden Sie unter [Erstellen der erforderlichen IAM-Servicerollen in der IAM-Konsole](#mlflow-create-tracking-server-iam-service-roles).

Sie müssen die Autorisierungskontrollen für `sagemaker-mlflow`-Aktionen konfigurieren. Sie können optional detailliertere Autorisierungskontrollen definieren, um aktionsspezifische MLflow-Berechtigungen zu steuern. Weitere Informationen finden Sie unter [Erstellen aktionsspezifischer Autorisierungskontrollen](#mlflow-create-tracking-server-update-iam-actions).

## Einrichten von MLflow-IAM-Berechtigungen beim Erstellen einer Domain
<a name="mlflow-create-tracking-server-iam-role-manager"></a>

Wenn Sie eine neue Amazon SageMaker AI-Domain für Ihre Organisation einrichten, können Sie IAM-Berechtigungen für Ihre Domain-Servicerolle über die Einstellungen „**Benutzer“ und „ML-Aktivitäten**“ konfigurieren.

**Um IAM-Berechtigungen für die Verwendung von MLflow mit SageMaker KI bei der Einrichtung einer neuen Domain zu konfigurieren**

1. Richten Sie mit der SageMaker AI-Konsole eine neue Domain ein. Wählen **Sie auf der Seite SageMaker KI-Domain** **einrichten die Option Für Organisationen einrichten aus**. Weitere Informationen finden Sie unter [Benutzerdefinierte Einrichtung mit der Konsole](onboard-custom.md#onboard-custom-instructions-console).

1. Wählen Sie bei der Einrichtung von **Benutzern und ML-Aktivitäten** aus den folgenden ML-Aktivitäten für MLflow: MLflow **verwenden, MLflow** **Tracking Server verwalten** und **Zugriff auf AWS Dienste für MLflow erforderlich**. Weitere Informationen zu diesen Aktivitäten finden Sie in den Erläuterungen, die diesem Verfahren folgen.

1. Schließen Sie die Einrichtung und Erstellung Ihrer neuen Domain ab.

Die folgenden MLflow ML-Aktivitäten sind in Amazon SageMaker Role Manager verfügbar:
+ **MLflow verwenden**: Diese ML-Aktivität gewährt der Domain-Servicerolle die Berechtigung, MLflow-REST-APIs aufzurufen, um Experimente, Läufe und Modelle in MLflow zu verwalten.
+ **MLflow-Tracking-Server verwalten**: Diese ML-Aktivität gewährt der Domain-Servicerolle die Erlaubnis, Tracking-Server zu erstellen, zu aktualisieren, zu starten, zu beenden und zu löschen.
+ **Zugriff auf AWS Services for MLflow erforderlich**: Diese ML-Aktivität stellt die Domain-Servicerollenberechtigungen bereit, die für den Zugriff auf Amazon S3 und die SageMaker AI Model Registry erforderlich sind. Auf diese Weise können Sie die Domain-Servicerolle als Tracking-Server-Servicerolle verwenden.

Weitere Informationen über ML-Aktivitäten im Rollenmanager finden Sie unter [Referenz zur ML-Aktivität](role-manager-ml-activities.md).

## Erstellen der erforderlichen IAM-Servicerollen in der IAM-Konsole
<a name="mlflow-create-tracking-server-iam-service-roles"></a>

Wenn Sie Ihre Domain-Servicerolle nicht erstellt oder aktualisiert haben, müssen Sie stattdessen die folgenden Servicerollen in der IAM-Konsole erstellen, um einen MLflow-Tracking-Server zu erstellen und zu verwenden:
+ Eine IAM-Servicerolle für den Tracking-Server, mit der der Tracking-Server auf KI-Ressourcen zugreifen SageMaker kann
+ Eine SageMaker KI-IAM-Servicerolle, mit der SageMaker KI MLflow-Ressourcen erstellen und verwalten kann

### IAM-Richtlinien für die IAM-Servicerolle des Tracking-Servers
<a name="mlflow-create-tracking-server-iam-service-roles-ts"></a>

Die IAM-Server-Server-Server-Server-Serverrolle wird vom Tracking-Server verwendet, um auf die benötigten Ressourcen wie Amazon S3 und die SageMaker Model Registry zuzugreifen.

Verwenden Sie bei der Erstellung der IAM-Servicerolle für den Tracking-Server die folgende IAM-Vertrauensrichtlinie:

------
#### [ JSON ]

****  

```
{
     "Version":"2012-10-17",		 	 	 
     "Statement": [
         {
             "Effect": "Allow",
             "Principal": {
                 "Service": [                     
                      "sagemaker.amazonaws.com"
                 ]
             },
             "Action": "sts:AssumeRole"
         }
     ]
 }
```

------

Fügen Sie in der IAM-Konsole die folgende Berechtigungsrichtlinie zu Ihrer Tracking-Server-Servicerolle hinzu:

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:Get*",
                "s3:Put*",
                "s3:List*",
                "sagemaker:AddTags",
                "sagemaker:CreateModelPackageGroup",
                "sagemaker:CreateModelPackage",
                "sagemaker:UpdateModelPackage",
                "sagemaker:DescribeModelPackageGroup"
            ],
            "Resource": "{{*}}"
        }
    ]
}
```

------

### IAM-Richtlinie für die SageMaker AI IAM-Servicerolle
<a name="mlflow-create-tracking-server-iam-service-roles-sm"></a>

Die SageMaker AI-Servicerolle wird vom Client verwendet, der auf den MLflow Tracking Server zugreift, und benötigt Berechtigungen, um MLflow REST-APIs aufzurufen. Die SageMaker AI-Servicerolle benötigt außerdem SageMaker API-Berechtigungen, um Tracking-Server zu erstellen, anzuzeigen, zu aktualisieren, zu starten, zu stoppen und zu löschen. 

Sie können eine neue Rolle erstellen oder eine vorhandene Rolle aktualisieren. Für die SageMaker AI-Servicerolle ist die folgende Richtlinie erforderlich: 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	     
    "Statement": [        
        {            
            "Effect": "Allow",            
            "Action": [
                "sagemaker-mlflow:*",
                "sagemaker:CreateMlflowTrackingServer",
                "sagemaker:ListMlflowTrackingServers",
                "sagemaker:UpdateMlflowTrackingServer",
                "sagemaker:DeleteMlflowTrackingServer",
                "sagemaker:StartMlflowTrackingServer",
                "sagemaker:StopMlflowTrackingServer",
                "sagemaker:CreatePresignedMlflowTrackingServerUrl"
            ],            
            "Resource": "*"        
        }        
    ]
}
```

------

## Erstellen aktionsspezifischer Autorisierungskontrollen
<a name="mlflow-create-tracking-server-update-iam-actions"></a>

Sie müssen Autorisierungskontrollen für `sagemaker-mlflow` einrichten und können optional aktionsspezifische Autorisierungskontrollen konfigurieren, um MLflow-Berechtigungen, die Ihre Benutzer auf einem MLflow-Tracking-Server haben, detaillierter zu steuern.

**Anmerkung**  
Bei den folgenden Schritten wird davon ausgegangen, dass bereits ein ARN für einen MLflow-Tracking-Server verfügbar ist. Informationen zum Erstellen eines Tracking-Servers finden Sie unter [Erstellen eines Tracking-Servers in Studio](mlflow-create-tracking-server-studio.md) oder[Erstellen Sie einen Tracking-Server mit dem AWS CLI](mlflow-create-tracking-server-cli.md).

Der folgende Befehl erstellt eine Datei mit dem Namen`mlflow-policy.json`, die Ihrem Tracking-Server IAM-Berechtigungen für alle verfügbaren SageMaker AI MLflow-Aktionen gewährt. Sie können die Berechtigungen eines Benutzers optional einschränken, indem Sie die spezifischen Aktionen auswählen, die dieser Benutzer ausführen soll. Für eine Liste der verfügbaren Aktionen siehe[Für MLflow unterstützte IAM-Aktionen](#mlflow-create-tracking-server-iam-actions).

```
# Replace "Resource":"*" with "Resource":"TrackingServerArn" 
# Replace "sagemaker-mlflow:*" with specific actions

printf '{
    "Version": "2012-10-17",		 	 	     
    "Statement": [        
        {            
            "Effect": "Allow",            
            "Action": "{{sagemaker-mlflow:*}}",            
            "Resource": "{{*}}"        
        }        
    ]
}' > mlflow-policy.json
```

Verwenden Sie die `mlflow-policy.json`-Datei, um eine IAM-Richtlinie mithilfe der AWS CLI zu erstellen. 

```
aws iam create-policy \
  --policy-name {{MLflowPolicy}} \
  --policy-document {{file://mlflow-policy.json}}
```

Rufen Sie Ihre Konto-ID ab und verknüpfen Sie die Richtlinie mit Ihrer IAM-Rolle.

```
# Get your account ID
aws sts get-caller-identity

# Attach the IAM policy using your exported role and account ID
aws iam attach-role-policy \
  --role-name {{$role_name}} \
  --policy-arn arn:aws:iam::{{123456789012}}:policy/{{MLflowPolicy}}
```

### Für MLflow unterstützte IAM-Aktionen
<a name="mlflow-create-tracking-server-iam-actions"></a>

Die folgenden SageMaker AI MLflow-Aktionen werden für die Autorisierungszugriffskontrolle unterstützt:
+ sagemaker-mlflow:AccessUI
+ sagemaker-mlflow: CreateExperiment
+ sagemaker-mlflow: SearchExperiments
+ sagemaker-mlflow: GetExperiment
+ sagemaker-mlflow: GetExperimentByName
+ sagemaker-mlflow: DeleteExperiment
+ sagemaker-mlflow: RestoreExperiment
+ sagemaker-mlflow: UpdateExperiment
+ sagemaker-mlflow: CreateRun
+ sagemaker-mlflow: DeleteRun
+ sagemaker-mlflow: RestoreRun
+ sagemaker-mlflow: GetRun
+ sagemaker-mlflow: LogMetric
+ sagemaker-mlflow: LogBatch
+ sagemaker-mlflow: LogModel
+ sagemaker-mlflow: LogInputs
+ sagemaker-mlflow: SetExperimentTag
+ sagemaker-mlflow: SetTag
+ sagemaker-mlflow: DeleteTag
+ sagemaker-mlflow: LogParam
+ sagemaker-mlflow: GetMetricHistory
+ sagemaker-mlflow: SearchRuns
+ sagemaker-mlflow: ListArtifacts
+ sagemaker-mlflow: UpdateRun
+ sagemaker-mlflow: CreateRegisteredModel
+ sagemaker-mlflow: GetRegisteredModel
+ sagemaker-mlflow: RenameRegisteredModel
+ sagemaker-mlflow: UpdateRegisteredModel
+ sagemaker-mlflow: DeleteRegisteredModel
+ sagemaker-mlflow: GetLatestModelVersions
+ sagemaker-mlflow: CreateModelVersion
+ sagemaker-mlflow: GetModelVersion
+ sagemaker-mlflow: UpdateModelVersion
+ sagemaker-mlflow: DeleteModelVersion
+ sagemaker-mlflow: SearchModelVersions
+ sagemaker-mlflow: GetDownloadURIForModelVersionArtifacts
+ sagemaker-mlflow: TransitionModelVersionStage
+ sagemaker-mlflow: SearchRegisteredModels
+ sagemaker-mlflow: SetRegisteredModelTag
+ sagemaker-mlflow: DeleteRegisteredModelTag
+ sagemaker-mlflow: DeleteModelVersionTag
+ sagemaker-mlflow: DeleteRegisteredModelAlias
+ sagemaker-mlflow: SetRegisteredModelAlias
+ sagemaker-mlflow: GetModelVersionByAlias
+ sagemaker-mlflow: FinalizeLoggedModel
+ sagemaker-mlflow: GetLoggedModel
+ sagemaker-mlflow: DeleteLoggedModel
+ sagemaker-mlflow: SearchLoggedModels
+ sagemaker-mlflow: SetLoggedModelTags
+ sagemaker-mlflow: DeleteLoggedModelTag
+ sagemaker-mlflow: ListLoggedModelArtifacts
+ sagemaker-mlflow: LogLoggedModelParams
+ sagemaker-mlflow: LogOutputs