ネットワークとデータのリンク
AnalyticDB for PostgreSQLはクラウドネイティブ分散システムを使用し、高いセキュリティを提供します。 各インスタンスは仮想プライベートクラウド (VPC) で作成されます。 VPCは、クラシックネットワークよりも高いセキュリティとパフォーマンスを提供する分離された仮想ネットワークです。 潜在的なセキュリティリスクを軽減するために、シナリオに基づいてパブリックエンドポイントを有効にするかどうかを選択できます。 IPアドレスホワイトリストに含まれているIPアドレスとCIDRブロックのみがインスタンスに接続できます。 IPアドレスホワイトリストは、AnalyticDB for PostgreSQLコンソールで変更できます。
データリンクのセキュリティを向上させるために、AnalyticDB for PostgreSQLでは暗号化のためにSecure Sockets Layer (SSL) を有効にすることができます。 SSLプロトコルは、SSLがインターネットエンジニアリングタスクフォース (IETF) によって標準化された後、Transport Layer Security (TLS) に名前が変更されました。 AnalyticDB for PostgreSQLは、アプリケーションのSSL認証局 (CA) 証明書を提供します。 相互認証証明書を有効にして、サーバーとクライアントのIDを検証し、セキュリティを強化することもできます。 AnalyticDB for PostgreSQLコンソールは、アプリケーションの証明書をダウンロードして更新するための安全な方法を提供します。
データリンク
データリンクのセキュリティを向上させるために、AnalyticDB for PostgreSQLでは暗号化のためにSecure Sockets Layer (SSL) を有効にすることができます。 SSLプロトコルは、SSLがインターネットエンジニアリングタスクフォース (IETF) によって標準化された後、Transport Layer Security (TLS) に名前が変更されました。 AnalyticDB for PostgreSQLは、アプリケーションのSSL認証局 (CA) 証明書を提供します。 相互認証証明書を有効にして、サーバーとクライアントのIDを検証し、セキュリティを強化することもできます。 AnalyticDB for PostgreSQLコンソールは、アプリケーションの証明書をダウンロードして更新するための安全な方法を提供します。
アカウントと権限の管理
AnalyticDB for PostgreSQLは、特権アカウントと標準アカウントの2種類のアカウントをサポートしています。
- 特権アカウントは、すべてのデータベースに対するすべての権限を持ちます。
- 標準アカウントには、アカウントが管理を許可されているデータベースに対するすべての権限があります。
AnalyticDB for PostgreSQLを使用する前に、コンソールでデータベースへの接続に使用する特権アカウントを作成する必要があります。 特権アカウントを作成した後は、そのアカウントを削除することはできず、パスワードをリセットまたは変更することしかできません。 アカウントのパスワードは、平文パスワードセキュリティのためのMD5ハッシュアルゴリズムを使用して暗号化され、保存されます。
既定では、新しいデータベースにはパブリックスキーマが含まれており、すべてのアカウントでパブリックスキーマからデータを読み書きできます。 ただし、アカウントを使用して、作成したオブジェクトのみにアクセスできます。 スキーマ内のアカウントが所有していないオブジェクトにはアクセスできません。 スキーマ内のアカウントが所有していないオブジェクトにアクセスするためにアカウントを使用する場合は、オブジェクトの所有者が必要な権限をアカウントに付与する必要があります。 適切な権限が付与されている場合は、他のスキーマでオブジェクトを作成できます。 データベース、スキーマ、およびテーブルレベルでのアクセス許可を細かく管理できます。 たとえば、テーブルの読み取り権限をアカウントに付与できますが、テーブルを変更することはできません。 要約すると、標準アカウントは、アカウントに権限が付与されているデータベースオブジェクトとシステムレベルのデフォルトオブジェクトにのみアクセスできます。 他のオブジェクトにアクセスするには、アカウントに必要な権限を付与する必要があります。
データ暗号化
AnalyticDB for PostgreSQLは、ディスク暗号化機能を提供します。 この機能は、Elastic Block Storage (EBS) に基づいて、インスタンスの各ディスク上のデータを暗号化します。 このようにして、データが漏洩しても復号化できません。 ディスク暗号化を有効にすると、ディスクに保存されている静的データと、ディスクとAnalyticDB for PostgreSQLインスタンス間で送信されるデータが暗号化されます。 このディスクから生成されたスナップショットおよびこれらのスナップショットから作成されたディスクは、この暗号化属性を継承します。 ディスク暗号化機能を使用するには、インスタンスを作成するときに、ストレージディスクタイプとして拡張SSD (ESSD) またはウルトラディスクを選択する必要があります。 ディスク暗号化を有効にすると無効にすることはできません。
ディスク暗号化に使用されるキーは、Key Management Service (KMS) によって管理され、ユーザーによってアクティブ化されます。 ActionTrailは、キーへの各アクセスを記録します。
AnalyticDB for PostgreSQLは、pgcryptoプラグインを使用して、テーブルまたは列レベルで機密データを暗号化します。 データは、プラグインが提供する関数を使用して暗号化されます。 データとキーは平文として送信されます。 AnalyticDB for PostgreSQLとアプリケーション間のデータ送信中のデータ漏洩を防ぐため、データリンクのSSL暗号化機能を有効にすることを推奨します。 pgcryptoは、暗号化アルゴリズムを使用してデータセキュリティを確保する暗号化関数を提供します。 アルゴリズムは、MD5、セキュアハッシュアルゴリズム1 (SHA − 1) 、SHA-224、SHA-256、SHA-384、SHA-512、Blowfish、Advanced Encryption Standard 128 (AES-128) 、AES-256、Raw Encryption、Pretty Good Privacy (PGP) 対称鍵、およびPGP公開鍵を含む。
データ暗号化
AnalyticDB for PostgreSQLは、pgcryptoプラグインを使用して、テーブルまたは列レベルで機密データを暗号化します。 データは、プラグインが提供する関数を使用して暗号化されます。 データとキーは平文として送信されます。 AnalyticDB for PostgreSQLとアプリケーション間のデータ送信中のデータ漏洩を防ぐため、データリンクのSSL暗号化機能を有効にすることを推奨します。 pgcryptoは、暗号化アルゴリズムを使用してデータセキュリティを確保する暗号化関数を提供します。 アルゴリズムは、MD5、セキュアハッシュアルゴリズム1 (SHA − 1) 、SHA-224、SHA-256、SHA-384、SHA-512、Blowfish、Advanced Encryption Standard 128 (AES-128) 、AES-256、Raw Encryption、Pretty Good Privacy (PGP) 対称鍵、およびPGP公開鍵を含む。
SQL 監査
AnalyticDB for PostgreSQLコンソールには、SQL監査機能があります。これにより、SQLの詳細を表示し、SQL文を定期的に監査できます。 SQL監査ログは、すべてのデータ操作言語 (DML) およびデータ記述言語 (DDL) 操作を記録します。 SQL監査機能は、インスタンスのパフォーマンスには影響しません。