のセキュリティ 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 リソースの管理を許可されているユーザーを決定するアクセス許可を割り当て AWS DMS ます。IAM ユーザーとしてサインインする場合は、適切なアクセス許可が必要です。たとえば、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 KMS キーを作成して、次の AWS DMS エンドポイントのターゲットデータを暗号化することもできます。

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 インスタンスから VPC 内の DB インスタンスへの設定 ClassicLink – ソースまたはターゲットの 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. タスクを続行する方法に応じて、[再起動] または [再開] のいずれかを選択し、[タスクの開始] を選択します。