MongoDB: метод db.grantPrivilegesToRole ()
db.grantPrivilegesToRole ()
Метод db.grantPrivilegesToRole () используется для назначения дополнительных привилегий пользовательской роли.
Синтаксис:
db.grantPrivilegesToRole ( "<rolename>", [ {ресурс: {<ресурс>}, действия: ["<действие>", ...]}, ... ], {<writeConcern>} )
Параметры:
название | Описание | Необходимые / Необязательный | Тип |
---|---|---|---|
RoleName | Имя роли для предоставления привилегий. | необходимые | строка |
привилегии | Привилегии, чтобы добавить к роли. Для формата привилегии. | необходимые | массив |
writeConcern | Уровень записи касается модификации. Документ writeConcern принимает те же поля, что и команда getLastError. | Необязательный | документ |
Метод grantPrivilegesToRole () может предоставить одну или несколько привилегий. Каждый <привелигирование> имеет следующий синтаксис:
{ resource: { <resource> }, actions: [ "<action>", ... ] }
Метод db.grantPrivilegesToRole () переносит команду grantPrivilegesToRole.
Пример: MongoDB: метод db.grantPrivilegesToRole ()
Следующая операция db.grantPrivilegesToRole () предоставляет две дополнительные привилегии myroll1, который существует в базе данных администратора. Операция выполняется в этой базе данных:
use admin
db.grantPrivilegesToRole(
"myroll1",
[
{
resource: { db: "config", collection: "" },
actions: [ "insert" ]
},
{
resource: { db: "admin", collection: "system.js" },
actions: [ "find" ]
}
],
{ w: "majority" }
);
Выход:
> db.getRole ("myroll1", {showPrivileges: true}); { "роль": "myroll1", "db": "admin", "isBuiltin": ложь, "роли": [ { "роль": "читать", "db": "admin" } ], "Унаследованные роли": [ { "роль": "читать", "db": "admin" } ], «привилегии»: [ { "ресурс": { "db": "config", "коллекция": "" }, "действия": [ "CreateCollection", "CreateIndex", "Обновить" ] }, { "ресурс": { "db": "config", "коллекция": "" }, "действия": [ «Вставить» ] }, { "ресурс": { "db": "admin", "collection": "system.js" }, "действия": [ "находить" ] } ], "унаследованные привилегии": [ { "ресурс": { "db": "config", "коллекция": "" }, "действия": [ "CreateCollection", "CreateIndex", "Обновить" ] }, { "ресурс": { "db": "config", "коллекция": "" }, "действия": [ «Вставить» ] }, { "ресурс": { "db": "admin", "collection": "system.js" }, "действия": [ "collStats", "DbHash", "dbStats", "находить", "killCursors", "PlanCacheRead" ] }, { "ресурс": { "db": "admin", "коллекция": "" }, "действия": [ "collStats", "DbHash", "dbStats", "находить", "killCursors", "PlanCacheRead" ] }, { "ресурс": { "db": "admin", "collection": "system.indexes" }, "действия": [ "collStats", "DbHash", "dbStats", "находить", "killCursors", "PlanCacheRead" ] }, { "ресурс": { "db": "admin", "collection": "system.namespaces" }, "действия": [ "collStats", "DbHash", "dbStats", "находить", "killCursors", "PlanCacheRead" ] } ] }
Получить данные о ресторанах здесь
Предыдущая: метод db.dropAllRoles ()
Далее: метод db.revokeRolesFromRole ()
Новый контент: Composer: менеджер зависимостей для PHP , R программирования
disqus2code