

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

# AWS Batch IAM 정책, 역할 및 권한
<a name="IAM_policies"></a>

기본적으로 사용자는 AWS Batch 리소스를 생성 또는 수정하거나 AWS Batch API, AWS Batch 콘솔 또는를 사용하여 작업을 수행할 권한이 없습니다 AWS CLI. 사용자가 이러한 작업을 수행하도록 허용하려면 특정 리소스 및 API 작업을 위한 사용자 권한을 부여하는 IAM 정책을 생성합니다. 그런 다음, 해당 권한이 필요한 사용자 또는 그룹에 이러한 정책을 연결합니다.

사용자 또는 그룹에 정책을 연결하면 해당 정책은 지정된 리소스에서 지정된 태스크를 수행할 권한을 사용자에게 허용하거나 거부합니다. 자세한 내용은 *IAM 사용 설명서*의 [권한 및 정책](https://docs.aws.amazon.com/IAM/latest/UserGuide/PermissionsAndPolicies.html)을 참조하세요. 사용자 지정 IAM 정책 관리 및 생성에 대한 자세한 내용은 [IAM 정책 관리](https://docs.aws.amazon.com/IAM/latest/UserGuide/ManagingPolicies.html) 섹션을 참조하세요.

AWS Batch 는 AWS 서비스 사용자를 대신하여 다른를 호출합니다. 따라서 AWS Batch 는 자격 증명을 사용하여 인증해야 합니다. 보다 구체적으로,는 이러한 권한을 제공하는 IAM 역할 및 정책을 생성하여 AWS Batch 인증합니다. 그런 다음, 컴퓨팅 환경을 생성할 때 역할을 컴퓨팅 환경과 연결합니다. 자세한 내용은 IAM *사용 설명서*의 [Amazon ECS 인스턴스 역할](instance_IAM_role.md), IAM 역할, [서비스 연결 역할 사용](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html) 및 [AWS 서비스에 대한 권한 위임을 위한 역할 생성을 참조하세요](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html). [https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html) 

**Topics**
+ [IAM 정책 구조](iam-policy-structure.md)
+ [리소스:에 대한 정책 예 AWS Batch](ExamplePolicies_BATCH.md)
+ [Resource: AWS Batch managed 정책](batch_managed_policies.md)

# IAM 정책 구조
<a name="iam-policy-structure"></a>

다음 항목에서는 IAM 정책의 구조에 대해 설명합니다.

**Topics**
+ [정책 구문](#policy-syntax)
+ [에 대한 API 작업 AWS Batch](#UsingWithbatch_Actions)
+ [에 대한 Amazon 리소스 이름 AWS Batch](#batch_ARN_Format)
+ [사용자에게 필요한 권한이 있는지 확인](#check-required-permissions)

## 정책 구문
<a name="policy-syntax"></a>

IAM 정책은 하나 이상의 문으로 구성된 JSON 문서입니다. 각 명령문의 구조는 다음과 같습니다.

```
{
  "Statement":[{
    "Effect":"effect",
    "Action":"action",
    "Resource":"arn",
    "Condition":{
      "condition":{
    "key":"value"
    }
      }
    }
  ]
}
```

명령문을 구성하는 네 가지 기본 요소가 있습니다.
+ **효과(Effect)**: *효과(effect)*는 `Allow` 또는 `Deny`일 수 있습니다. 기본적으로 사용자에게는 리소스 및 API 작업을 사용할 권한이 없으므로 모든 요청이 거부됩니다. 따라서 모든 요청을 거부합니다. 명시적 허용은 기본 설정을 무시합니다. 명시적 거부는 모든 허용을 무시합니다.
+ **작업**: *작업(action)*은 권한을 부여하거나 거부할 특정 API 작업입니다. *작업(action)*을 지정하는 방법에 대한 지침은 [에 대한 API 작업 AWS Batch](#UsingWithbatch_Actions) 섹션을 참조하세요.
+ **리소스**: 작업의 영향을 받는 리소스입니다. 일부 AWS Batch API 작업의 경우 작업이 생성하거나 수정할 수 있는 리소스를 정책에 구체적으로 포함할 수 있습니다. 설명문에서 리소스를 지정하려면 Amazon 리소스 이름(ARN)을 사용합니다. 자세한 내용은 [AWS Batch API 작업에 지원되는 리소스 수준 권한](batch-supported-iam-actions-resources.md) 및 [에 대한 Amazon 리소스 이름 AWS Batch](#batch_ARN_Format) 섹션을 참조하세요. AWS Batch API 작업이 현재 리소스 수준 권한을 지원하지 않는 경우 와일드카드(\$1)를 포함하여 모든 리소스가 작업의 영향을 받을 수 있도록 지정합니다.
+ **조건(Condition)**: 조건(Condition)은 선택 사항입니다. 정책이 적용되는 시점을 제어하는 데 사용할 수 있습니다.

에 대한 예제 IAM 정책 설명에 대한 자세한 내용은 섹션을 AWS Batch참조하세요[리소스:에 대한 정책 예 AWS Batch](ExamplePolicies_BATCH.md).

## 에 대한 API 작업 AWS Batch
<a name="UsingWithbatch_Actions"></a>

IAM 정책 설명에는 IAM을 지원하는 모든 서비스의 모든 API 작업을 지정할 수 있습니다. 에는 API 작업의 이름과 함께 접두사를 AWS Batch사용합니다`batch:`(예: `batch:SubmitJob` 및 `batch:CreateComputeEnvironment`).

단일 문에서 여러 작업을 지정하려면 각 작업을 쉼표로 구분합니다.

```
"Action": ["batch:action1", "batch:action2"]
```

와일드카드(\$1)를 포함하여 여러 작업을 지정할 수도 있습니다. 예를 들어 이름이 ‘Describe’로 시작되는 모든 작업을 지정할 수 있습니다.

```
"Action": "batch:Describe*"
```

모든 AWS Batch API 작업을 지정하려면 와일드카드(\$1)를 포함합니다.

```
"Action": "batch:*"
```

 AWS Batch 작업 목록은 *AWS Batch API* 참조의 [작업을](https://docs.aws.amazon.com/batch/latest/APIReference/API_Operations.html) 참조하세요.

## 에 대한 Amazon 리소스 이름 AWS Batch
<a name="batch_ARN_Format"></a>

각 IAM 정책 설명은 Amazon 리소스 이름(ARN)을 사용하여 지정한 리소스에 적용됩니다.

Amazon 리소스 이름(ARN)의 일반 구문은 다음과 같습니다.

```
arn:aws:[service]:[region]:[account]:resourceType/resourcePath
```

*서비스*  
서비스(예: `batch`)입니다.

*리전*  
리소스 AWS 리전 의 입니다(예: `us-east-2`).

*account*  
하이픈이 없는 AWS 계정 ID입니다(예: `123456789012`).

*resourceType*  
리소스의 유형(예: `compute-environment`)입니다.

*resourcePath*  
리소스를 식별하는 경로입니다. 경로에 와일드카드(\$1)를 사용할 수 있습니다.

AWS Batch API 작업은 현재 여러 API 작업에 대한 리소스 수준 권한을 지원합니다. 자세한 내용은 [AWS Batch API 작업에 지원되는 리소스 수준 권한](batch-supported-iam-actions-resources.md) 단원을 참조하십시오. 모든 리소스를 지정해야 하거나 특정 API 작업이 ARN을 지원하지 않는 경우 다음과 같이 `Resource` 요소에 와일드카드(\$1)를 포함합니다.

```
"Resource": "*"
```

## 사용자에게 필요한 권한이 있는지 확인
<a name="check-required-permissions"></a>

IAM 정책을 프로덕션에 적용하기 전에, 해당 정책이 사용자에게 필요한 특정 API 작업 및 리소스를 사용할 권한을 부여하는지 확인하는 것이 좋습니다.

먼저, 테스트용으로 사용자를 생성하고 정책을 테스트 사용자에게 연결합니다. 그런 다음 테스트 사용자 자격으로 요청을 수행합니다. 콘솔 또는 AWS CLI에서 테스트 요청을 수행할 수 있습니다.

**참고**  
[IAM 정책 시뮬레이터](https://policysim.aws.amazon.com/home/index.jsp?#)로도 정책을 테스트할 수 있습니다. 정책 시뮬레이터에 대한 자세한 내용은 *IAM 사용 설명서*의 [IAM 정책 시뮬레이터 작업](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies_testing-policies.html) 섹션을 참조하세요.

정책이 사용자에게 예상한 권한을 부여하지 않거나 과도한 권한을 부여하는 경우, 필요에 따라 정책을 조정할 수 있습니다. 원하는 결과를 얻을 때까지 다시 테스트합니다.

**중요**  
변경된 정책이 전파되어 효력을 발휘하려면 몇 분이 걸릴 수 있습니다. 따라서 정책을 업데이트한 경우 최소 5분간 기다린 후에 테스트하는 것이 좋습니다.

요청 시 권한 부여 확인에 실패하면 진단 정보가 포함된 인코딩 메시지가 반환됩니다. `DecodeAuthorizationMessage` 작업을 사용하여 메시지를 디코딩할 수 있습니다. 자세한 내용은 *AWS Security Token Service API 레퍼런스*의 [DecodeAuthorizationMessage](https://docs.aws.amazon.com/STS/latest/APIReference/API_DecodeAuthorizationMessage.html)와 *AWS CLI 명령 참조*의 [decode-authorization-message](https://docs.aws.amazon.com/cli/latest/reference/sts/decode-authorization-message.html)를 참조하세요.

# 리소스:에 대한 정책 예 AWS Batch
<a name="ExamplePolicies_BATCH"></a>

사용자는 특정 IAM 정책을 생성하여 계정의 사용자가 액세스할 수 있는 호출 및 리소스를 제한합니다. 그런 다음 이러한 정책을 사용자에 연결할 수 있습니다.

사용자 또는 사용자 그룹에 정책을 연결하면 사용자의 특정 리소스에서 지정된 태스크를 수행할 권한이 허용되거나 거부됩니다. 자세한 내용은 *IAM 사용 설명서*의 [권한 및 정책](https://docs.aws.amazon.com/IAM/latest/UserGuide/PermissionsAndPolicies.html)을 참조하세요. 사용자 지정 IAM 정책을 관리하고 생성하는 방법에 대한 지침은 [IAM 정책 관리](https://docs.aws.amazon.com/IAM/latest/UserGuide/ManagingPolicies.html)를 참조하세요.

다음 예제는 사용자가 갖는 AWS Batch권한을 제어하는 데 사용할 수 있는 정책 명령문을 보여줍니다.

**Topics**
+ [읽기 전용 액세스](iam-example-read-only.md)
+ [리소스: 사용자, 이미지, 권한, 역할 제한](iam-example-job-def.md)
+ [작업 제출 제한](iam-example-restrict-job-submission.md)
+ [작업 대기열로 제한](iam-example-restrict-job-queue.md)
+ [모든 조건이 문자열과 일치하는 경우 작업 거부](iam-example-job-def-deny-all-image-logdriver.md)
+ [리소스: 문자열과 일치하는 조건 키가 있는 경우 작업 거부](iam-example-job-def-deny-any-image-logdriver.md)
+ [`batch:ShareIdentifier` 조건 키를 사용](iam-example-share-identifier.md)
+ [를 사용하여 SageMaker AI 리소스 관리 AWS Batch](iam-example-full-access-service-environment.md)
+ [리소스 태그로 작업 제출 제한](iam-example-restrict-job-submission-by-tags.md)

# 리소스:에 대한 읽기 전용 액세스 AWS Batch
<a name="iam-example-read-only"></a>

다음 정책은 사용자에게 `Describe` 및 로 시작하는 이름으로 모든 AWS Batch API 작업을 사용할 수 있는 권한을 부여합니다`List`.

다른 명령문으로 해당 권한을 부여하지 않으면 사용자는 리소스에 대한 작업 수행 권한을 가지지 않습니다. 기본적으로 사용자의 API 작업 사용 권한은 거부됩니다.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "batch:Describe*",
                "batch:List*",
                "batch:Get*"
            ],
            "Resource": "*"
        }
    ]
}
```

------

# 리소스: 작업 제출 시 POSIX 사용자, Docker 이미지, 권한 수준 및 역할로 제한
<a name="iam-example-job-def"></a>

다음 정책은 POSIX 사용자가 고유의 작업 제한 정의 세트를 관리할 수 있도록 허용합니다.

첫 번째 및 두 번째 문을 사용하여 이름에 *JobDefA\$1*라는 접두사가 있는 모든 작업 정의를 등록하고 등록 취소합니다.

또한 첫 번째 설명문은 조건 컨텍스트 키를 사용하여 작업 정의의 `containerProperties` 내에 있는 POSIX 사용자, 권한 상태, 컨테이너 이미지 값을 제한합니다. 자세한 내용은 *AWS Batch API 참조*의 [RegisterJobDefinition](https://docs.aws.amazon.com/batch/latest/APIReference/API_RegisterJobDefinition.html)을 참조하세요. 이 예시에서는 POSIX 사용자가 `nobody`로 설정된 경우에만 작업 정의를 등록할 수 있습니다. 권한이 있는 플래그는 `false`로 설정됩니다. 마지막으로, 이 이미지는 Amazon ECR 리포지토리에서 `myImage`로 설정되어 있습니다.

**중요**  
도커는 `user` 파라미터를 컨테이너 이미지 내에 있는 해당 사용자 `uid`로 확인합니다. 대부분의 경우 이러한 사례는 컨테이너 이미지 내의 `/etc/passwd` 파일에서 찾을 수 있습니다. 이러한 이름 확인은 작업 정의 및 관련 IAM 정책에 직접 `uid` 값을 사용하면 생기지 않습니다. AWS Batch API 작업 및 `batch:User` IAM 조건 키는 숫자 값을 지원합니다.

세 번째 설명문을 사용하여 작업 정의에서 특정 역할만 하도록 제한합니다.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "batch:RegisterJobDefinition"
            ],
            "Resource": [
                "arn:aws:batch:us-east-2:999999999999:job-definition/JobDefA_*"
            ],
            "Condition": {
                "StringEquals": {
                    "batch:User": [
                        "nobody"
                    ],
                    "batch:Image": [
                        "999999999999.dkr.ecr.us-east-2.amazonaws.com/myImage"
                    ]
                },
                "Bool": {
                    "batch:Privileged": "false"
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "batch:DeregisterJobDefinition"
            ],
            "Resource": [
                "arn:aws:batch:us-east-2:999999999999:job-definition/JobDefA_*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "iam:PassRole"
            ],
            "Resource": [
                "arn:aws:iam::999999999999:role/MyBatchJobRole"
            ]
        }
    ]
}
```

------

# 리소스: 작업 제출 시 작업 정의 접두사로 제한
<a name="iam-example-restrict-job-submission"></a>

다음 정책을 사용하여 *JobDefA*로 시작하는 작업 정의 이름이 있는 작업 만 모든 작업 대기열에 제출하도록 합니다.

**중요**  
작업 제출을 위한 리소스 수준 액세스의 범위를 지정할 때 작업 대기열 및 작업 정의 리소스 유형을 모두 제공해야 합니다.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "batch:SubmitJob"
            ],
            "Resource": [
                "arn:aws:batch:us-east-2:111122223333:job-definition/JobDefA_*",
                "arn:aws:batch:us-east-2:111122223333:job-queue/*"
            ]
        }
    ]
}
```

------

# 리소스: 작업 대기열로 제한
<a name="iam-example-restrict-job-queue"></a>

다음 정책을 사용하여 **queue1**이라는 이름의 특정 작업 대기열에 모든 작업 정의 작업을 제출하게 합니다.

**중요**  
작업 제출을 위한 리소스 수준 액세스의 범위를 지정할 때 작업 대기열 및 작업 정의 리소스 유형을 모두 제공해야 합니다.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "batch:SubmitJob"
            ],
            "Resource": [
                "arn:aws:batch:us-east-2:888888888888:job-definition/*",
                "arn:aws:batch:us-east-2:888888888888:job-queue/queue1"
            ]
        }
    ]
}
```

------

# 모든 조건이 문자열과 일치하는 경우 작업 거부
<a name="iam-example-job-def-deny-all-image-logdriver"></a>

다음 정책은 `batch:Image` (컨테이너 이미지 ID) 조건 키가 "*string1*"이고 `batch:LogDriver` (컨테이너 로그 드라이버) 조건 키가 "*string2*"인 경우 [https://docs.aws.amazon.com/batch/latest/APIReference/API_RegisterJobDefinition.html](https://docs.aws.amazon.com/batch/latest/APIReference/API_RegisterJobDefinition.html) API 작업에 대한 액세스를 거부합니다.는 각 컨테이너의 조건 키를 AWS Batch 평가합니다. 다중 노드 병렬 작업과 같이 작업이 여러 컨테이너에 걸쳐 있는 경우 컨테이너의 구성이 다를 수 있습니다. 한 명령문에서 여러 조건 키를 평가하는 경우 `AND` 로직을 사용하여 병합됩니다. 따라서 여러 조건 키 중 하나라도 컨테이너와 일치하지 않는 경우 해당 컨테이너에는 `Deny` 효과가 적용되지 않습니다. 오히려 같은 작업에 있는 다른 컨테이너가 거부될 수 있습니다.

에 대한 조건 키 목록은 *서비스 승인* AWS Batch참조의에 [대한 조건 키를 AWS Batch](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsbatch.html#awsbatch-policy-keys) 참조하세요. `batch:ShareIdentifier`을 제외한 모든 `batch` 조건 키는 이 방법으로 사용될 수 있습니다. `batch:ShareIdentifier` 조건 키는 작업 정의가 아니라 작업에 대해 정의됩니다.

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "batch:RegisterJobDefinition"
      ],
      "Resource": [
        "*"
      ]
    },
    {
      "Effect": "Deny",
      "Action": "batch:RegisterJobDefinition",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "batch:Image": "string1",
          "batch:LogDriver": "string2"
        }
      }
    }
  ]
}
```

------

# 리소스: 문자열과 일치하는 조건 키가 있는 경우 작업 거부
<a name="iam-example-job-def-deny-any-image-logdriver"></a>

다음 정책은 `batch:Image`(컨테이너 이미지 ID) 조건 키가 '*string1*'이거나 `batch:LogDriver`(컨테이너 로그 드라이버) 조건 키가 '*string2*'인 경우 [https://docs.aws.amazon.com/batch/latest/APIReference/API_RegisterJobDefinition.html](https://docs.aws.amazon.com/batch/latest/APIReference/API_RegisterJobDefinition.html) API 작업에 대한 액세스를 거부합니다. 다중 노드 병렬 작업과 같이 작업이 여러 컨테이너에 걸쳐 있는 경우 컨테이너의 구성이 다를 수 있습니다. 한 명령문에서 여러 조건 키를 평가하는 경우 `AND` 로직을 사용하여 병합됩니다. 따라서 여러 조건 키 중 하나라도 컨테이너와 일치하지 않는 경우 해당 컨테이너에는 `Deny` 효과가 적용되지 않습니다. 오히려 같은 작업에 있는 다른 컨테이너가 거부될 수 있습니다.

에 대한 조건 키 목록은 *서비스 승인* AWS Batch참조의에 [대한 조건 키를 AWS Batch](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsbatch.html#awsbatch-policy-keys) 참조하세요. `batch:ShareIdentifier`을 제외한 모든 `batch` 조건 키는 이 방법으로 사용될 수 있습니다. (`batch:ShareIdentifier` 조건 키는 작업 정의가 아니라 작업에 대해 정의됩니다.)

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "batch:RegisterJobDefinition"
      ],
      "Resource": [
        "*"
      ]
    },
    {
      "Effect": "Deny",
      "Action": [
        "batch:RegisterJobDefinition"
      ],
      "Resource": [
        "*"
      ],
      "Condition": {
        "StringEquals": {
          "batch:Image": [
            "string1"
          ]
        }
      }
    },
    {
      "Effect": "Deny",
      "Action": [
        "batch:RegisterJobDefinition"
      ],
      "Resource": [
        "*"
      ],
      "Condition": {
        "StringEquals": {
          "batch:LogDriver": [
            "string2"
          ]
        }
      }
    }
  ]
}
```

------

# 리소스: `batch:ShareIdentifier` 조건 키 사용
<a name="iam-example-share-identifier"></a>

다음 정책을 사용하여 `jobDefA` 작업 정의를 사용하는 작업을 `lowCpu` 공유 식별자와 함께 `jobqueue1` 작업 대기열에 제출하세요.

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "batch:SubmitJob"
      ],
      "Resource": [
        "arn:aws:batch:us-east-2:555555555555:job-definition/JobDefA",
        "arn:aws:batch:us-east-2:555555555555:job-queue/jobqueue1"
      ],
      "Condition": {
        "StringEquals": {
          "batch:ShareIdentifier": [
            "lowCpu"
          ]
        }
      }
    }
  ]
}
```

------

# 를 사용하여 SageMaker AI 리소스 관리 AWS Batch
<a name="iam-example-full-access-service-environment"></a>

이 정책은 AWS Batch 가 SageMaker AI 리소스를 관리할 수 있도록 허용합니다.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "batch:*"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "iam:CreateServiceLinkedRole"
            ],
            "Resource": "arn:aws:iam::*:role/*AWSServiceRoleForAWSBatchWithSagemaker",
            "Condition": {
                 "StringEquals": {
                     "iam:AWSServiceName": "sagemaker-queuing.batch.amazonaws.com"
                 }
             }
         },
         {
             "Effect": "Allow",
             "Action": "iam:PassRole",
             "Resource": "*",
             "Condition": {
                 "StringEquals": {
                     "iam:PassedToService": [
                         "sagemaker.amazonaws.com"
                      ]
                  }
              }
          }
    ]
}
```

------

# 리소스: 작업 정의 및 작업 대기열의 리소스 태그로 작업 제출 제한
<a name="iam-example-restrict-job-submission-by-tags"></a>

작업 대기열에 태그가 `Environment=dev` 있고 작업 정의에 태그가 있는 경우에만 다음 정책을 사용하여 작업을 제출합니다`Project=calc`. 이 정책은 작업 제출 중에 리소스 태그를 사용하여 AWS Batch 리소스에 대한 액세스를 제어하는 방법을 보여줍니다.

**중요**  
작업 정의 리소스 태그를 평가하는 정책이 있는 작업을 제출할 때는 작업 정의 개정 형식()을 사용하여 작업을 제출해야 합니다`job-definition:revision`. 개정을 지정하지 않고 작업을 제출하면 작업 정의 태그가 평가되지 않으므로 의도한 액세스 제어를 우회할 수 있습니다. 리소스 ARN의 `*:*` 패턴은 제출에 개정이 포함되어야 함을 적용하여 태그 정책이 항상 효과적으로 적용되도록 합니다.

이 정책은 서로 다른 리소스 유형에 서로 다른 태그 조건을 적용하기 때문에 두 개의 개별 문을 사용합니다. 작업 제출을 위한 리소스 수준 액세스의 범위를 지정할 때 작업 대기열 및 작업 정의 리소스 유형을 모두 제공해야 합니다.

```
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "batch:SubmitJob",
      "Resource": "arn:aws:batch:*:*:job-queue/*",
      "Condition": {
        "StringEquals": {
          "aws:ResourceTag/Environment": "dev"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": "batch:SubmitJob",
      "Resource": "arn:aws:batch:*:*:job-definition/*:*",
      "Condition": {
        "StringEquals": {
          "aws:ResourceTag/Project": "calc"
        }
      }
    }
  ]
}
```

# Resource: AWS Batch managed 정책
<a name="batch_managed_policies"></a>

AWS Batch 는 사용자에게 연결할 수 있는 관리형 정책을 제공합니다. 이 정책은 AWS Batch 리소스 및 API 작업을 사용할 수 있는 권한을 제공합니다. 이 정책은 직접 적용할 수도 있고, 사용자 고유의 정책을 생성하기 위한 시작 지점으로 사용할 수도 있습니다. 이러한 정책에 언급되는 각 API 작업에 대한 자세한 내용은 *AWS Batch API 참조*의 [작업](https://docs.aws.amazon.com/batch/latest/APIReference/API_Operations.html) 섹션을 참조하세요.

## AWSBatchFullAccess
<a name="AWSBatchFullAccess"></a>

이 정책은에 대한 전체 관리자 액세스를 허용합니다 AWS Batch.

정책에 대한 JSON을 보려면 [https://docs.aws.amazon.com/aws-managed-policy/latest/reference/about-managed-policy-reference.html](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/about-managed-policy-reference.html)의 [AWSBatchFullAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSBatchFullAccess.html)를 참조하세요.