Amazon RDS での MariaDB のセキュリティ
MariaDB DB インスタンスのセキュリティは以下の 3 つのレベルで管理されます。
-
AWS Identity and Access Management では、どのユーザーが DB インスタンスに対して Amazon RDS の管理アクションを実行できるかを制御します。IAM 認証情報を使用して AWS に接続している場合、IAM アカウントには、Amazon RDS の管理オペレーションを実行するためのアクセス許可を付与する IAM ポリシーが必要です。(詳しくは、「Amazon RDS での Identity and Access Management」を参照してください。)
-
DB インスタンスを作成するときは、VPC セキュリティグループを使用して、どのデバイスまたは Amazon EC2 インスタンスが DB インスタンスのエンドポイントとポートへの接続を開くことができるかを制御します。これらの接続は、Secure Socket Layer (SSL) と Transport Layer Security (TLS) を使用して行います。さらに、会社のファイアウォールルールでも、社内のどのデバイスが DB インスタンスへの接続を開くことができるかを制御できます。
-
MariaDB DB インスタンスへの接続が開かれたら、ログイン認証とアクセス許可は MariaDB のスタンドアロンインスタンスの場合と同じ方法で適用されます。
CREATE USER、RENAME USER、GRANT、REVOKE、SET PASSWORDなどのコマンドは、スタンドアロンデータベースの場合と同じ方法で、データベーススキーマテーブルを直接変更します。
Amazon RDS DB インスタンスを作成すると、マスターユーザーには以下のデフォルト権限が付与されます。
-
alter -
alter routine -
create -
create routine -
create temporary tables -
create user -
create view -
delete -
drop -
event -
execute -
grant option -
index -
insert -
lock tables -
process -
references -
reloadこの権限は MariaDB DB インスタンスに限定されます。
FLUSH LOGSオペレーションまたはFLUSH TABLES WITH READ LOCKオペレーションにはアクセスを許可しません。 -
replication client -
replication slave -
select -
show create routineこの権限は、バージョン 11.4 以降を実行している MariaDB DB インスタンスに限定されます。
-
show databases -
show view -
trigger -
update
これらの権限の詳細については、MariaDB ドキュメントの「User Account Management
注記
DB インスタンスのマスターユーザーを削除することはできますが、お勧めはしません。マスターユーザーを再作成するには、ModifyDBInstance API または modify-db-instance AWS CLI を使用して、新しいマスターユーザーのパスワードを該当するパラメータで指定します。インスタンスに既存のマスターユーザーがない場合、指定したパスワードを使用してマスターユーザーが作成されます。
各 DB インスタンスに管理サービスを提供するために、DB インスタンスの作成時に rdsadmin ユーザーが作成されます。rdsadmin アカウントの権限をドロップ、名前変更、パスワード変更、または変更しようとするとエラーになります。
DB インスタンスの管理を可能にするために、スタンダード的なコマンド kill と kill_query の使用は制限されています。Amazon RDS コマンド mysql.rds_kill、mysql.rds_kill_query、mysql.rds_kill_query_id が MariaDB と MySQL 用に用意されており、DB インスタンスのユーザーセッションやクエリを終了できます。