

# 자체 관리형 Active Directory 설정
<a name="USER_SQLServer_SelfManagedActiveDirectory.SettingUp"></a>

자체 관리형 AD를 설정하려면 다음 단계를 따르세요.

**Topics**
+ [1단계: AD에서 조직 단위 생성](#USER_SQLServer_SelfManagedActiveDirectory.SettingUp.CreateOU)
+ [2단계: AD에서 AD 도메인 서비스 계정 생성](#USER_SQLServer_SelfManagedActiveDirectory.SettingUp.CreateADuser)
+ [3단계: AD 도메인 서비스 계정에 제어 위임](#USER_SQLServer_SelfManagedActiveDirectory.SettingUp.DelegateControl)
+ [4단계: AWS KMS 키 생성](#USER_SQLServer_SelfManagedActiveDirectory.SettingUp.CreateKMSkey)
+ [5단계: AWS 보안 암호 생성](#USER_SQLServer_SelfManagedActiveDirectory.SettingUp.CreateSecret)

## 1단계: AD에서 조직 단위 생성
<a name="USER_SQLServer_SelfManagedActiveDirectory.SettingUp.CreateOU"></a>

**중요**  
 자체 관리형 AD 도메인에 가입된 RDS for SQL Server DB 인스턴스를 소유한 AWS 계정에 대해 전용 OU 및 해당 OU 범위의 서비스 보안 인증을 만드는 것이 좋습니다. 전용 OU 및 서비스 보안 인증을 지정하면 권한 충돌을 피하고 최소 권한 원칙을 따를 수 있습니다.

**AD에서 OU를 생성하려면**

1. 도메인 관리자로 AD 도메인에 연결합니다.

1. **Active Directory 사용자 및 컴퓨터**를 열고 OU를 생성할 도메인을 선택합니다.

1. 도메인을 마우스 오른쪽 버튼으로 클릭하고 **새로 만들기**를 선택한 다음 **조직 단위**를 선택합니다.

1. OU 이름을 입력합니다.

1. **컨테이너가 실수로 삭제되지 않도록 보호** 확인란을 선택한 상태로 유지합니다.

1. **확인**을 클릭합니다. 새 OU는 도메인 아래에 표시됩니다.

## 2단계: AD에서 AD 도메인 서비스 계정 생성
<a name="USER_SQLServer_SelfManagedActiveDirectory.SettingUp.CreateADuser"></a>

도메인 자격 증명은 AWS Secrets Manager에서 보안 암호로 사용됩니다.

**AD에서 AD 도메인 서비스 계정 생성**

1. **Active Directory 사용자 및 컴퓨터**를 열고 사용자를 생성할 도메인과 OU를 선택합니다.

1. **사용자** 객체를 마우스 오른쪽 버튼으로 클릭하고 **새로 만들기**, **사용자** 순으로 선택합니다.

1. 사용자의 이름, 성 및 로그온 이름을 입력합니다. **다음**을 클릭합니다.

1. 사용자의 암호를 입력합니다. **“다음 로그인 시 사용자가 암호를 변경해야 함”**을 선택하지 마세요. **“계정이 비활성화됨”**을 선택하지 마세요. **다음**을 클릭합니다.

1. **확인**을 클릭합니다. 새 사용자는 도메인 아래에 표시됩니다.

## 3단계: AD 도메인 서비스 계정에 제어 위임
<a name="USER_SQLServer_SelfManagedActiveDirectory.SettingUp.DelegateControl"></a>

**도메인의 AD 도메인 서비스 계정에 제어 권한 위임**

1. **Active Directory 사용자 및 컴퓨터** MMC 스냅인을 열고 사용자를 생성할 도메인을 선택합니다.

1. 이전에 만든 OU를 마우스 오른쪽 버튼으로 클릭하고 **제어 위임**을 선택합니다.

1. **제어 위임 마법사**에서 **다음**을 클릭합니다.

1. **사용자 또는 그룹** 섹션에서 **추가**를 클릭합니다.

1. **사용자, 컴퓨터 또는 그룹 선택** 섹션에서 생성한 AD 도메인 서비스 계정을 입력하고 **이름 확인**을 클릭합니다. AD 도메인 서비스 계정 확인에 성공하면 **확인**을 클릭합니다.

1. **사용자 또는 그룹** 섹션에서 AD 도메인 서비슥 ㅖ정이 추가되었는지 확인하고 **다음**을 클릭합니다.

1. **위임할 작업** 섹션에서 **위임할 사용자 지정 작업 생성**을 선택하고 **다음**을 클릭합니다.

1. **Active Directory 객체 유형** 섹션에서:

   1. **폴더의 다음 객체만**을 선택합니다.

   1. **컴퓨터 객체**를 선택합니다.

   1. **이 폴더에서 선택한 객체 생성**을 선택합니다.

   1. **이 폴더에서 선택한 객체 삭제**를 선택하고 **다음**을 클릭합니다.

1. **권한** 섹션에서:

   1. **일반**을 선택한 상태로 유지합니다.

   1. **DNS 호스트 이름에 대한 검증된 쓰기**를 선택합니다.

   1. **서비스 보안 주체 이름에 대한 검증된 쓰기**를 선택하고 **다음**을 클릭합니다.

   1. Kerberos 인증을 활성화하려면 **속성별**을 선택한 상태로 유지하고 목록에서 **servicePrincipalName 쓰기**를 선택합니다.

1. **제어 위임 마법사를 완료하려면** 설정을 검토 및 확인한 다음 **마침**을 클릭합니다.

1. Kerberos 인증의 경우 DNS 관리자를 열고 **서버** 속성을 엽니다.

   1. Windows 대화 상자에 `dnsmgmt.msc`를 입력합니다.

   1. **보안** 탭 아래에 AD 도메인 서비스 계정을 추가합니다.

   1. **읽기** 권한을 선택하고 변경 사항을 적용합니다.

## 4단계: AWS KMS 키 생성
<a name="USER_SQLServer_SelfManagedActiveDirectory.SettingUp.CreateKMSkey"></a>

KMS 키는 AWS 보안 암호를 암호화하는 데 사용됩니다.

**AWS KMS 키를 생성하려면**
**참고**  
 **암호화 키**의 경우 AWS 기본 KMS 키를 사용하지 마세요. 자체 관리형 AD에 가입시키려는 RDS for SQL Server DB 인스턴스가 포함된 동일한 AWS 계정에 AWS KMS 키를 만들어야 합니다.

1. AWS KMS 콘솔에서 **키 생성**을 선택합니다.

1. **키 유형**에 대해 **대칭**을 선택합니다.

1. **키 사용**에서 **암호화 및 암호 해독**을 선택합니다.

1. **고급 옵션**에서 다음을 수행합니다.

   1. **키 구성 요소 오리진**에서 **KMS**를 선택합니다.

   1. **리전 구분**에서 **단일 리전 키**를 선택하고 **다음**을 클릭합니다.

1. **별칭**의 경우 KMS 키의 이름을 입력합니다.

1. (선택 사항) **설명**에 KMS 키에 대한 설명을 입력합니다.

1. (선택 사항) **태그**의 경우 KMS 키에 태그를 지정하고 **다음**을 클릭합니다.

1. **키 관리자**의 경우 IAM 사용자의 이름을 입력하고 선택합니다.

1. **키 삭제**의 경우 **키 관리자가 이 키를 삭제하도록 허용** 확인란을 선택한 상태로 유지하고 **다음**을 클릭합니다.

1. **키 사용자**의 경우 이전 단계와 동일한 IAM 사용자를 입력하고 해당 사용자를 선택합니다. **다음**을 클릭합니다.

1. 구성을 검토합니다.

1. **주요 정책**의 경우 정책 **문**에 다음을 포함하세요.

   ```
   {
       "Sid": "Allow use of the KMS key on behalf of RDS",
       "Effect": "Allow",
       "Principal": {
           "Service": [
               "rds.amazonaws.com"
           ]
       },
       "Action": "kms:Decrypt",
       "Resource": "*"
   }
   ```

1. **완료**를 클릭합니다.

## 5단계: AWS 보안 암호 생성
<a name="USER_SQLServer_SelfManagedActiveDirectory.SettingUp.CreateSecret"></a>

**보안 암호 생성**
**참고**  
 자체 관리형 AD에 가입시키려는 RDS for SQL Server DB 인스턴스가 포함된 동일한 AWS 계정에 보안 암호를 만들어야 합니다.

1. AWS Secrets Manager에서 **새 보안 암호 저장**을 선택합니다.

1. **보안 암호 유형**에서 **다른 유형의 보안 암호**를 선택합니다.

1. **키/값 쌍**의 경우 2개의 키를 추가합니다.

   1. 첫 번째 키에는 `SELF_MANAGED_ACTIVE_DIRECTORY_USERNAME`를 입력합니다.

   1. 첫 번째 키 값에는 AD 사용자의 사용자 이름(도메인 접두사 제외)만 입력합니다. 도메인 이름을 포함하면 인스턴스 생성이 실패하므로 포함하지 마세요.

   1. 두 번째 키에는 `SELF_MANAGED_ACTIVE_DIRECTORY_PASSWORD`를 입력합니다.

   1. 두 번째 키의 값으로 도메인의 AD 사용자에 대해 생성한 암호를 입력합니다.

1. **암호화 키**에는 이전 단계에서 생성한 KMS 키를 입력하고 **다음**을 클릭합니다.

1. **보안 암호 이름**에는 나중에 암호를 찾는 데 도움이 되는 설명이 포함된 이름을 입력합니다.

1. (선택 사항) **설명**에 보안 암호 이름에 대한 설명을 입력합니다.

1. **리소스 권한**의 경우 **편집**을 클릭합니다.

1. 권한 정책에 다음 정책을 추가합니다.
**참고**  
*혼란스러운 대리인* 문제를 피하기 위해 정책의 `aws:sourceAccount` 및 `aws:sourceArn` 조건을 사용하는 것이 좋습니다. `aws:sourceAccount`에는 AWS 계정를 사용하고 `aws:sourceArn`에는 RDS for SQL Server DB 인스턴스를 사용합니다. 자세한 내용은 [교차 서비스 혼동된 대리자 문제 방지](cross-service-confused-deputy-prevention.md) 섹션을 참조하세요.

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement":
       [
           {
               "Effect": "Allow",
               "Principal":
               {
                   "Service": "rds.amazonaws.com"
               },
               "Action": "secretsmanager:GetSecretValue",
               "Resource": "*",
               "Condition":
               {
                   "StringEquals":
                   {
                       "aws:sourceAccount": "123456789012"
                   },
                   "ArnLike":
                   {
                       "aws:sourceArn": "arn:aws:rds:us-west-2:123456789012:db:*"
                   }
               }
           }
       ]
   }
   ```

------

1. **저장**을 클릭한 후 **다음**을 클릭합니다.

1. **교체 설정 구성**에서 기본값을 유지하고 **다음**을 선택합니다.

1. 보안 암호 설정을 검토하고 **저장**을 클릭합니다.

1. 생성한 보안 암호를 선택하고 **보안 암호 ARN**의 값을 복사합니다. 이는 다음 단계에서 자체 관리형 Active Directory를 설정하는 데 사용됩니다.