profile-image

masatora.net

別のAWSアカウントでサブドメインを使う(CDK)

AWS
Route53
ドメイン
DNS
CDK

概要

別のAWSアカウントで管理しているドメインのサブドメインを、別のAWSアカウントで使いたい。そんな時は、サブドメインを別のAWSアカウントのHosted Zoneに権限委譲すれば良い。それをCDKで行う手順をまとめる。

例として、以下のような状態を想定する。

  • AWSアカウント1(ドメインを管理している)
    • masatora.com
  • AWSアカウント2(委譲先)
    • stg.masatora.com←使いたいサブドメイン

手順とCDK

  1. AWSアカウント2(委譲先)でホストゾーンを作成する
private createBuyerAJAVisionZone() {
    return new route53.PublicHostedZone(this, 'HostedZone', {
        zoneName: 'stg.masatora.com',
    })
}
  1. 1で作成されたホストゾーンのNSレコードの値をコピー
  2. AWSアカウント1(ドメインを管理している)でNSレコードを作成する
new route53.NsRecord(this, 'NsRecord', {
    zone: hostedZone,
    recordName: 'stg',
    values: [
    // ここに2でコピーしたNSレコードの値を入れる(4つある。追加も削除もせず全部入れることを推奨
    ],
})

参考