このトピックでは、各アカウントタイプの権限範囲について説明します。また、ApsaraDB RDS for SQL Server インスタンスの標準アカウントまたは特権アカウントの権限を変更する方法についても説明します。システム管理者アカウントは、すべてのデータベースに対するすべての権限を持っています。システム管理者アカウントの権限を変更する必要はありません。
アカウント権限
セキュリティ上の理由から、ApsaraDB RDS は特定の権限を制限しています。制限された権限は、ストアドプロシージャにカプセル化されています。ストアドプロシージャを実行して、権限が制限されている操作を実行できます。詳細については、「ストアドプロシージャ」をご参照ください。
ApsaraDB RDS コンソールで、RDS インスタンスの データベース に対する権限をアカウントに付与できます。テーブルなどの特定のデータベースオブジェクトに対する権限をアカウントに付与する場合は、必要な SQL 文を実行できます。詳細については、「GRANT オブジェクト権限 (Transact-SQL)」をご参照ください。
システム管理者アカウント
権限付与オブジェクト: すべてのデータベース。
権限: RDS インスタンスに対する すべての権限。詳細については、「権限 (データベースエンジン)」をご参照ください。
標準アカウントと特権アカウント
権限付与オブジェクト: アカウントのデータベース。
権限タイプ | ロール | 権限 |
オーナー |
| |
読み取り専用 |
| |
読み取りおよび書き込み権限 (DML) |
|
グローバル読み取り専用アカウント
権限付与オブジェクト: インスタンス上のすべてのユーザーデータベース。
権限タイプ: 読み取り専用。これらの権限は、新しいデータベースに自動的に適用されます。
アカウントの権限を変更する
[インスタンス] ページに移動します。上部のナビゲーションバーで、RDS インスタンスが存在するリージョンを選択します。次に、RDS インスタンスを見つけ、インスタンスの ID をクリックします。
表示されたページの左側のナビゲーションウィンドウで、アカウント管理 をクリックします。
権限を変更するアカウントを見つけ、権限の変更 をクリックします。

アカウント権限の編集 パネルで、アカウントの権限を変更します。
権限を付与されたデータベースの変更: アカウントに権限を付与するデータベースを選択し、
または
アイコンをクリックして、権限を付与されたデータベースを変更します。アカウント権限の変更: 権限が付与されたデータベース セクションで、必要に応じて権限を設定します。
読み取り専用: SQL Server の
db_datareaderデータベースロールを割り当てます。読み書き (DML): SQL Server の
db_datawriterおよびdb_datareaderデータベースロールを割り当てます。所有者: SQL Server の
db_ownerデータベースロールを割り当てます。
データベースレベルのロールの詳細については、「データベースレベルのロール」をご参照ください。
表示されるメッセージで OK をクリックします。
よくある質問
読み取り/書き込み (DML) 権限を持つアカウントを使用してデータベースにテーブルを作成できません。なぜですか?
A: 読み取り/書き込み (DML) 権限を持つアカウントには、SQL Server の標準の
db_datareaderおよびdb_datawriterデータベースロールが割り当てられます。これらのロールには、CREATE TABLE権限は含まれていません。詳細については、「アカウント権限」をご参照ください。データベースにテーブルを作成するには、次のいずれかの方法を使用できます。方法 1: 必要な SQL 文を実行します。詳細については、「GRANT データベース権限 (Transact-SQL)」および「データベースレベルのロール」をご参照ください。
方法 2: ApsaraDB RDS コンソールにログオンします。RDS インスタンスの [アカウント] ページで、アカウントの権限タイプを オーナー に変更します。オーナー権限タイプには、テーブルの作成を含むほとんどの権限があります。注意して進めてください。詳細については、「アカウントの権限を変更する」をご参照ください。
CREATE TABLE権限のみを付与する必要がある場合は、方法 1 を使用してください。この方法は、より高いレベルのセキュリティを提供します。