クロスアカウント検出可能性 - Amazon SageMaker

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

クロスアカウント検出可能性

他のアカウントに登録されているモデルパッケージグループを探索してアクセスすることで、データサイエンティストとデータエンジニアはデータの一貫性を高め、コラボレーションを合理化し、労力の重複を減らすことができます。Amazon SageMaker Model Registry を使用すると、モデルパッケージグループをアカウント間で共有できます。リソースの共有に関連するアクセス許可には、次の 2 つのカテゴリがあります。

  • 検出可能性 : 検出可能性は、リソースコンシューマーアカウントが 1 つ以上のリソース所有者アカウントによって共有されているモデルパッケージグループを表示する機能です。検出可能性は、リソース所有者が必要なリソースポリシーを共有モデルパッケージグループにアタッチする場合にのみ可能です。リソースコンシューマーは、 内のすべての共有モデルパッケージグループを表示できます。 AWS RAM UI と AWS CLI.

  • アクセシビリティ: アクセシビリティは、リソースコンシューマーアカウントが共有モデルパッケージグループを使用できる機能です。例えば、必要なアクセス許可がある場合、リソースコンシューマーは別のアカウントからモデルパッケージを登録またはデプロイできます。

アクセシビリティ

リソースコンシューマーが共有モデルパッケージグループを使用するアクセス許可を持っている場合、モデルパッケージグループのバージョンを登録またはデプロイできます。リソースコンシューマーが共有モデルパッケージグループを登録する方法の詳細については、「」を参照してください別のアカウントからモデルバージョンを登録する。リソースコンシューマーが共有モデルパッケージグループをデプロイする方法の詳細については、「」を参照してください別のアカウントからモデルバージョンをデプロイする

検出可能性

リソース所有者は、リソース共有を作成し、エンティティにリソースポリシーをアタッチすることで、モデルパッケージグループの検出可能性を設定できます。で一般的なリソース共有を作成する方法の詳細な手順 AWS RAM、「」の「リソース共有の作成」を参照してください。 AWS RAMドキュメント内) を参照してください。

を使用してモデルパッケージグループの検出可能性を設定するには、以下の手順を実行します。 AWS RAM コンソールまたはモデルレジストリリソースポリシー APIs。

AWS CLI
  1. モデル所有者アカウントにリソース共有を作成します。

    1. モデル所有者は、次のコマンドに示すように、リソースポリシー put-model-package-group-policy API を使用してモデルパッケージグループに SageMaker リソースポリシーをアタッチします。

      aws sagemaker put-model-package-group-policy --model-package-group-name <model-package-group-name> --resource-policy "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Sid\": \"ExampleResourcePolicy\",\"Effect\":\"Allow\",\"Principal\":<principal>, \"Action\":[\"sagemaker:DescribeModelPackage\", \"sagemaker:ListModelPackages\",\"sagemaker:DescribeModelPackageGroup\"], \"Resource\":[\"<model-package-group-arn>,\" \"arn:aws:sagemaker:<region>:<owner-account-id>:model-package/ <model-package-group-name>/*\"]}]}"
      注記

      リソースポリシーには、さまざまなアクションの組み合わせをアタッチできます。カスタムポリシーの場合、作成されたアクセス許可はモデルパッケージグループの所有者によって昇格される必要があり、昇格されたアクセス許可がアタッチされたエンティティのみが検出可能です。プロモーション不可能なリソース共有は、 を通じて検出または管理することはできません AWS RAM.

    2. これを確認するには AWS RAM はリソース共有 を作成しARN、次のコマンドを使用します。

      aws ram get-resource-share-associations --association-type resource --resource-arn <model-package-group-arn>

      レスポンスには、resource-share-arn エンティティの 。

    3. アタッチされたポリシーのアクセス許可がマネージドポリシーかカスタムポリシーかを確認するには、次のコマンドを使用します。

      aws ram list-resource-share-permissions --resource-share-arn <resource-share-arn>

      featureSet フィールドにはSTANDARD、次のように定義された値 CREATED_FROM_POLICYまたは を指定できます。

      • STANDARD: アクセス許可は既に存在します。

      • CREATED_FROM_POLICY: エンティティを検出できるようにするには、 アクセス許可を昇格させる必要があります。詳細については、「アクセス許可とリソース共有の昇格」を参照してください。

  2. モデルコンシューマーアカウントでリソース共有の招待を受け入れます。

    1. モデルパッケージグループのコンシューマーは、リソース共有の招待を受け入れます。すべてのリソースの招待を表示するには、次のコマンドを実行します。

      aws ram get-resource-share-invitations

      ステータスを持つリクエストを特定しPENDING、所有者アカウントのアカウント ID を含めます。

    2. 次のコマンドを使用して、モデル所有者からのリソース共有の招待を受け入れます。

      aws ram accept-resource-share-invitation --resource-share-invitation-arn <resource-share-invitation-arn>
AWS RAM console
  1. にログインする AWS RAM コンソール

  2. モデルパッケージグループの所有者アカウントからリソース共有を作成するには、次のステップを実行します。

    1. リソース共有の詳細を指定するには、次のステップを実行します。

      1. 名前 フィールドに、リソースに一意の名前を追加します。

      2. リソースカードで、ドロップダウンメニューを選択し、SageMaker モデルパッケージグループ を選択します。

      3. モデルパッケージグループリソース共有の ARN のチェックボックスをオンにします。

      4. リソースの選択カードで、モデルパッケージグループのリソース共有のチェックボックスをオンにします。

      5. タグカードで、リソース共有に追加するタグのキーと値のペアを追加します。

      6. [Next (次へ)] を選択します。

    2. 管理アクセス許可をリソース共有に関連付けるには、次のステップを実行します。

      1. 管理アクセス許可を使用する場合は、管理アクセス許可ドロップダウンメニューで管理アクセス許可を選択します。

      2. カスタムアクセス許可を使用する場合は、カスタマー管理アクセス許可 を選択します。この場合、モデルパッケージグループはすぐには検出できません。リソース共有を作成したら、 アクセス許可とリソースポリシーを昇格する必要があります。アクセス許可とリソース共有を昇格させる方法については、「」を参照してくださいアクセス許可とリソース共有の昇格。カスタムアクセス許可をアタッチする方法の詳細については、「 でのカスタマー管理アクセス許可の作成と使用」を参照してください。 AWS RAM.

      3. [Next (次へ)] を選択します。

    3. プリンシパルへのアクセスを許可するには、次のステップを実行します。

      1. 組織外のアカウントとの共有を許可するには、共有を他のユーザーに許可する を選択するか、組織内でのみ共有を許可する を選択します。

      2. 「プリンシパルタイプの選択」ドロップダウンメニューで、追加するプリンシパルのプリンシパルタイプと ID を追加します。

      3. 共有用に選択したプリンシパルを追加して選択します。

      4. [Next (次へ)] を選択します。

    4. 表示された共有設定を確認し、リソース共有の作成 を選択します。

  3. コンシューマーアカウントからのリソース共有の招待を受け入れます。モデル所有者がリソース共有とプリンシパルの関連付けを作成すると、指定されたリソースコンシューマーアカウントはリソース共有への参加の招待を受け取ります。リソースコンシューマーアカウントは、 の「自分と共有: リソース共有」ページで招待を表示して承諾できます。 AWS RAM console。でのリソースの受け入れと表示の詳細については、「」を参照してください。 AWS RAM、「アクセス」を参照してください。 AWS 共有されている リソース

共有モデルパッケージグループを表示する

リソース所有者が前のステップを完了してリソース共有を作成し、コンシューマーが共有の招待を受け入れると、コンシューマーは を使用して共有モデルパッケージグループを表示できます。 AWS CLI の または AWS RAM console。

AWS CLI

共有されているモデルパッケージグループを表示するには、モデルコンシューマーアカウントで次のコマンドを使用します。

aws sagemaker list-model-package-groups --cross-account-filter-option CrossAccount

AWS RAM コンソール

左 AWS RAM コンソール、リソース所有者、コンシューマーは、共有モデルパッケージグループを表示できます。リソース所有者は、「 で作成したリソース共有の表示」の手順に従って、コンシューマーと共有されているモデルパッケージグループを表示できます。 AWS RAM。 リソースコンシューマーは、「共有されているリソース共有の表示」の手順に従って、所有者が共有しているモデルパッケージグループを表示できます。

プリンシパルとリソース共有の関連付けを解除し、リソース共有を削除する

リソース所有者は、 を使用して、一連のアクセス許可のプリンシパルとリソース共有の関連付けを解除したり、リソース共有全体を削除したりできます。 AWS CLI または AWS RAM console。プリンシパルとリソース共有の関連付けを解除する方法の詳細については、「」の「リソース共有の更新」を参照してください。 AWS RAMドキュメント内) を参照してください。リソース共有を削除する方法の詳細については、「」の「リソース共有の削除」を参照してください。 AWS RAMドキュメント内) を参照してください。

AWS CLI

プリンシパルとリソース共有の関連付けを解除するには、dissociate-resource-share次のように コマンドを使用します。

aws ram disassociate-resource-share --resource-share-arn <resource-share-arn> --principals <principal>

リソース共有を削除するには、delete-resource-share次のように コマンドを使用します。

aws ram delete-resource-share --resource-share-arn <resource-share-arn>

AWS RAM コンソール

プリンシパルとリソース共有の関連付けを解除する方法の詳細については、「」の「リソース共有の更新」を参照してください。 AWS RAMドキュメント内) を参照してください。リソース共有を削除する方法の詳細については、「」の「リソース共有の削除」を参照してください。 AWS RAMドキュメント内) を参照してください。

アクセス許可とリソース共有の昇格

カスタマイズされた (カスタマーマネージド) アクセス許可を使用する場合は、モデルパッケージグループを検出できるように、 アクセス許可と関連するリソース共有を昇格させる必要があります。アクセス許可とリソース共有を昇格させるには、次のステップを実行します。

  1. カスタマイズしたアクセス許可が によってアクセス可能に昇格するには AWS RAM、次のコマンドを使用します。

    aws ram promote-permission-created-from-policy —permission-arn <permission-arn>
  2. 次のコマンドを使用してリソース共有を昇格させます。

    aws ram promote-resource-share-created-from-policy --resource-share-arn <resource-share-arn>

前のステップの実行中にOperationNotPermittedExceptionエラーが表示される場合、エンティティは検出できませんが、アクセス可能です。例えば、リソース所有者が などの継承ロールプリンシパルを持つリソースポリシーをアタッチした場合“Principal”: {“AWS”: “arn:aws:iam::3333333333:role/Role-1”}、またはリソースポリシーが “Action”: “*” を許可している場合、関連付けられたモデルパッケージグループは昇格も検出もできません。