

# 작업 실행에 대해 동적 범위의 정책 부여
<a name="dynamically-scoped-policies"></a>

AWS Glue는 작업 실행에 대한 동적 세션 정책이라는 강력한 새 기능을 제공합니다. 이 기능을 사용하면 여러 개의 IAM 역할을 생성하지 않고도 각 작업 실행에 세분화된 사용자 지정 권한을 지정할 수 있습니다.

`StartJobRun` API를 사용하여 Glue 작업을 시작할 때 인라인 세션 정책을 포함할 수 있습니다. 이 정책은 특정 작업 실행 기간 동안 작업 실행 역할의 권한을 일시적으로 수정합니다. 다른 AWS 서비스의 `AssumeRole` API에서 임시 자격 증명을 사용하는 것과 유사합니다.
+ **보안 개선**: 작업 권한을 각 실행에 필요한 최소 권한으로 제한할 수 있습니다.
+ **관리 간소화**: 다양한 시나리오에 맞춰 수많은 IAM 역할을 생성하고 유지할 필요가 없습니다.
+ **유연성**: 런타임 파라미터 또는 테넌트별 요구 사항에 따라 권한을 동적으로 조정할 수 있습니다.
+ **확장성**: 이 방법은 테넌트 간에 리소스를 격리해야 하는 다중 테넌트 환경에 적합합니다.

**동적 범위 정책 사용 부여 예제:**

다음 예제에서는 작업 실행 ID에 따라 경로가 동적으로 결정되는 특정 Amazon S3 버킷 경로에만 **읽기 및 **쓰기 액세스 권한을 작업에 부여하는 방법을 보여줍니다. 각 작업 실행에 대해 세분화된 실행별 권한을 구현하는 방법을 보여줍니다.

**CLI에서**

```
aws glue start-job-run \
    --job-name "your-job-name" \
    --execution-role-session-policy '{
        "Version": "2012-10-17",		 	 	 
        "Statement": [
            {
                "Effect": "Allow",
                "Action": [
                    "s3:GetObject",
                    "s3:PutObject"
                ],
                "Resource": [
                    "arn:aws:s3:::specific-bucket/${JobRunId}/*"
                ]
            }
        ]
    }'
```