View a markdown version of this page

MLflow アプリの IAM アクセス許可を設定する - Amazon SageMaker AI

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

MLflow アプリの IAM アクセス許可を設定する

Amazon SageMaker AI で MLflow Apps の使用を開始するには、必要な IAM サービスロールを設定する必要があります。

Studio で実験にアクセスするための新しい Amazon SageMaker AI ドメインを作成する場合は、ドメインの設定中に必要な IAM アクセス許可を設定できます。詳細については、「新しいドメインの作成時に MLflow IAM アクセス許可を設定する」を参照してください。

IAM コンソールを使用してアクセス許可を設定するには、「IAM コンソールで必要な IAM サービスロールを作成する」を参照してください。

sagemaker-mlflow アクションに対する認証コントロールを設定する必要があります。必要に応じて、さらに詳細な認証コントロールを定義して、アクションごとの MLflow アクセス許可を制御できます。詳細については、「アクションごとの認証コントロールを作成する」を参照してください。

新しいドメインの作成時に MLflow IAM アクセス許可を設定する

組織の新しい Amazon SageMaker AI ドメインを設定するときは、[ユーザーと ML アクティビティ] 設定を通じて、ドメインサービスロールの IAM アクセス許可を設定できます。

  1. SageMaker AI コンソールを使用して新しいドメインを設定します。[SageMaker AI Domain をセットアップ] ページで、[組織向けの設定] を選択します。詳細については、「コンソールを使用したカスタムセットアップ」を参照してください。

  2. ユーザーと ML アクティビティを設定するときは、MLflow の次の ML アクティビティから選択します。MLflow の使用MLflow アプリの管理MLflow AWS のサービスに必要なアクセス。これらのアクティビティの詳細については、この手順の後の説明を参照してください。

  3. 新しいドメインの設定と作成を完了します。

Amazon SageMaker Role Manager では、次の MLflow ML アクティビティを使用できます。

  • MLflow を使用: この ML アクティビティは、MLflow で実験、実行、モデルを管理するために、MLflow REST API を呼び出すアクセス許可をドメインサービスロールに付与します。

  • MLflow アプリの管理: この ML アクティビティは、MLflow アプリを作成、更新、削除するアクセス許可をドメインサービスロールに付与します。

  • MLflow Apps AWS のサービス の に必要なアクセス: この ML アクティビティは、Amazon S3 と SageMaker AI Model Registry にアクセスするために必要なドメインサービスロールのアクセス許可を提供します。これにより、ドメインサービスロールを追跡サーバーサービスロールとして使用できるようになります。

Role Manager の ML アクティビティの詳細については、「ML アクティビティリファレンス」を参照してください。

IAM コンソールで必要な IAM サービスロールを作成する

ドメインサービスロールを作成または更新しなかった場合は、MLflow アプリを作成して使用するには、代わりに IAM コンソールで次のサービスロールを作成する必要があります。

  • アプリが SageMaker AI リソースにアクセスするために使用できる MLflow アプリ IAM サービスロール

  • SageMaker AI が MLflow リソースの作成と管理に使用できる、SageMaker AI の IAM サービスロール

MLflow アプリ IAM サービスロールの IAM ポリシー

MLflow アプリの IAM サービスロールは、Amazon S3 や SageMaker Model Registry など、必要なリソースにアクセスするためにアプリによって使用されます。

アプリの IAM サービスロールを作成するときは、次の IAM 信頼ポリシーを使用します。

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

IAM コンソールで、アプリサービスロールに次のアクセス許可ポリシーを追加します。

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": "*" } ] }

SageMaker AI の IAM サービスロールの IAM ポリシー

SageMaker AI サービスロールは、MLflow アプリにアクセスするクライアントによって使用され、MLflow REST APIs を呼び出すためのアクセス許可が必要です。SageMaker AI サービスロールには、アプリケーションを作成、更新、削除するための SageMaker API アクセス許可も必要です。

新しいロールを作成するか、既存のロールを更新できます。SageMaker AI サービスロールには、次のポリシーが必要です。

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": "*" } ] }

アクションごとの認証コントロールを作成する

の認可コントロールを設定する必要があります。またsagemaker-mlflow、オプションでアクション固有の認可コントロールを設定して、ユーザーが MLflow アプリに対して持つより詳細な MLflow アクセス許可を管理できます。

注記

次の手順では、MLflow アプリの ARN が既に利用可能であることを前提としています。

MLflow アプリでサポートされているデータプレーン IAM アクション

認証アクセスコントロールでは、次の SageMaker AI MLflow アクションがサポートされています。

  • sagemaker:CallMlflowAppApi