2016-05-28 97 views
1

我們如何管理一個數據庫可以做的事情,例如,如果我想允許用戶連接我的數據庫並允許他們創建新文檔但不更新它們,有沒有辦法這個?Mongodb只允許創建新文檔

+0

什麼是你的「用戶」指什麼?你是指開發者還是公衆?人們現在究竟如何與數據庫連接? – RainingChain

+0

例如,我有2個不同的網頁,首先我想完全訪問數據庫,第二我想只允許創建文檔,無需更新,刪除。 –

+0

您的2個網頁位於分開的服務器和分開的網站上嗎? – RainingChain

回答

2

您必須創建一個用戶定義的角色,允許插入但不更新,然後將該用戶分配給它。請參見下面的鏈接作爲參考 A User-Defined Role Specifies Privileges

{ 
    _id: "myApp.appUser", 
    role: "appUser", 
    db: "myApp", 
    privileges: [ 
     { resource: { db: "myApp" , collection: "" }, 
     actions: [ "find", "createCollection", "dbStats", "collStats" ] }, 
     { resource: { db: "myApp", collection: "logs" }, 
     actions: [ "insert" ] }, 
     { resource: { db: "myApp", collection: "data" }, 
     actions: [ "insert", "update", "remove", "compact" ] }, 
     { resource: { db: "myApp", collection: "system.js" }, 
     actions: [ "find" ] }, 
    ], 
    roles: [] 
} 
+0

因此,從serverA我可以使用userA mongodb和從serverB我可以使用userB mongodb –