

# セルフマネージド 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. **[OK]** をクリックします。新しい 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. **[OK]** をクリックします。新しいユーザーがドメインの下に表示されます。

## ステップ 3: AD ドメインサービスアカウントに制御を委任する
<a name="USER_SQLServer_SelfManagedActiveDirectory.SettingUp.DelegateControl"></a>

**ドメイン内の AD ドメインサービスアカウントに制御を委任するには**

1. **[Active Directory ユーザーとコンピューター]** MMC スナップインを開き、ユーザーを作成するドメインを選択します。

1. 前に作成した OU を右クリックして、**[制御を委任]** を選択します。

1. **[コントロールウィザードの委任]** で、**[次へ]** を選択します。

1. **[ユーザーまたはグループ]** セクションで、**[追加]** をクリックします。

1. **[ユーザー、コンピューター、またはグループの選択]** セクションで、作成した AD ドメインサービスアカウントを入力し、**[名前を確認]** をクリックします。AD ドメインサービスアカウントのチェックが成功したら、**[OK]** をクリックします。

1. **[ユーザーまたはグループ]** セクションで、AD ドメインサービスアカウントが追加されたことを確認し、**[次へ]** をクリックします。

1. **[委任するタスク]** セクションで、**[委任するカスタムタスクを作成]** を選択し、**[次へ]** をクリックします。

1. **[Active Directory オブジェクトタイプ]** セクションで:

   1. **[フォルダ内の次のオブジェクトのみ]** を選択します。

   1. **[コンピュータオブジェクト]** を選択します。

   1. **[このフォルダに選択したオブジェクトを作成]** を選択します。

   1. **[このフォルダ内の選択したオブジェクトを削除]** を選択し、**[次へ]** をクリックします。

1. **[アクセス許可]** セクションで:

   1. **[全般]** を選択したままにします。

   1. **[DNS ホスト名への検証済み書き込み]** を選択します。

   1. **[サービスプリンシパル名への検証済み書き込み]** を選択し、**[次へ]** をクリックします。

   1. Kerberos 認証を有効にするには、**[プロパティ固有]** を選択し、リストから **[書き込み servicePrincipalName]** を選択します。

1. **[コントロールウィザードの委任の完了]** で設定を確認し、**[完了]** をクリックします。

1. Kerberos 認証の場合は、DNS Manager を開き、**[サーバー]** プロパティを開きます。

   1. Windows ダイアログボックスで、`dnsmgmt.msc` と入力します。

   1. **[セキュリティ]** タブの下に AD ドメインサービスアカウントを追加します。

   1. **[読み取り]** アクセス許可を選択し、変更を適用します。

## ステップ 4: AWS KMS キーを作成する
<a name="USER_SQLServer_SelfManagedActiveDirectory.SettingUp.CreateKMSkey"></a>

KMS キーは、AWS シークレットの暗号化に使用されます。

**AWS KMS キーを作成するには**
**注記**  
 **[暗号化キー]** として、AWS デフォルトの KMS キーを使用しないでください。AWS KMS キーは、セルフマネージド AD に参加させる RDS for SQL Server DB インスタンスを含んでいるのと同じ AWS アカウントに作成してください。

1. AWS KMS コンソールで、**[キーの作成]** を選択します。

1. **[キーの種類]** として、**[対称]** を選択します。

1. **[キーの使用方法]** として、**[暗号化と復号化]** を選択します。

1. [**Advanced options (詳細オプション)**] の場合:

   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. [**Finish**] をクリックします。

## ステップ 5: AWS シークレットを作成する
<a name="USER_SQLServer_SelfManagedActiveDirectory.SettingUp.CreateSecret"></a>

**シークレットを作成する**
**注記**  
 シークレットは、セルフマネージド AD に参加させる RDS for SQL Server DB インスタンスを含んでいるのと同じ AWS アカウントに作成してください。

1. AWS Secrets Manager で、**[新しいシークレットを保存する]** を選択します。

1. **[Secret type] (シークレットタイプ)** で、**[Other type of secret]** (他の種類のシークレット) を選択します。

1. **[キーと値のペア]** として、次の 2 つのキーを追加します。

   1. 最初のキーには、`SELF_MANAGED_ACTIVE_DIRECTORY_USERNAME` と入力します。

   1. 最初のキーの値には、AD ユーザーのユーザー名 (ドメインプレフィックスなし) のみを入力します。ドメイン名を含めないでください。含めると、インスタンスの作成が失敗します。

   1. 2 番目のキーとして、`SELF_MANAGED_ACTIVE_DIRECTORY_PASSWORD` と入力します。

   1. 2 番目のキーの値には、ドメインの AD ユーザー用に作成したパスワードを入力します。

1. **[暗号化キー]** として、前のステップで作成した KMS キーを入力し、**[次へ]** をクリックします。

1. **[シークレット名]** として、後でシークレットを見つけやすい、わかりやすい名前を入力します。

1. (オプション) **[説明]** として、シークレット名の説明を入力します。

1. **[リソースアクセス許可]** として、**[編集]** をクリックします。

1. 以下のポリシーをアクセス許可ポリシーに追加します。
**注記**  
*Confused Deputy* Problem (混乱した代理の問題) を回避するために、ポリシーの `aws:sourceAccount` および `aws:sourceArn` 条件を使用することをお勧めします。`aws:sourceAccount` の AWS アカウント と `aws:sourceArn` の RDS for SQL Server DB インスタンス ARN を使用します。詳細については、「[サービス間での混乱した代理問題の防止](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 をセットアップします。