ApsaraDB RDS は、データセキュリティを確保するために、多次元のアクセス制御を実装しています。主な制御メカニズムは 2 つあります。1 つは、ユーザーが実行できる操作を定義するアカウントによる権限です。もう 1 つは、接続できるホストを制御する IP アドレスホワイトリストです。これら 2 つのレイヤーを組み合わせて適用し、データベースインスタンスの攻撃対象領域を削減してください。
アカウントによるアクセス制御
ApsaraDB RDS は、権限の粒度が異なる 2 種類のアカウントタイプをサポートしています。
| アカウントタイプ | 権限の粒度 | 推奨対象 |
|---|---|---|
| 標準アカウント | データベースレベル:読み取り専用、読み取り/書き込み、DDL のみ、または DML のみ | ほとんどのワークロード:アプリケーションユーザーにデータベースレベルの権限を付与 |
| 特権アカウント | テーブル、ビュー、フィールドレベル | きめ細かい制御:データベースレベルの権限では範囲が広すぎる場合に使用 |
ほとんどのワークロードでは、標準アカウントで十分なアクセス制御が可能です。データベースレベルより下でアクセスを制限する必要がある場合にのみ、特権アカウントを作成してください。
標準アカウント
標準アカウントでは、特定のデータベースに対して、読み取り専用、読み取り/書き込み、DDL のみ、または DML のみの権限を付与できます。標準アカウントは、ApsaraDB RDS コンソールまたは API から作成および管理します。
設定手順については、「ApsaraDB RDS for MySQL インスタンスでアカウントを作成する」をご参照ください。
特権アカウント
特権アカウントでは、テーブル、ビュー、フィールドレベルまで、よりきめ細かい制御が可能です。コンソールまたは API から特権アカウントを作成した後、そのアカウントで RDS インスタンスにログインし、標準アカウントを作成して、それらにきめ細かい権限を付与します。
設定手順については、「テーブル、ビュー、フィールドを管理するためのアカウントを承認する」をご参照ください。
ホワイトリストによるアクセス制御
IP アドレスホワイトリストは、ネットワークレベルで、RDS インスタンスに接続できるホストを制御します。
デフォルトでは、IP アドレスホワイトリストには 127.0.0.1 のみが含まれているため、インスタンスはインターネットおよび内部ネットワークからのすべての接続を拒否します。アクセスを許可するには、インスタンスに接続する必要がある IP アドレスをホワイトリストに追加します。
ホワイトリストは、ApsaraDB RDS コンソールの[データセキュリティ] ページ、または ApsaraDB RDS API で設定します。ホワイトリストの更新はインスタンスを再起動せずに反映されるため、ワークロードが中断されることはありません。
設定手順については、「ApsaraDB RDS for MySQL インスタンスのホワイトリストを設定する」をご参照ください。