

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Studio에 대한 정책 및 권한을 설정
<a name="scheduled-notebook-policies-studio"></a>

첫 노트북 실행을 예약하기 전에 적절한 정책과 권한을 설치해야 합니다. 다음은 다음 권한을 설정하는 지침을 제공합니다.
+ 작업 실행 역할 신뢰 관계
+ 작업 실행 역할에 추가된 IAM 권한
+ (선택 사항) 사용자 지정 KMS 키를 사용하기 위한 AWS KMS 권한 정책

**중요**  
 AWS 계정이 서비스 제어 정책(SCP)이 있는 조직에 속한 경우 유효 권한은 SCPs가 허용하는 것과 IAM 역할 및 사용자 정책이 허용하는 것 사이의 논리적 교집합입니다. 예를 들어, 조직의 SCP에서는 사용자가 `us-east-1`및 `us-west-1`내의 리소스에만 액세스할 수 있도록 지정하고, 정책에서는 `us-west-1`및 `us-west-2`내의 리소스에만 액세스할 수 있도록 허용하는 경우, 궁극적으로는 `us-west-1`내의 리소스에만 액세스할 수 있습니다. 역할 및 사용자 정책에 허용되는 모든 권한을 행사하려면 조직의 SCP가 자체 IAM 사용자 및 역할 정책과 동일한 권한 세트를 부여해야 합니다. 허용된 요청을 결정하는 방법에 대한 자세한 내용은 [계정 내 요청 허용 여부 결정](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html#policy-eval-denyallow)을 참조하세요.

**신뢰 관계**

신뢰 관계를 수정하려면 다음 단계를 완료합니다.

1. [IAM 콘솔](https://console.aws.amazon.com/iam/)을 엽니다.

1. 왼쪽 패널에서 **역할**을 선택합니다.

1. 노트북 작업에 대한 작업 실행 역할을 찾고 역할 이름을 선택합니다.

1. **신뢰 관계** 탭을 선택합니다.

1. **신뢰 정책 편집**을 선택합니다.

1. 다음 정책을 복사하여 붙여 넣습니다.

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

****  

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

------

1. **정책 업데이트(Update policy)**를 선택합니다.

## 추가 IAM 권한
<a name="scheduled-notebook-policies-add"></a>

다음과 같은 상황에서는 추가 IAM 권한을 포함해야 할 수 있습니다.
+ 스튜디오 실행 및 노트북 작업 역할이 서로 다른 경우
+ S3 VPC 엔드포인트를 통해 Amazon S3 리소스에 액세스해야 하는 경우
+ 사용자 지정 KMS 키를 사용하여 입력 및 출력 Amazon S3 버킷을 암호화하려는 경우

다음 설명에서는 각 사례에 필요한 정책을 제공합니다.

### 스튜디오 실행 및 노트북 작업 역할이 서로 다른 경우 필요한 권한
<a name="scheduled-notebook-policies-add-diffrole"></a>

다음 JSON 스니펫은 스튜디오 실행 역할을 노트북 작업 역할로 사용하지 않는 경우 스튜디오 실행 및 노트북 작업 역할에 추가해야 하는 예시 정책입니다. 권한을 추가로 제한해야 하는 경우 이 정책을 검토하고 수정하세요.

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

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement":[
      {
         "Effect":"Allow",
         "Action":"iam:PassRole",
         "Resource":"arn:aws:iam::*:role/*",
         "Condition":{
            "StringLike":{
               "iam:PassedToService":[
                  "sagemaker.amazonaws.com",
                  "events.amazonaws.com"
               ]
            }
         }
      },
      {
         "Effect":"Allow",
         "Action":[
            "events:TagResource",
            "events:DeleteRule",
            "events:PutTargets",
            "events:DescribeRule",
            "events:PutRule",
            "events:RemoveTargets",
            "events:DisableRule",
            "events:EnableRule"
         ],
         "Resource":"*",
         "Condition":{
            "StringEquals":{
               "aws:ResourceTag/sagemaker:is-scheduling-notebook-job":"true"
            }
         }
      },
      {
         "Effect":"Allow",
         "Action":[
            "s3:CreateBucket",
            "s3:PutBucketVersioning",
            "s3:PutEncryptionConfiguration"
         ],
         "Resource":"arn:aws:s3:::sagemaker-automated-execution-*"
      },
      {
            "Sid": "S3DriverAccess",
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket",
                "s3:GetObject",
                "s3:GetBucketLocation"
            ],
            "Resource": [
                "arn:aws:s3:::sagemakerheadlessexecution-*"
            ]
      },
      {
         "Effect":"Allow",
         "Action":[
            "sagemaker:ListTags"
         ],
         "Resource":[
            "arn:aws:sagemaker:*:*:user-profile/*",
            "arn:aws:sagemaker:*:*:space/*",
            "arn:aws:sagemaker:*:*:training-job/*",
            "arn:aws:sagemaker:*:*:pipeline/*"
         ]
      },
      {
         "Effect":"Allow",
         "Action":[
            "sagemaker:AddTags"
         ],
         "Resource":[
            "arn:aws:sagemaker:*:*:training-job/*",
            "arn:aws:sagemaker:*:*:pipeline/*"
         ]
      },
      {
         "Effect":"Allow",
         "Action":[
            "ec2:DescribeDhcpOptions",
            "ec2:DescribeNetworkInterfaces",
            "ec2:DescribeRouteTables",
            "ec2:DescribeSecurityGroups",
            "ec2:DescribeSubnets",
            "ec2:DescribeVpcEndpoints",
            "ec2:DescribeVpcs",
            "ecr:BatchCheckLayerAvailability",
            "ecr:BatchGetImage",
            "ecr:GetDownloadUrlForLayer",
            "ecr:GetAuthorizationToken",
            "s3:ListBucket",
            "s3:GetBucketLocation",
            "s3:GetEncryptionConfiguration",
            "s3:PutObject",
            "s3:DeleteObject",
            "s3:GetObject",
            "sagemaker:DescribeApp",
            "sagemaker:DescribeDomain",
            "sagemaker:DescribeUserProfile",
            "sagemaker:DescribeSpace",
            "sagemaker:DescribeStudioLifecycleConfig",
            "sagemaker:DescribeImageVersion",
            "sagemaker:DescribeAppImageConfig",
            "sagemaker:CreateTrainingJob",
            "sagemaker:DescribeTrainingJob",
            "sagemaker:StopTrainingJob",
            "sagemaker:Search",
            "sagemaker:CreatePipeline",
            "sagemaker:DescribePipeline",
            "sagemaker:DeletePipeline",
            "sagemaker:StartPipelineExecution"
         ],
         "Resource":"*"
      }
   ]
}
```

------

### S3 VPC 엔드포인트를 통해 Amazon S3 리소스에 액세스해야 하는 경우 필요한 권한
<a name="scheduled-notebook-policies-add-vpc"></a>

SageMaker 스튜디오를 프라이빗 VPC 모드에서 실행하고 S3 VPC 엔드포인트를 통해 S3에 액세스하는 경우 VPC 엔드포인트 정책에 권한을 추가하여 VPC 엔드포인트를 통해 액세스할 수 있는 S3 리소스를 제어할 수 있습니다. VPC 엔드포인트 정책에 다음 권한을 추가합니다. 권한을 추가로 제한해야 하는 경우 정책을 수정할 수 있습니다.예를 들어 `Principal`필드에 더 좁은 사양을 제공할 수 있습니다.

```
{
    "Sid": "S3DriverAccess",
    "Effect": "Allow",
    "Principal": "*",
    "Action": [
        "s3:GetBucketLocation",
        "s3:GetObject",
        "s3:ListBucket"
    ],
    "Resource": "arn:aws:s3:::sagemakerheadlessexecution-*"
}
```

S3 VPC 엔드포인트 정책을 설정하는 방법에 대한 자세한 내용은 [VPC 엔드포인트 정책 편집](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-s3.html#edit-vpc-endpoint-policy-s3)을 참조하세요.

### 사용자 지정 KMS 키를 사용하는 데 필요한 권한(선택 사항)
<a name="scheduled-notebook-policies-add-kms"></a>

기본적으로 입력 및 출력 Amazon S3 버킷은 서버 측 암호화를 사용하여 암호화되지만, 출력 Amazon S3 버킷과 노트북 작업에 연결된 스토리지 볼륨의 데이터를 암호화하는 사용자 지정 KMS 키를 지정할 수 있습니다.

사용자 지정 KMS 키를 사용하려면 다음 정책을 연결하고 자체 KMS 키 ARN을 제공하세요.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
      {
         "Effect":"Allow",
         "Action":[
            "kms:Encrypt",
            "kms:Decrypt",
            "kms:ReEncrypt*",
            "kms:GenerateDataKey*",
            "kms:DescribeKey",
            "kms:CreateGrant"
         ],
         "Resource":"arn:aws:kms:us-east-1:111122223333:key/key-id"
      }
   ]
}
```

------