共用方式為


適用於 MongoDB 的 Azure Cosmos DB 中以角色為基礎的存取控制

適用於 MongoDB 的 Azure Cosmos DB 會公開內建的角色型存取控制系統,可讓您使用精細的角色型許可權模型來授權資料要求。 使用者和角色位於資料庫內,並使用 Azure CLI、Azure PowerShell 或 Azure Resource Manager (ARM) 進行管理。

核心概念

在適用於 MongoDB 的 Azure Cosmos DB 中使用角色型存取控制之前,您必須先瞭解一組核心概念。

Resource

資源是我們套用存取控制規則的集合或資料庫。

Privileges

權限是可以在特定資源上執行的動作。 例如,「集合 xyz 的讀取存取權」。權限會指派給特定角色。

Role

角色具有一或多個權限。 角色會指派給使用者 (零個或多個),以讓他們執行這些權限中定義的動作。 角色儲存在單一資料庫中。

診斷記錄稽核

另一個名為 userId 的資料行會出現在 Azure 入口網站診斷功能的資料表中 MongoRequests 。 此欄顯示哪個使用者執行了每個資料計劃作業。 當未啟用角色型存取控制時,此資料行中的值會保持空白。

Privileges

此清單包含適用於 MongoDB 的 Azure Cosmos DB 中角色可用的所有許可權。

  • 查詢和寫入
    • find
    • insert
    • remove
    • update
  • 變更串流
    • changeStream
  • 資料庫管理
    • createCollection
    • createIndex
    • dropCollection
    • killCursors
    • killAnyCursor
  • 伺服器管理
    • dropDatabase
    • dropIndex
    • reIndex
  • 診斷
    • collStats
    • dbStats
    • listDatabases
    • listCollections
    • listIndexes

內建角色

這些角色已存在於每個資料庫上,不需要建立。

read readWrite dbAdmin dbOwner
changeStream ✅ 是 ✅ 是 ✅ 是 ✅ 是
collStats ✅ 是 ✅ 是 ✅ 是 ✅ 是
listCollections ✅ 是 ✅ 是 ✅ 是 ✅ 是
listIndexes ✅ 是 ✅ 是 ✅ 是 ✅ 是
createCollection ✖️ 不 ✅ 是 ✅ 是 ✅ 是
createIndex ✖️ 不 ✅ 是 ✅ 是 ✅ 是
dropCollection ✖️ 不 ✅ 是 ✅ 是 ✅ 是
dbStats ✖️ 不 ✖️ 不 ✅ 是 ✅ 是
dropDatabase ✖️ 不 ✖️ 不 ✅ 是 ✅ 是
reIndex ✖️ 不 ✖️ 不 ✅ 是 ✅ 是
find ✅ 是 ✅ 是 ✖️ 不 ✅ 是
killCursors ✅ 是 ✅ 是 ✖️ 不 ✅ 是
dropIndex ✖️ 不 ✅ 是 ✅ 是 ✅ 是
insert ✖️ 不 ✅ 是 ✖️ 不 ✅ 是
remove ✖️ 不 ✅ 是 ✖️ 不 ✅ 是
update ✖️ 不 ✅ 是 ✖️ 不 ✅ 是