メニュー
Amazon Relational Database Service
ユーザーガイド (API Version 2014-10-31)

Microsoft SQL Server DB インスタンスでの SSL の使用

クライアントアプリケーションと Microsoft SQL Server を実行する Amazon RDS DB インスタンス間の接続は、Secure Sockets Layer (SSL) を使用して暗号化できます。SSL サポートは、AWS のすべてのリージョンで、サポート対象の SQL Server のすべてのエディションでご利用いただけます。

SQL Server DB インスタンスを作成する際、Amazon RDS はそのインスタンスの SSL 証明書を作成します。SSL 証明書には、なりすまし攻撃から保護するために、SSL 証明書の共通名 (CN) として DB インスタンスのエンドポイントが含まれています。

SSL を使用して SQL Server DB インスタンスに接続する方法は 2 とおりあります。

  • すべての接続に SSL を強制する — これはクライアントに対して透過的に行われ、クライアントは SSL を使用するための作業を行う必要はありません。

  • 特定の接続を暗号化する — 特定のクライアントコンピュータから SSL 接続を確立します。接続を暗号化するためにクライアントで作業を行う必要があります。

DB インスタンスへの接続での SSL の使用の強制

DB インスタンスへのすべての接続に SSL の使用を強制することができます。接続に SSL の使用を強制する場合、これはクライアントに対して透過的に行われ、クライアントは SSL を使用するための作業を行う必要はありません。

SSL の使用を強制する場合、rds.force_ssl パラメータを使用します。デフォルトでは、rds.force_ssl パラメータが false に設定されています。接続での SSL の使用を強制するには、rds.force_ssl パラメータを true に設定します。rds.force_ssl パラメータは静的であるため、値を変更した後にその変更を有効にするには、DB インスタンスを再起動する必要があります。

To force all connections to your DB instance to use SSL

  1. Determine the parameter group that is attached to your DB instance.

    1. AWS マネジメントコンソールにサインインし、Amazon RDS コンソール (https://console.aws.amazon.com/rds/) を開きます。

    2. In the top right corner of the Amazon RDS console, select the region of your DB instance.

    3. In the navigation pane, choose DB Instances, and then select your DB instance.

    4. Choose the Details tab. Find the Parameter Group field in the Configuration Details section.

  2. If necessary, create a new parameter group. If your DB instance uses the default parameter group, you must create a new parameter group. If your DB instance uses a nondefault parameter group, you can choose to edit the existing parameter group or to create a new parameter group. If you edit an existing parameter group, the change affects all DB instances that use that parameter group.

    To create a new parameter group, follow the instructions in DB パラメータグループを作成する.

  3. Edit your new or existing parameter group to set the rds.force_ssl parameter to true. To edit the parameter group, follow the instructions in DB パラメータグループのパラメータの変更.

  4. If you created a new parameter group, modify your DB instance to attach the new parameter group. Modify the DB Parameter Group setting of the DB instance. For more information, see Microsoft SQL Server データベースエンジンを実行する DB インスタンスの変更.

  5. Reboot your DB instance. For more information, see DB インスタンスを再起動する.

特定の接続の暗号化

DB インスタンスへのすべての接続で SSL を使用するように強制することも、特定のクライアントコンピュータからの接続のみを暗号化することもできます。特定のクライアントからの接続に SSL を使用するには、クライアントコンピュータの証明書を取得し、クライアントコンピュータで証明書をインポートしてから、クライアントコンピュータからの接続を暗号化する必要があります。

注記

2014 年 8 月 5 日以降に作成されたすべての SQL Server インスタンスは、SSL 証明書の共通名 (CN) フィールドで DB インスタンスのエンドポイントを使用します。2014 年 8 月 5 日より前は、VPC ベースの SQL Server のインスタンスで SSL 証明書を利用できませんでした。2014 年 8 月 5 日より前に作成された VPC ベースの SQL Server DB インスタンスの場合、SSL 証明書認証を使用し、そのインスタンスのエンドポイントを CN としてその DB インスタンスの SSL 証明書に含めるには、インスタンスの名前を変更します。DB インスタンスの名前を変更すると、新しい証明書がデプロイされ、新しい証明書を有効にするためにインスタンスは再起動されます。

クライアントコンピュータの証明書の取得

クライアントコンピュータから、Microsoft SQL Server を実行する Amazon RDS DB インスタンスへの接続を暗号化するには、クライアントコンピュータに証明書が必要です。

その証明書を取得するには、クライアントコンピュータに証明書をダウンロードします。すべてのリージョンで使用できるルート証明書は、https://s3.amazonaws.com/rds-downloads/rds-ca-2015-root.pem からダウンロードできます。古いルート証明書と新しいルート証明書の両方を含む証明書バンドルは、https://s3.amazonaws.com/rds-downloads/rds-combined-ca-bundle.pem からダウンロードできます。リージョン固有の中間証明書についてと、詳細については、「SSL を使用した DB インスタンスへの接続の暗号化」を参照してください。

適切な証明書をダウンロードしたら、以下のセクションの手順に従って Microsoft Windows オペレーティングシステムに証明書をインポートします。

クライアントコンピュータでの証明書のインポート

以下の手順を使用して、クライアントコンピュータの Microsoft Windows オペレーティングシステムに証明書をインポートできます。

To import the certificate into your Windows operating system:

  1. On the Start menu, type Run in the search box and press Enter.

  2. In the Open box, type MMC and then choose OK.

  3. In the MMC console, on the File menu, choose Add/Remove Snap-in.

  4. In the Add or Remove Snap-ins dialog box, for Available snap-ins, select Certificates, and then choose Add.

  5. In the MMC console, on the File menu, choose Add/Remove Snap-in.

  6. In the Certificates snap-in dialog box, choose Computer account, and then choose Next.

  7. In the Select computer dialog box, choose Finish.

  8. In the Add or Remove Snap-ins dialog box, choose OK.

  9. In the MMC console, expand Certificates, open the context (right-click) menu for Trusted Root Certification Authorities, choose All Tasks, and then choose Import.

  10. On the first page of the Certificate Import Wizard, choose Next.

  11. On the second page of the Certificate Import Wizard, choose Browse. In the browse window, change the file type to All files (*.*) because .pem is not a standard certificate extension. Locate the .pem file that you downloaded previously.

  12. Choose Open to select the certificate file, and then choose Next.

  13. On the third page of the Certificate Import Wizard, choose Next.

  14. On the fourth page of the Certificate Import Wizard, choose Finish. A dialog box appears indicating that the import was successful.

  15. In the MMC console, expand Certificates, expand Trusted Root Certification Authorities, and then choose Certificates. Locate the certificate to confirm it exists, as shown following.

  16. Restart your computer.

Microsoft SQL Server を実行している Amazon RDS DB インスタンスへの接続の暗号化

クライアントコンピュータに証明書をインポートした後、クライアントコンピュータから、Microsoft SQL Server を実行する Amazon RDS DB インスタンスへの接続を暗号化できます。

SQL Server Management Studio では、以下の手順を使用します。SQL Server Management Studio の詳細については、「SQL Server Management Studio の使用」を参照してください。

To encrypt connections from SQL Server Management Studio

  1. Launch SQL Server Management Studio.

  2. For Connect to server, type the server information, login user name, and password.

  3. Choose Options.

  4. Select Encrypt connection.

  5. Choose Connect.

  6. Confirm that your connection is encrypted by running the following query. Verify that the query returns true for encrypt_option.

    Copy
    select ENCRYPT_OPTION from SYS.DM_EXEC_CONNECTIONS where SESSION_ID = @@SPID

その他の SQL クライアントの場合は、以下の手順を実行します。

To encrypt connections from other SQL clients

  1. Append encrypt=true to your connection string. This string might be available as an option, or as a property on the connection page in GUI tools.

    注記

    To enable SSL encryption for clients that connect using JDBC, you might need to add the Amazon RDS SQL certificate to the Java CA certificate (cacerts) store. You can do this by using the keytool utility.

  2. Confirm that your connection is encrypted by running the following query. Verify that the query returns true for encrypt_option.

    Copy
    select ENCRYPT_OPTION from SYS.DM_EXEC_CONNECTIONS where SESSION_ID = @@SPID

関連トピック