

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

# IAM ロールのセットアップ
<a name="emr-spark-upgrade-agent-iam-role"></a>

セットアップ手順の CloudFormation スタックは、IAM ロールのセットアップを自動化します。手動で実行する場合は、以下の手順に従ってください。

## MCP サーバーの IAM ロールのセットアップ
<a name="emr-spark-upgrade-agent-iam-mcp-server"></a>

SMUS マネージド MCP サーバーにアクセスするには、次のインラインポリシーを持つ IAM ロールが必要です。

```
{  
    "Version": "2012-10-17",		 	 	 
    "Statement": [  
        {  
            "Sid": "AllowUseSagemakerUnifiedStudioMcpServer",  
            "Effect": "Allow",  
            "Action": [  
                "sagemaker-unified-studio-mcp:InvokeMcp",  
                "sagemaker-unified-studio-mcp:CallReadOnlyTool",  
                "sagemaker-unified-studio-mcp:CallPrivilegedTool"  
            ],  
            "Resource": [  
                "*"  
            ]  
        }  
    ]  
}
```

次のステップでは、このロールのプロファイルを作成します。認証情報を取得するためにこのロールを引き受けるいずれのアカウントも、ロールの引き受けポリシーに追加する必要があります。

```
{  
  "Version": "2012-10-17",		 	 	 
  "Statement": [  
    {  
      "Sid": "AllowAccountToAssumeRole",  
      "Effect": "Allow",  
      "Principal": { "AWS": "arn:aws:iam::<accountId>:root" },  
      "Action": "sts:AssumeRole"  
    }  
  ]  
}
```

## デプロイモード別の追加のアクセス許可 (EMR-EC2/EMR-S)
<a name="emr-spark-upgrade-agent-iam-deployment-modes"></a>

### EMR-EC2 アプリケーション
<a name="emr-spark-upgrade-agent-iam-emr-ec2"></a>

ポリシー内の Amazon S3 ステージングバケットを、アップグレードされたアーティファクトを保存する Amazon S3 バケットに置き換えます。

```
{  
  "Version": "2012-10-17",		 	 	 
  "Statement": [  
    {  
      "Effect": "Allow",  
      "Action": [  
        "elasticmapreduce:DescribeCluster",  
        "elasticmapreduce:DescribeStep",  
        "elasticmapreduce:ListSteps",  
        "elasticmapreduce:ListClusters",  
        "elasticmapreduce:DescribeJobFlows",  
        "elasticmapreduce:AddJobFlowSteps",  
        "elasticmapreduce:CreatePersistentAppUI",  
        "elasticmapreduce:DescribePersistentAppUI",  
        "elasticmapreduce:GetPersistentAppUIPresignedURL"  
      ],  
      "Resource": "*"  
    },  
    {  
      "Effect": "Allow",  
      "Action": [  
        "s3:GetBucket*",  
        "s3:GetObject*",  
        "s3:List*",  
        "s3:Put*"  
      ],  
      "Resource": [  
        "arn:aws:s3:::<s3-staging-bucket>",  
        "arn:aws:s3:::<s3-staging-bucket>/*"  
      ]  
    }  
  ]  
}
```

#### KMS アクセス許可 - ステージングバケット
<a name="emr-spark-upgrade-agent-iam-kms-staging"></a>

ステージングバケットが CMK で暗号化されている場合は、次のポリシーを追加します。サービスでは、データのアップロード時にバケットに設定された CMK が自動的に使用されます。

```
{  
  "Effect": "Allow",  
  "Action": [  
    "kms:GenerateDataKey",  
    "kms:Encrypt"  
  ],  
  "Resource": "arn:aws:kms:<region>:<account-id>:key/<cmk-key-id>"  
}
```

### EMR サーバーレスアプリケーション
<a name="emr-spark-upgrade-agent-iam-emr-serverless"></a>

ポリシー内の Amazon S3 ステージングバケットを、アップグレードされたアーティファクトを保存する Amazon S3 バケットに置き換えます。

```
{  
  "Version": "2012-10-17",		 	 	 
  "Statement": [  
    {  
      "Effect": "Allow",  
      "Action": [  
        "emr-serverless:StartJobRun",  
        "emr-serverless:GetJobRun",  
        "emr-serverless:GetApplication",  
        "emr-serverless:ListApplications",  
        "emr-serverless:GetDashboardForJobRun"  
      ],  
      "Resource": "*"  
    },  
    {  
      "Effect": "Allow",  
      "Action": "iam:PassRole",  
      "Resource": "*",  
      "Condition": {  
        "StringLike": {  
          "iam:PassedToService": "emr-serverless.amazonaws.com"  
        }  
      }  
    },  
    {  
      "Effect": "Allow",  
      "Action": [  
        "logs:GetLogEvents",  
        "logs:DescribeLogStreams"  
      ],  
      "Resource": "arn:aws:logs:*:*:log-group:*"  
    },  
    {  
      "Effect": "Allow",  
      "Action": [  
        "s3:GetBucket*",  
        "s3:GetObject*",  
        "s3:List*",  
        "s3:Put*"  
      ],  
      "Resource": [  
        "arn:aws:s3:::<s3-staging-bucket>",  
        "arn:aws:s3:::<s3-staging-bucket>/*"  
      ]  
    }  
  ]  
}
```

#### KMS アクセス許可 - ステージングバケット
<a name="emr-spark-upgrade-agent-iam-kms-staging-serverless"></a>

ステージングバケットが CMK で暗号化されている場合は、次のポリシーを追加します。データのアップロード時に、サービスは自動的にバケットに設定された CMK を使用します。

```
{  
  "Effect": "Allow",  
  "Action": [  
    "kms:GenerateDataKey",  
    "kms:Encrypt"  
  ],  
  "Resource": "arn:aws:kms:<region>:<account-id>:key/<cmk-key-id>"  
}
```

#### KMS アクセス許可 - CloudWatch Logs
<a name="emr-spark-upgrade-agent-iam-kms-cloudwatch"></a>

CloudWatch Logs が CMK で暗号化されている場合は、サービスが EMR-Serverless アプリケーションログを読み取れるように、次のポリシーを追加します。

```
{  
"Effect": "Allow",  
"Action": [  
    "kms:Decrypt",  
    "kms:DescribeKey"  
],  
"Resource": "arn:aws:kms:<region>:<account-id>:key/<cw-logs-cmk-id>"  
}
```