すべてのプロダクト
Search
ドキュメントセンター

ApsaraDB RDS:列の暗号化

最終更新日:Jun 26, 2025

Data Security Center (DSC) が提供する列の暗号化機能により、ApsaraDB RDS for PostgreSQL の機密性の高い列データへの暗号化アクセスが可能になり、権限のない担当者がクラウドプラットフォームソフトウェアまたはデータベース接続ツールを介して機密データにプレーンテキストで直接アクセスすることを防ぎます。 この機能により、列データはデータベースで使用可能ですが、非表示になります。 クラウドプラットフォームの内部および外部のソースからのセキュリティ脅威から効果的に防御し、クラウドデータをユーザーにとって真に非公開の資産にします。

前提条件

  • インスタンスは、マイナーエンジンバージョン 20250228 以降の RDS PostgreSQL 16 を実行しています。

  • インスタンスは、次のいずれかのリージョンにあります。

    リージョンタイプ

    リージョン名

    中国本土

    中国 (青島)、中国 (北京)、中国 (張家口)、中国 (フフホト)、中国 (杭州)、中国 (上海)、中国 (深セン)、中国 (広州)、中国 (成都)。

    中国本土以外

    中国 (香港)、シンガポール、マレーシア (クアラルンプール)、インドネシア (ジャカルタ)、ドイツ (フランクフルト)。

機能紹介

RDS PostgreSQL の列の暗号化機能は、Data Security Center (DSC) によって提供されます。 AES-256-GCM 暗号化アルゴリズムとローカルキー暗号化方式を使用して、データベース内の機密データ列の暗号化を構成します。 これにより、機密データが暗号化された形式で保存され、承認されたユーザーは、復号後に常時機密クライアントを介してプレーンテキストデータにアクセスできます。 暗号化する RDS PostgreSQL インスタンス、データベース、テーブル、および列の範囲を選択および変更できます。

準備

列の暗号化機能を有効にする前に、DSC サービスのアクティブ化またはアップグレード、クラウド リソースへの DSC アクセスの承認、データベース資産の承認、データベースへの接続、機密データ識別タスクの実行という手順を順番に完了する必要があります。

1. DSC サービスのアクティブ化またはアップグレード

Data Security Center を使用したことがない新規ユーザーの場合は、DSC サービスをアクティブ化します

DSCDSC サービスをアクティブ化して列の暗号化機能を有効にすると、無料の列の暗号化クォータを受け取ります。 さらに暗号化された列が必要な場合は、追加の容量を購入できます。 列の暗号化機能は、 の Free EditionPremium EditionEnterprise Editon、および Value Added PlanData Security Center (DSC) のユーザーのみが利用できます。

エディション

無料の仕様

Free Edition

1 列。

Enterprise Edition

1 列。

Value-added Service Only Edition

1 列。

  1. Data Security Center 購入ページ にアクセスし、Alibaba Cloud アカウントにログインしてください。

  2. 適切なエディションを選択し、列の暗号化を有効にします。

    image

  3. Buy Now をクリックして、支払いを完了します。

  4. Overview ページで購入したエディションの機能仕様を確認できます。

既存の DSC ユーザーの場合は、DSC エディションと列の暗号化クォータを確認し、必要に応じて DSC サービスをアップグレードします

DSC エディションと列の暗号化クォータを確認する

Data Security Center コンソール にログインし、[概要] ページで DSC バージョンと列の暗号化クォータを確認します。

  • DSC バージョン: 列の暗号化機能は、Free EditionEnterprise Edition、および Value-added Service Only Edition のユーザーのみが利用できます。

  • 列の暗号化クォータ: 列の暗号化クォータがビジネス要件を満たしているかどうかを確認します。

image

DSC サービスのアップグレード

DSC エディションに互換性がない場合、または列の暗号化クォータがビジネス要件を満たしていない場合は、DSC サービスをアップグレードして、より多くの列の暗号化容量を取得できます。

現在、Premium Edition から Enterprise Edition へのアップグレード、または同じエディション内での柔軟なモジュール機能のアップグレード (列の暗号化でサポートされる列数の増加など) のみがサポートされています。 その他のエディションはアップグレードをサポートしていません。 次の方法を使用してエディションを変更できます。

  • Free Edition: Free Edition リソースを保持したまま、有料バージョン ( Enterprise Edition、Value-added Service Only Edition など) を購入できます。

  • Enterprise Edition または Value-added Service Only: 払い戻しをリクエストしてから 別のエディションを購入する必要がありますが、元のインスタンスとそのデータはリリースされます。

  • インスタンス構成のアップグレードでは、サブスクリプション期間の変更はサポートされていません。つまり、現在のインスタンスの残りのサービス期間は変更されません。

  1. Data Security Center コンソール にログインします。

  2. Overview ページで、Upgrade をクリックします。

  3. Data Security Center アップグレードページで、Enterprise Edition にアップグレードするか、現在のエディション内で列の暗号化容量を有効にして購入するかを選択できます。

  4. Buy Now をクリックして、支払いを完了します。

  5. Overview ページで更新された機能仕様を確認できます。

2. クラウド リソースにアクセスするように DSC を承認する

承認が完了すると、DSC インスタンスは、OSS、RDS、MaxCompute などのクラウド サービスのリソースにアクセスできます。

  1. データセキュリティセンターコンソール にログオンします。

  2. [RAM 承認] ダイアログボックスで、[今すぐ承認] をクリックします。

    説明

    [RAM 承認] ダイアログ ボックスが表示されない場合は、クラウド リソースにアクセスするように DSC を既に承認していることを示します。

3. データベース資産を承認する

クラウド製品 (RDS、PolarDB などを含む) の機密データを DSC を使用して検出したり、データベースアクティビティを監査したりする前に、まず資産インスタンスの承認を完了する必要があります。

  1. Data Security Center コンソール にログインします。 左側のナビゲーション ウィンドウで、Asset Center を選択します。

  2. Authorization Management タブで、Asset Authorization Management をクリックします。

  3. Asset Authorization Management ページの左側のナビゲーションウィンドウで、承認するデータ型を選択し、Asset synchronization をクリックします。

    説明

    DSC は、承認されていない資産リストに自動的に同期します。 DSC インスタンスを購入した後、クラウド資産リストの同期タスクはコンソールに初めてログインしたときにすぐに実行されるため、その時点で資産の同期を実行する必要はありません。 DSC は毎日 00:00 に新しく追加されたデータ資産をスキャンし、Asset Center > Authorization Management > Asset Authorization Management > Asset synchronization を実行します。 既存のユーザーは、この手順を手動で実行する必要があります。

  4. 対象アセットの Authorization 列で Actions をクリックします。

    一度に複数の資産を承認する必要がある場合は、対象の資産を選択し、Batch Authorize をクリックします。

4. データベースに接続して、機密データ識別タスクを実行する

  1. Data Security Center コンソール にログインし、左側のナビゲーション ウィンドウで Asset Center を選択します。

  2. Authorization Management タブで、対象アセットインスタンスの操作列にある Account Logon をクリックします。

  3. Account Logon パネルで、対象データベースの操作列にある Add Credential をクリックします。

  4. Add Credential ダイアログボックスで、認証情報を選択し、Scan assets and identify sensitive data now. チェックボックスをオンまたはオフにし、OK をクリックします。

    認証情報を作成していない場合は、Add Credential ダイアログ ボックスの Create Credential タブをクリックし、Credential NameUsernamePassword、および Credential Type を構成して、OK をクリックする必要があります。

    重要
    • Scan assets and identify sensitive data now. を選択すると、DSC はデフォルトの識別タスクを自動的に作成してすぐに実行します。 タスクはデータベースからデータを読み取るため、データベースの読み取りパフォーマンスが低下します。 オフピーク時にワンクリック接続操作を実行することをお勧めします。

    • Scan assets and identify sensitive data now. を選択しない場合は、ナビゲーション ウィンドウで Classification and grading > Tasks に移動し、Identification Tasks タブの Default Tasks リストで Rescan をクリックして、システムデフォルトタスクを手動で実行できます。

  5. データベースインスタンスの左側にある 展开图标 アイコンをクリックすると、データベースの接続ステータスと機能ステータスを表示できます。

    image

列の暗号化を有効にする

  1. Data Security Center コンソール にログインします。左側のナビゲーション ウィンドウで、Risk Governance > Column Encryption を選択します。

    重要

    対応するデータベースの列の暗号化を有効にして構成するには、[暗号化チェック] 列に [成功] と表示されている必要があります。 [失敗] と表示されている場合、データベースのメジャーバージョンまたはマイナーエンジンバージョンが列の暗号化機能をサポートしていない可能性があります。 詳細については、このトピックの FAQ をご参照ください。

  2. データベースインスタンスリストの上にある Rapid Encryption をクリックして、暗号化されていないすべての列の列の暗号化を構成します。

    または、ターゲットデータベースインスタンスの Actions 列にある Rapid Encryption をクリックして、ターゲットデータベースインスタンスの列の暗号化を構成することもできます。

    image

  3. Encryption Configuration パネルで、Asset TypeInstance namePlaintext Permission Accounts、および列の暗号化を構成するターゲット DatabasesTableColumn を選択し、OK をクリックします。 次の点に注意してください。

    • RDS PostgreSQL は、AES-256-GCM 暗号化アルゴリズムと ローカル暗号化方式のみをサポートしています。

    • 暗号化構成が完了すると、RDS PostgreSQL データベースアカウントのデフォルトの権限は Ciphertext Permission (JDBC Decryption) になります。これは、デフォルトで暗号化された列の暗号文データへのアクセスを許可し、クライアントコードを介したローカルキーを使用した復号後に元のプレーンテキストデータを表示することをサポートします。

    • プレーンテキストデータに直接アクセスする必要がある場合は、[プレーンテキスト権限アカウント] セクションに対応するデータベースアカウントを追加できます。 このアカウントにはプレーンテキスト権限があり、暗号化された列のプレーンテキストデータに直接アクセスできます。

      重要

      データベースの最新のデータを分類および格付けする必要がある場合は、認証情報として設定されたデータベースアカウント (DSC を RDS PostgreSQL インスタンスに接続するために使用されるデータベースアカウント) に プレーンテキスト権限が必要です。

列の暗号化構成を変更する

暗号化された列のスコープを変更する

列の暗号化を有効にした後、必要に応じて、データベースインスタンス内の特定の列に対して列の暗号化機能を個別に有効または無効にして、暗号化された列のスコープを変更できます。

  1. Data Security Center コンソール にログオンします。左側のナビゲーションウィンドウで、Risk Governance > Column Encryption を選択します。

  2. インスタンスリストで、ターゲットインスタンスを展開します。 データベースリストで、ターゲット DatabasesTableColumn 名を見つけます。 Enable Encryption または Disable Encryption をクリックして、単一の列の暗号化を構成します。

    image

データベースアカウントの権限を変更する

Plaintext Permissions に設定されているアカウントを除き、データベースインスタンス内の他のすべてのアカウントには Ciphertext Permission (JDBC Decryption) があります。 ビジネス要件に基づいて、アカウント権限を Plaintext Permissions または Ciphertext Permission (JDBC Decryption) に変更できます。

  1. データセキュリティセンターコンソール にログオンします。

  2. Risk Governance > Column Encryption ページで、AccountsPermission Settings セクションでクリックします。

    インスタンスリストの Actions 列で Edit をクリックし、Configure パネルの Edit の横にある Account Permissions をクリックすることもできます。

  3. Permission Settings パネルで、ターゲットインスタンスとアカウントを検索して、現在のアカウント権限を表示します。

    説明

    新しく追加されたデータベースアカウントがリストに表示されない場合は、最初に Asset synchronization を完了してから、もう一度確認してください。

  4. ターゲットアカウントの Actions 列で、Modify Permissions をクリックします。

    同じ権限を持つ複数のアカウントを選択し、リストの下部にある Batch Modify Permissions をクリックすることもできます。

  5. [権限の変更] ダイアログ ボックスで、ターゲット権限を選択し、OK をクリックします。

列の暗号化結果を確認する

データベースの列の暗号化とデータベースアカウントの権限を構成して、列の暗号化結果を確認できます。

  1. RDS PostgreSQL 16 データベースインスタンスを DSC に接続し、機密データの分類と格付けを完了し、RDS インスタンスの特定の列 ( テーブルの students01 列を例として使用生年月日表の例) の列の暗号化を有効にします。 同時に、RDS インスタンスの 1 つのデータベースアカウントに Plaintext Permissions を設定し、別のアカウントには Ciphertext Permission (JDBC Decryption) を保持します。image

  2. [暗号文権限 (JDBC 復号)] を持つアカウントを使用して、Data Management Service (DMS) でデータベースにログインします。 SELECT * FROM students01; ステートメントを実行して、データテーブルを表示します。 暗号化された列には、暗号文データが表示されます。image

  3. [プレーンテキスト権限] を持つアカウントを使用して、Data Management Service (DMS) でデータベースにログインします。 SELECT * FROM students01; ステートメントを実行して、データテーブルを表示します。 暗号化された列のプレーンテキストデータが返されます。image

クライアントの指示

データベースアカウントに 暗号文権限 (JDBC 復号) がある場合、列暗号化ドライバー (JDBC) を使用してターゲット RDS データベースにアクセスし、Java アプリケーションを介して暗号化された列データにアクセスできます。 JDBC は暗号文データを自動的に復号化してプレーンテキストデータを返すため、アプリケーションにとってプロセスは透過的になります。 詳細については、「列暗号化ドライバー (JDBC)」をご参照ください。

FAQ

RDS インスタンスが暗号化チェックに失敗した場合はどうすればよいですか?

承認された RDS PostgreSQL データベースのバージョンが PostgreSQL 16 でない場合、カーネルバージョンが 20250228 より前の場合、またはインスタンスが読み取り専用インスタンスの場合、[暗号化チェック] 列に [失敗] と表示されます。

  • データベースバージョンがサポートされていません

    ターゲット RDS データベースに列の暗号化構成が必要であることを確認した場合は、RDS インスタンスリスト にアクセスし、ターゲットインスタンスを見つけて、データベースバージョンをアップグレードできます。 詳細については、「メジャーエンジンバージョンのアップグレード」をご参照ください。

  • マイナーエンジンバージョンがサポートされていません

    image

    ターゲット RDS データベースに列の暗号化構成が必要であることを確認した場合は、[マイナーエンジンバージョンの更新] をクリックし、[最新バージョン][更新時間] を選択して、[OK] をクリックして、マイナーエンジンバージョンを更新できます。 詳細については、「マイナーエンジンバージョンの更新」をご参照ください。 インスタンスのマイナーエンジンバージョンが更新された後にのみ、RDS インスタンスの列の暗号化を有効にできます。

    image

  • 読み取り専用インスタンス

    読み取り専用 RDS インスタンスの作成中は、システムはセカンダリ RDS インスタンスから読み取り専用 RDS インスタンスにデータを複製します。 読み取り専用 RDS インスタンスが作成されると、インスタンスのデータはプライマリ RDS インスタンスと同じになります。 プライマリ RDS インスタンスのデータが更新されると、システムはプライマリ RDS インスタンスに接続されているすべての読み取り専用 RDS インスタンスに更新をすぐに同期します。 プライマリ RDS インスタンスの列の暗号化機能を有効にすることをお勧めします。

バージョンがアップグレードされたら、DSC コンソールに移動して最新のインスタンス情報を同期します。

  1. 左側のナビゲーション ウィンドウで、[資産センター] を選択し、[承認管理] タブで [資産承認管理] をクリックします。

  2. [資産承認管理] パネルの左側のナビゲーション ウィンドウで、必要なインスタンスタイプをクリックします。

  3. [資産承認管理] パネルで、[資産の同期] をクリックします。

関連リンク