のセキュリティ AWS Database Migration Service - AWS Database Migration Service

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

のセキュリティ AWS Database Migration Service

でのクラウドセキュリティが最優先事項 AWS です。 AWS のお客様は、セキュリティを最も重視する組織の要件を満たすように構築されたデータセンターとネットワークアーキテクチャからメリットを得られます。

セキュリティは、 AWS とお客様の間で共有される責任です。責任共有モデルでは、この責任がクラウドセキュリティおよびクラウドのセキュリティとして説明されています。

  • クラウドのセキュリティ – クラウドで AWS AWS サービスを実行するインフラストラクチャを保護する AWS 責任があります。 AWS また、 は、お客様が安全に使用できるサービスも提供します。「AWS 」 コンプライアンスプログラムの一環として、サードパーティーの監査が定期的にセキュリティの有効性をテストおよび検証しています。が適用されるコンプライアンスプログラムの詳細については AWS DMS、AWS 「コンプライアンスプログラムによる対象範囲内のサービス」を参照してください。

  • クラウド内のセキュリティ – お客様の責任は、使用する AWS サービスによって決まります。また、お客様は、お客様のデータの機密性、組織の要件、および適用可能な法律および規制などの他の要因についても責任を担います。

このドキュメントは、 を使用する際の責任共有モデルの適用方法を理解するのに役立ちます AWS DMS。以下のトピックでは、セキュリティおよびコンプライアンスの目的を達成する AWS DMS ように を設定する方法について説明します。また、 AWS DMS リソースのモニタリングや保護に役立つ他の AWS サービスの使用方法についても説明します。

AWS DMS リソースとデータベース (DBs) へのアクセスを管理できます。アクセスの管理に使用する方法は、以下を使用して実行する必要があるレプリケーションタスクによって異なります AWS DMS。

  • AWS Identity and Access Management (IAM) ポリシーを使用して、 AWS DMS リソースの管理を誰に許可するかを決定するアクセス許可を割り当てます。IAM ユーザーとしてサインインする場合は、適切なアクセス許可 AWS DMS が必要です。たとえば、IAM を使用して、DB インスタンスのおよびクラスターの作成、記述、変更、削除と、リソースのタグ付け、セキュリティグループの変更をどのユーザーに許可するかを決定できます。IAM とその での使用の詳細については AWS DMS、「」を参照してくださいの Identity and Access Management AWS Database Migration Service

  • AWS DMS は、Transport Layer Security (TLS) を使用したエンドポイント接続に Secure Sockets Layer (SSL) を使用します。での SSL/TLS の使用の詳細については AWS DMS、「」を参照してくださいでの SSL の使用 AWS Database Migration Service

  • AWS DMS は AWS Key Management Service 、 (AWS KMS) 暗号化キーを使用して、レプリケーションインスタンスで使用されるストレージとそのエンドポイント接続情報を暗号化します。 AWS DMS また、 は AWS KMS 、暗号化キーを使用して、Amazon S3 および Amazon Redshift ターゲットエンドポイントの保管中のターゲットデータを保護します。詳細については、「暗号化キーの設定と AWS KMS アクセス許可の指定」を参照してください。

  • AWS DMS は、可能な限り最大のネットワークアクセスコントロールを実現するために、常に Amazon VPC サービスに基づいて Virtual Private Cloud (VPC) にレプリケーションインスタンスを作成します。DB インスタンスとインスタンス クラスターには、レプリケーション インスタンスと同じ VPC を使用するか、このレベルのアクセス コントロールに一致させるために追加の VPC を使用します。使用するそれぞれの Amazon VPC は、すべてのポートですべてのトラフィックについて VPC からの送信 (egress) がルールで許可されているセキュリティグループに関連付ける必要があります。このアプローチでは、ソースおよびターゲットデータベースエンドポイントで適切な受信が有効になっている限り、レプリケーション インスタンスからそれらのエンドポイントへの通信が許可されます。

    で使用可能なネットワーク設定の詳細については AWS DMS、「」を参照してくださいレプリケーション インスタンスのためのネットワークのセットアップ。VPC での DB インスタンスまたはインスタンス クラスターの作成については、AWS ドキュメントで Amazon データベースのセキュリティとクラスター管理のドキュメントをご参照ください。 AWS DMS でサポートされるネットワーク設定の詳細については、「レプリケーション インスタンスのためのネットワークのセットアップ」をご参照ください。

  • データベース移行ログを表示する場合、使用している IAM ロールの適切な Amazon CloudWatch Logs アクセス許可が必要になります。 AWS DMSのログ作成の詳細については、「Amazon CloudWatch を使用したレプリケーション モニタリングタスク」をご参照ください。

暗号化キーの設定と AWS KMS アクセス許可の指定

AWS DMS は、レプリケーションインスタンスで使用されるストレージとエンドポイント接続情報を暗号化します。レプリケーション インスタンスで使用されるストレージを暗号化するために、 は AWS アカウントに固有の AWS Key Management Service (AWS KMS) キー AWS DMS を使用します。このキーは で表示および管理できます AWS KMS。アカウント (aws/dms) でデフォルトの KMS キーを使用できます。あるいは、カスタム KMS キーを作成できます。既存の KMS キーがある場合、暗号化にそのキーを使用することもできます。

注記

暗号化 AWS KMS キーとして使用するカスタムキーまたは既存のキーは、対称キーである必要があります。 は、非対称暗号化キーの使用をサポート AWS DMS していません。対称キーと非対称キーの使用詳細については、AWS Key Management Service デベロッパーガイドの「https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html」をご参照ください。

レプリケーション インスタンスの初回起動時に、 レプリケーション インスタンス作成ページのアドバンストセクションで、カスタム KMS キーを選択していない場合は、デフォルトの KMS キー (aws/dms) が作成されます。デフォルトの KMS キーを使用する場合、移行用の IAM ユーザーアカウントにはアクセス許可として kms:ListAliaseskms:DescribeKey のみを付与する必要があります。デフォルトの KMS キーの使用に関する詳細については、「AWS DMSの使用に必要な IAM アクセス許可」をご参照ください。

カスタム KMS キーを使用するには、次のオプションの 1 つを使用して、カスタム KMS キーにアクセス許可を割り当てます。

  • 移行に使用する IAM ユーザーアカウントを、 AWS KMS カスタムキーのキー管理者またはキーユーザーとして追加します。これにより、IAM ユーザーアカウントに必要な AWS KMS 権限が確実に付与されます。このアクションは、 AWS DMSを使用するために IAM ユーザーアカウントに付与する IAM のアクセス許可に追加されます。キーユーザーを許可する詳しい方法については、AWS Key Management Service デベロッパーガイド の「KMS キーの使用をユーザーに許可する」をご参照ください。

  • カスタム KMS キーに対するキー管理者あるいはキーユーザーとして IAM ユーザーアカウントを追加したくない場合、 AWS DMSを使用するために IAM ユーザーアカウントに付与する必要がある IAM のアクセス許可に、次のアクセス許可を追加で付与してください。

    { "Effect": "Allow", "Action": [ "kms:ListAliases", "kms:DescribeKey", "kms:CreateGrant", "kms:Encrypt", "kms:ReEncrypt*" ], "Resource": "*" },

AWS DMS は KMS キーエイリアスでも動作します。独自の AWS KMS キーを作成して KMS キーへのユーザーアクセスを許可する方法の詳細については、「AWS KMS デベロッパーガイド」をご参照ください。

KMS キー識別子を指定しない場合、 はデフォルトの暗号化キー AWS DMS を使用します。 は AWS 、アカウントの AWS DMS のデフォルトの暗号化キー AWS KMS を作成します。アカウント AWS には、 AWS リージョンごとに異なるデフォルトの暗号化キーがあります。

AWS DMS リソースの暗号化に使用される AWS KMS キーを管理するには、 を使用します AWS Key Management Service。 は、安全で可用性の高いハードウェアとソフトウェア AWS KMS を組み合わせて、クラウド向けに拡張されたキー管理システムを提供します。を使用すると AWS KMS、暗号化キーを作成し、これらのキーの使用方法を制御するポリシーを定義できます。

AWS KMS 「」を参照してください。 AWS Management Console
  1. にサインイン AWS Management Console し、https://console.aws.amazon.com/kms で AWS Key Management Service (AWS KMS) コンソールを開きます。

  2. を変更するには AWS リージョン、ページの右上隅にあるリージョンセレクタを使用します。

  3. AWS KMS キーを操作するには、次のいずれかのオプションを選択します。

    • が AWS 作成および管理するアカウントのキーを表示するには、ナビゲーションペインでマネージドAWS キーを選択します。

    • ユーザーが作成および管理するアカウント内のキーを表示するには、ナビゲーションペインで [Customer managed keys] (カスタマーマネージドキー) を選択します。

AWS KMS は をサポートしているため AWS CloudTrail、キーの使用状況を監査して、キーが適切に使用されていることを確認できます。 AWS KMS キーは、Amazon RDS、Amazon S3、Amazon Redshift、Amazon EBS などの および AWS DMS サポートされている AWS サービスと組み合わせて使用できます。

次の AWS DMS エンドポイントのターゲットデータを暗号化するために、カスタム AWS KMS キーを作成することもできます。

KMS キーを使用して AWS DMS リソースを作成した後は、それらのリソースの暗号化キーを変更することはできません。 AWS DMS リソースを作成する前に、暗号化キーの要件を確認してください。

のネットワークセキュリティ AWS Database Migration Service

を使用する際に作成するネットワークのセキュリティ要件は、ネットワークの設定方法 AWS Database Migration Service によって異なります。のネットワークセキュリティの一般的なルール AWS DMS は次のとおりです。

  • レプリケーション インスタンスは、ソースとターゲットのエンドポイントにアクセスできる必要があります。レプリケーション インスタンスのセキュリティグループには、データベースポートでデータベースエンドポイントへの送信をインスタンスに許可するネットワーク ACL またはルールが必要です。

  • データベースエンドポイントには、レプリケーション インスタンスからの受信アクセスを許可するネットワーク ACL およびセキュリティグループルールを含める必要があります。これは、構成に応じて、レプリケーション インスタンスのセキュリティグループ、プライベート IP アドレス、パブリック IP アドレス、または NAT ゲートウェイのパブリックアドレスを使用して実現できます。

  • ネットワークで VPN トンネルが使用されている場合、NAT ゲートウェイとして機能する Amazon EC2 インスタンスは、レプリケーション インスタンスにそのゲートウェイを通じたトラフィックの送信を許可するセキュリティグループを使用する必要があります。

デフォルトでは、 AWS DMS レプリケーションインスタンスで使用される VPC セキュリティグループには、すべてのポートで 0.0.0.0/0 への出力を許可するルールがあります。このセキュリティグループを変更するか、独自のセキュリティグループを使用する場合、少なくとも、対応するデータベースポートでソースおよびターゲットエンドポイントへの送信が許可される必要があります。

データベース移行に使用できるネットワーク構成には、それぞれ固有のセキュリティ上の考慮事項があります。

  • すべてのデータベース移行コンポーネントが 1 つの VPC にある設定 - エンドポイントで使用されるセキュリティグループは、データベースポートでレプリケーション インスタンスからの進入を許可する必要があります。レプリケーション インスタンスによって使用されるセキュリティグループでエンドポイントに侵入可能なことを確認するかまたは、エンドポイントにより使用されるセキュリティグループに、レプリケーション インスタンスのプライベート IP アドレスにアクセスを許可するセキュリティルールを作成できます。

  • 複数の VPC を使用する構成 - レプリケーション インスタンスで使用されるセキュリティグループには、VPC 範囲とデータベースの DB ポートに関するルールが必要です。

  • AWS Direct Connect または VPN を使用した VPC へのネットワークの設定 - VPC からオンプレミス VPN へのトンネルに向かうトラフィックを許可する VPN トンネル。この設定では、特定の IP アドレスまたは範囲に向かうトラフィックを、VPC からオンプレミス VPN へのトラフィックをブリッジできるホストに送信するルーティングルールが VPC に含まれています。この場合、レプリケーション インスタンスのプライベート IP アドレスまたはセキュリティグループから NAT インスタンスへのトラフィックを許可する必要がある独自のセキュリティグループ設定が NAT ホストに含まれています。

  • インターネットを使用した VPC へのネットワークの設定 - VPC セキュリティグループには、VPC に向かわないトラフィックをインターネットゲートウェイに送信するルーティングルールが含まれている必要があります。この設定では、エンドポイントへの接続がレプリケーション インスタンス上のパブリック IP アドレスから行われているように見えます。

  • VPC 内にない RDS; DB インスタンスで ClassicLink を使用する VPC 内の DB インスタンスへの設定方法 - ソースまたはターゲットの Amazon RDS DB インスタンスが VPC 内になく、セキュリティグループをレプリケーション インスタンスが存在する VPC と共有していない場合、プロキシサーバーを設定し、ClassicLink を使用してソースおよびターゲットのデータベースに接続できます。

  • ソース エンドポイントがレプリケーション インスタンスで使用されている VPC の外にあり、NAT のゲートウェイを使用している - 単一の Elastic network interface にバインドされた単一の Elastic IP アドレスを使用してネットワークアドレス変換 (NAT) ゲートウェイを設定できます。次に、この Elastic network interface は NAT 識別子 (nat-#####) を受け取ります。インターネットゲートウェイではなくその NAT ゲートウェイへのデフォルトルートが VPC に含まれている場合、レプリケーション インスタンスはインターネットゲートウェイのパブリック IP アドレスを使用してデータベースエンドポイントに接続しているように見えます。この場合、VPC 外のデータベースエンドポイントへの進入は、レプリケーション インスタンスのパブリック IP アドレスではなく NAT アドレスからの進入を許可する必要があります。

  • 非 RDBMS エンジンの VPC エンドポイント - AWS DMS は、非 RDBMS エンジンの VPC エンドポイントをに対応しません。

データベースのパスワードの変更

ほとんどの状況では、ソースまたはターゲットエンドポイント用のデータベースのパスワードを変更するのは簡単です。移行またはレプリケーションタスクで現在使用しているエンドポイント用のデータベースのパスワードを変更する必要がある場合、そのプロセスで追加のステップが必要になります。以下の手順は、その方法を示しています。

移行またはレプリケーションタスクでエンドポイント用のデータベースのパスワードを変更するには
  1. にサインイン AWS Management Console し、https://console.aws.amazon.com/dms/v2/ で AWS DMS コンソールを開きます。

    IAM ユーザーとしてサインインしている場合は、 AWS DMSにアクセスするための適切なアクセス許可があることを確認します。必要なアクセス権限の詳細については、「AWS DMSの使用に必要な IAM アクセス許可」をご参照ください。

  2. ナビゲーションペインで、[データベース移行タスク] を選択します。

  3. データベースのパスワードを変更するエンドポイントを使用するタスクを選択してから、[Stop] を選択します。

  4. タスクが停止されている間、データベースの操作に使用するネイティブツールを使用して、エンドポイント用のデータベースのパスワードを変更できます。

  5. DMS マネジメントコンソールに戻り、ナビゲーションペインから [Endpoints] を選択します。

  6. パスワードを変更したデータベースのエンドポイントを選択してから、[Modify] を選択します。

  7. [パスワード] ボックスに新しいパスワードを入力し、[保存] を選択します。

  8. ナビゲーションペインで、[データベース移行タスク] を選択します。

  9. 先ほど停止したタスクを選択し、[再起動/再開] を選択します。

  10. タスクを続行する方法に応じて、[再起動] または [再開] のいずれかを選択し、[タスクの開始] を選択します。