

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

# 에 대한 서비스 역할 AWS HealthOmics
<a name="permissions-service"></a>

서비스 역할은 AWS 서비스가 계정의 리소스에 액세스할 수 있는 권한을 부여하는 AWS Identity and Access Management (IAM) 역할입니다. 가져오기 작업을 시작하거나 실행을 시작할 AWS HealthOmics 때에 서비스 역할을 제공합니다.

HealthOmics 콘솔에서 필요한 역할을 생성할 수 있습니다. HealthOmics API를 사용하여 리소스를 관리하는 경우 IAM 콘솔을 사용하여 서비스 역할을 생성합니다. 자세한 내용은 [에 권한을 위임할 역할 생성을 참조하세요 AWS 서비스](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html).

서비스 역할에는 다음과 같은 신뢰 정책이 있어야 합니다.

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

****  

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

------

신뢰 정책은 HealthOmics 서비스가 역할을 수임하도록 허용합니다.

**Topics**
+ [IAM 서비스 정책 예](#permissions-service-samplepolicies)
+ [예제 CloudFormation 템플릿](#permissions-service-sampletemplates)

## IAM 서비스 정책 예
<a name="permissions-service-samplepolicies"></a>

이 예제에서 리소스 이름과 계정 IDs는 실제 값으로 바꿀 수 있는 자리 표시자입니다.

다음 예제에서는 실행을 시작하는 데 사용할 수 있는 서비스 역할에 대한 정책을 보여줍니다. 이 정책은 실행을 위해 Amazon S3 출력 위치, 워크플로 로그 그룹 및 Amazon ECR 컨테이너에 액세스할 수 있는 권한을 부여합니다.

**참고**  
실행에 통화 캐싱을 사용하는 경우 실행 캐시 Amazon S3 위치를 s3 권한의 리소스로 추가합니다.

**Example 실행을 시작하기 위한 서비스 역할 정책**    
****  

```
{
"Version":"2012-10-17",		 	 	 
"Statement": [
      {
          "Effect": "Allow",
          "Action": [
              "s3:GetObject",
              "s3:PutObject"
          ],
          "Resource": [
              "arn:aws:s3:::{{amzn-s3-demo-bucket1}}/*"
          ]
      },
      {
          "Effect": "Allow",
          "Action": [
              "s3:ListBucket"
          ],
          "Resource": [
              "arn:aws:s3:::{{amzn-s3-demo-bucket1}}"
          ]
      },
      {
          "Effect": "Allow",
          "Action": [
              "logs:DescribeLogStreams",
              "logs:CreateLogStream",
              "logs:PutLogEvents"
          ],
          "Resource": [
              "arn:aws:logs:{{us-east-1}}:{{123456789012}}:log-group:/aws/omics/WorkflowLog:log-stream:*"
          ]
      },
      {
          "Effect": "Allow",
          "Action": [
              "logs:CreateLogGroup"
          ],
          "Resource": [
              "arn:aws:logs:{{us-east-1}}:{{123456789012}}:log-group:/aws/omics/WorkflowLog:*"
          ]
      },
      {
          "Effect": "Allow",
          "Action": [
              "ecr:BatchGetImage",
              "ecr:GetDownloadUrlForLayer",
              "ecr:BatchCheckLayerAvailability"
          ],
          "Resource": [
              "arn:aws:ecr:{{us-east-1}}:{{123456789012}}:repository/*"
          ]
      }
    ]
}
```

다음 예제에서는 스토어 가져오기 작업에 사용할 수 있는 서비스 역할에 대한 정책을 보여줍니다. 이 정책은 Amazon S3 입력 위치에 액세스할 수 있는 권한을 부여합니다.

**Example 참조 스토어 작업에 대한 서비스 역할**    
****  

```
{
"Version":"2012-10-17",		 	 	 
"Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetObject"
            ],
            "Resource": [
                "arn:aws:s3:::{{amzn-s3-demo-bucket}}/*"
            ]
        },

        {
            "Effect": "Allow",
            "Action": [
                "s3:GetBucketLocation"
            ],
            "Resource": [
                "arn:aws:s3:::{{amzn-s3-demo-bucket}}"
            ]
        }

    ]
}
```

## 예제 CloudFormation 템플릿
<a name="permissions-service-sampletemplates"></a>

다음 샘플 CloudFormation 템플릿은 이름이 접두사로 붙은 Amazon S3 버킷에 액세스`omics-`하고 워크플로 로그를 업로드할 수 있는 권한을 HealthOmics에 부여하는 서비스 역할을 생성합니다.

**Example 참조 스토어, Amazon S3 및 CloudWatch Logs 권한**  

```
Parameters:
  bucketName:
    Description: Bucket name
    Type: String
    
Resources:
  serviceRole:
    Type: AWS::IAM::Role
    Properties:
      Policies:
        - PolicyName: read-reference
          PolicyDocument:
            Version: 2012-10-17
            Statement:
            - Effect: Allow
              Action:
                - omics:*
              Resource: !Sub arn:${AWS::Partition}:omics:${AWS::Region}:${AWS::AccountId}:referenceStore/*
        - PolicyName: read-s3
          PolicyDocument:
            Version: 2012-10-17
            Statement:
            - Effect: Allow
              Action: 
                - s3:ListBucket
              Resource: !Sub arn:${AWS::Partition}:s3:::${bucketName}
            - Effect: Allow
              Action:
                - s3:GetObject
                - s3:PutObject
              Resource: !Sub arn:${AWS::Partition}:s3:::${bucketName}/*
        - PolicyName: upload-logs
          PolicyDocument:
            Version: 2012-10-17
            Statement:
            - Effect: Allow
              Action: 
                - logs:DescribeLogStreams
                - logs:CreateLogStream
                - logs:PutLogEvents
              Resource: !Sub arn:${AWS::Partition}:logs:${AWS::Region}:${AWS::AccountId}:loggroup:/aws/omics/WorkflowLog:log-stream:*
            - Effect: Allow
              Action: 
                - logs:CreateLogGroup
              Resource: !Sub arn:${AWS::Partition}:logs:${AWS::Region}:${AWS::AccountId}:loggroup:/aws/omics/WorkflowLog:*
      AssumeRolePolicyDocument: |
        {
          "Version": "2012-10-17",		 	 	 
          "Statement": [
            {
              "Action": [
                "sts:AssumeRole"
              ],
              "Effect": "Allow",
              "Principal": {
                "Service": [
                  "omics.amazonaws.com"
                ]
              }
            }
          ]
        }
```