このトピックでは、ApsaraDB for MongoDB でルートアカウントに付与される権限について説明します。
ApsaraDB for MongoDB インスタンスを作成すると、システムは admin データベースにルートアカウントを自動的に作成します。ルートアカウントに付与される権限は、インスタンスのバージョンによって異なります。ルートアカウントには、インスタンスのバージョンごとに次の権限が付与されます。
インスタンスが MongoDB 4.2 以前を実行している場合、ルートアカウントは ApsaraDB for MongoDB の組み込み root ロールの権限を持ちます。
インスタンスが MongoDB 4.4 以降を実行している場合、ルートアカウントは alibabaCloudAdmin ロールの権限を持ちます。
重要場合によっては、admin データベースにデータを書き込む際に深刻なパフォーマンスのジッターが発生する可能性があります。そのため、alibabaCloudAdmin ロールは admin データベースに対する書き込み権限を持たず、admin データベースに対する書き込み権限を持つアカウントを作成することもできません。
rolesInfo コマンドを実行して、特定のロールの権限を表示できます。 root ロールの権限と rolesInfo コマンドの詳細については、「root」および「rolesInfo」をご参照ください。
データセキュリティを確保するために、ルートアカウントを使用してデータベースを管理しないことをお勧めします。ビジネス要件に基づいて、関連する権限を持つデータベースアカウントを作成することをお勧めします。詳細については、「ApsaraDB for MongoDB インスタンスのアカウントを作成する」をご参照ください。
次のコマンドを実行して、ルートアカウントの権限を表示できます。
db.getSiblingDB("admin").runCommand({usersInfo: "root"});usersInfo コマンドの詳細については、「usersInfo」をご参照ください。
alibabaCloudAdmin ロールの権限
このロールには、次の組み込みロールの権限(コレクションの読み取りと書き込み、アカウントの管理、統計情報のクエリなど)が付与されます。readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase、clusterMonitor、backup、enableSharding、restore。
説明alibabaCloudAdmin ロールは、admin データベースに対する読み取り権限のみを持ちます。
シャードクラスターインスタンスでは、flushRouterConfig、cleanupOrphaned、runCommandOnShard、splitVector、clearJumboFlag、moveChunk、splitChunk コマンドがサポートされています。