

# 동종 마이그레이션을 위한 IAM 리소스 만들기
<a name="USER_DMS_migration-IAM"></a>

Aurora는 AWS DMS를 사용하여 데이터를 마이그레이션합니다. 데이터베이스에 액세스하고 데이터를 마이그레이션하기 위해 AWS DMS는 동종 데이터 마이그레이션을 위한 서버리스 환경을 생성합니다. 이 환경에서 AWS DMS는 VPC 피어링, 라우팅 테이블, 보안 그룹 및 기타 AWS 리소스에 대한 액세스가 필요합니다. 또한 AWS DMS는 Amazon CloudWatch에 각 데이터 마이그레이션에 대한 로그, 지표 및 진행 상황을 저장합니다. 데이터 마이그레이션 프로젝트를 생성하려면 AWS DMS는 이러한 서비스에 대한 액세스 권한이 필요합니다.

또한 AWS DMS에서는 소스 및 대상 연결에 대한 데이터베이스 연결을 인증하기 위해 사용자 자격 증명 세트를 나타내는 보안 암호에 대한 액세스 권한이 필요합니다.

**참고**  
**EC2 인스턴스에서 데이터 마이그레이션** 작업을 사용하면 Aurora 콘솔을 사용하여 이러한 IAM 리소스를 생성할 수 있습니다. 콘솔에서 생성한 IAM 리소스를 사용하는 경우 이 단계를 건너뜁니다.

이 프로세스에는 다음과 같은 IAM 리소스가 필요합니다.

**Topics**
+ [동종 데이터 마이그레이션을 위한 IAM 정책 만들기](#USER_DMS_migration-IAM.iam-policy)
+ [동종 데이터 마이그레이션을 위한 IAM 역할 만들기](#USER_DMS_migration-IAM.iam-role)
+ [보안 암호 액세스 정책 및 역할 만들기](USER_DMS_migration-IAM.secret-iam-role-policy.md)
+ [AWS DMS에 대한 IAM 역할을 만들어 Amazon VPC 관리](USER_DMS_migration-IAM.dms-vpc-role.md)

## 동종 데이터 마이그레이션을 위한 IAM 정책 만들기
<a name="USER_DMS_migration-IAM.iam-policy"></a>

이 단계에서는 Amazon EC2 및 CloudWatch 리소스에 대한 액세스 권한을 AWS DMS에 부여하는 IAM 정책을 생성합니다. 그런 다음, IAM 역할을 생성하고 이 정책을 연결합니다.

**동종 데이터 마이그레이션을 위한 IAM 정책을 만드는 방법**

1. AWS Management Console에 로그인하여 [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)에서 IAM 콘솔을 엽니다.

1. 탐색 창에서 **정책**을 선택합니다.

1. **정책 생성**을 선택합니다.

1. **정책 생성** 페이지에서 **JSON** 탭을 선택합니다.

1. 다음 JSON을 편집기에 붙여넣습니다.

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "ec2:DescribeRouteTables",
                   "ec2:DescribeSecurityGroups",
                   "ec2:DescribeVpcPeeringConnections",
                   "ec2:DescribeVpcs",
                   "ec2:DescribePrefixLists",
                   "logs:DescribeLogGroups"
               ],
               "Resource": "*"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "servicequotas:GetServiceQuota"
               ],
               "Resource": "arn:aws:servicequotas:*:*:vpc/L-0EA8095F"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "logs:CreateLogGroup",
                   "logs:DescribeLogStreams"
               ],
               "Resource": "arn:aws:logs:*:*:log-group:dms-data-migration-*"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "logs:CreateLogStream",
                   "logs:PutLogEvents"
               ],
               "Resource": "arn:aws:logs:*:*:log-group:dms-data-migration-*:log-stream:dms-data-migration-*"
           },
           {
               "Effect": "Allow",
               "Action": "cloudwatch:PutMetricData",
               "Resource": "*"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "ec2:CreateRoute",
                   "ec2:DeleteRoute"
               ],
               "Resource": "arn:aws:ec2:*:*:route-table/*"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "ec2:CreateTags"
               ],
               "Resource": [
                   "arn:aws:ec2:*:*:security-group/*",
                   "arn:aws:ec2:*:*:security-group-rule/*",
                   "arn:aws:ec2:*:*:route-table/*",
                   "arn:aws:ec2:*:*:vpc-peering-connection/*",
                   "arn:aws:ec2:*:*:vpc/*"
               ]
           },
           {
               "Effect": "Allow",
               "Action": [
                   "ec2:AuthorizeSecurityGroupEgress",
                   "ec2:AuthorizeSecurityGroupIngress"
               ],
               "Resource": "arn:aws:ec2:*:*:security-group-rule/*"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "ec2:AuthorizeSecurityGroupEgress",
                   "ec2:AuthorizeSecurityGroupIngress",
                   "ec2:RevokeSecurityGroupEgress",
                   "ec2:RevokeSecurityGroupIngress"
               ],
               "Resource": "arn:aws:ec2:*:*:security-group/*"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "ec2:AcceptVpcPeeringConnection",
                   "ec2:ModifyVpcPeeringConnectionOptions"
               ],
               "Resource": "arn:aws:ec2:*:*:vpc-peering-connection/*"
           },
           {
               "Effect": "Allow",
               "Action": "ec2:AcceptVpcPeeringConnection",
               "Resource": "arn:aws:ec2:*:*:vpc/*"
           }
       ]
   }
   ```

------

1. **다음: 태그**와 **다음: 검토**를 선택합니다.

1. **이름\***의 경우, **HomogeneousDataMigrationsPolicy**를 입력한 후 **정책 생성을** 선택합니다.

## 동종 데이터 마이그레이션을 위한 IAM 역할 만들기
<a name="USER_DMS_migration-IAM.iam-role"></a>

이 단계에서는 AWS Secrets Manager, Amazon EC2 및 CloudWatch에 대한 액세스 권한을 제공하는 IAM 역할을 만듭니다.

**데이터 마이그레이션을 위한 IAM 역할을 만드는 방법**

1. AWS Management Console에 로그인하여 [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)에서 IAM 콘솔을 엽니다.

1. 탐색 창에서 **역할**을 선택합니다.

1. **역할 생성**을 선택합니다.

1. **신뢰할 수 있는 엔터티 선택** 페이지의 **신뢰할 수 있는 엔터티 유형** 아래에서 **AWS 서비스**를 선택합니다. **기타 AWS 서비스 사용 사례**에서 **DMS**를 선택합니다.

1. **DMS** 확인란을 선택하고 **다음**을 선택합니다.

1. **권한 추가** 페이지에서 이전에 만든 **HomogeneousDataMigrationsPolicy**를 선택합니다. **다음**을 선택합니다.

1. **이름 지정, 검토 및 생성** 페이지에서 **역할 이름**에 **HomogeneousDataMigrationsRole**을 입력하고 **역할 생성**을 선택합니다.

1. **역할** 페이지에서 **역할 이름**으로 **HomogeneousDataMigrationsRole**을 입력합니다. **HomogeneousDataMigrationsRole**을 선택합니다.

1. **HomogeneousDataMigrationsRole** 페이지에서 **신뢰 관계** 탭을 선택합니다. **신뢰 정책 편집**을 선택합니다.

1. **신뢰 정책 편집** 페이지에서 기존 텍스트를 대체하여 다음 JSON을 편집기에 붙여넣습니다.

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

****  

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

------

   이전 예제에서 {{your\_region}}을 AWS 리전의 이름으로 바꾸십시오.

   위의 리소스 기반 정책은 고객 관리형 **HomogeneousDataMigrationsPolicy** 정책에 따라 작업을 수행할 수 있는 권한을 AWS DMS 서비스 위탁자에게 부여합니다.

1. **정책 업데이트**를 선택합니다.