Эта статья является зеркальной статьёй машинного перевода, пожалуйста, нажмите здесь, чтобы перейти к оригиналу.

Вид: 7537|Ответ: 1

Таблица ролей разрешений MongoDB

[Скопировать ссылку]
Опубликовано 09.10.2016 17:04:10 | | |
MongoDB предоставляет доступ к данным и командам через авторизацию на основе ролей и предоставляет встроенные роли, обеспечивающие различные уровни доступа, обычно необходимые в системе баз данных. Вы также можете создавать пользовательские роли.
Роль предоставляет права выполнять наборы действий на определённых ресурсах. Заданная роль применяется к базе данных, на которой она определена, и может предоставлять доступ до уровня детализации коллекции.
Каждая из встроенных ролей MongoDB определяет доступ на уровне базы данных для всех несистемных коллекций в базе данных роли и на уровне коллекции для всех системных коллекций.
MongoDB предоставляет встроенные роли пользователей и администраторов баз данных на каждой базе данных. MongoDB предоставляет все остальные встроенные роли только в базе данных администратора.
В этом разделе описываются привилегии для каждой встроенной роли. Вы также можете просматривать привилегии встроенной роли в любое время, выдавая команду rolesInfo с полями showPrivileges и showBuiltinRolesfields, настроенными в true.
Роли пользователей базы данных
Каждая база данных включает следующие клиентские роли:
читать
Обеспечивает возможность чтения данных по всем несистемным коллекциям и по следующим системным коллекциям: system.indexes, system.js и system.namespaces. Роль предоставляет доступ к чтению, предоставляя следующие действия:
  • collStats
  • dbHash
  • dbStats
  • найти
  • killКурсоры
  • listIndexes
  • списокКоллекции
читатьПисать
Предоставляет все привилегии роли чтения, а также возможность изменять данные во всех несистемных коллекциях и коллекции system.js. Роль предусматривает следующие действия по этим коллекциям:
  • collStats
  • convertToCapped
  • createCollection
  • dbHash
  • dbStats
  • dropCollection
  • createIndex
  • dropIndex
  • Пустая крышка
  • найти
  • Вставка
  • killКурсоры
  • listIndexes
  • списокКоллекции
  • Удалить
  • renameCollectionSameDB
  • Обновление

Роли в администрировании баз данных
Каждая база данных включает следующие роли в администрировании баз данных:
dbAdmin
Обеспечивает следующие действия в коллекциях system.indexes, system.namespaces и system.profile базы данных:
  • collStats
  • dbHash
  • dbStats
  • найти
  • killКурсоры
  • listIndexes
  • списокКоллекции
  • dropCollection и createCollection только на system.profile
Изменения в версии 2.6.4: dbAdmin добавил createCollection для system.profilecollection. В предыдущих версиях была только dropCollection в коллекции system.profile.

Выполняет следующие действия по всем несистемным коллекциям. Эта роль не включает полный доступ к чтению несистемных коллекций:
  • bypassDocumentValidation
  • collMod
  • collStats
  • компактный
  • convertToCapped
  • createCollection
  • createIndex
  • dbStats
  • dropCollection
  • dropDatabase
  • dropIndex
  • enableProfiler
  • reIndex
  • renameCollectionSameDB
  • repairDatabase
  • ХранилищеПодробности
  • валидировать
dbOwner
Владелец базы данных может выполнять любые административные действия над базой данных. Эта роль объединяет привилегии, предоставляемые ролями readWrite, dbAdmin и userAdmin.
userAdmin
Предоставляет возможность создавать и изменять роли и пользователей в текущей базе данных. Эта роль также косвенно предоставляет суперпользователю доступ либо к базе данных, либо, если она ограничена на базу администратора, к кластеру. Роль TheuserAdmin позволяет пользователям предоставлять любому пользователю любые привилегии, включая себя.
Роль userAdmin явно предусматривает следующие действия:
  • changeCustomData
  • changePassword
  • createRole
  • createUser
  • dropRole
  • dropUser
  • grantРоль
  • revokeRole
  • просмотрРоль
  • просмотр пользователя

Роли в администрировании кластера
Админская база данных включает следующие роли для управления всей системой, а не только одной базой данных. Эти роли включают, но не ограничиваются административными функциями наборов реплик и шардированных кластеров.
clusterAdmin
Обеспечивает максимальный доступ к управлению кластерами. Эта роль объединяет привилегии, предоставляемые ролями theclusterManager, clusterMonitor и hostManager. Кроме того, эта роль обеспечивает действие thedropDatabase.
clusterManager
Обеспечивает управление и мониторинг на кластере. Пользователь с этой ролью может получить доступ к локальным базам данных конфигурации, которые используются соответственно для шардинга и репликации.
Предоставляет следующие действия по кластеру в целом:
  • addShard
  • applicationMessage
  • очисткаСирота
  • flushRouterConfig
  • listОсколки
  • удалитьОсколок
  • replSetConfigure
  • replSetGetConfig
  • replSetGetStatus
  • replSetStateChange
  • Ресинхронизация
Выполняет следующие действия по всем базам данных кластера:
  • enableSharding
  • moveChunk
  • splitChunk
  • splitVector
В конфигурационной базе данных в коллекции настроек выполняются следующие действия:
  • Вставка
  • Удалить
  • Обновление
В конфигурационной базе данных выполняются следующие действия во всех конфигурационных коллекциях, а также в коллекциях thesystem.indexes, system.js и system.namespaces:
  • collStats
  • dbHash
  • dbStats
  • найти
  • killКурсоры
В локальной базе данных предоставляются следующие действия в коллекции replset:
  • collStats
  • dbHash
  • dbStats
  • найти
  • killКурсоры
clusterMonitor
Обеспечивает доступ только для чтения к инструментам мониторинга, таким как MongoDB Cloud Manager и агент мониторинга Ops Manager.
Предоставляет следующие действия по кластеру в целом:
  • connPoolStats
  • cursorInfo
  • getCmdLineOpts
  • getLog
  • getParameter
  • getShardMap
  • hostInfo
  • inprog
  • listDatabases
  • listОсколки
  • netstat
  • replSetGetStatus
  • replSetGetConfig
  • serverStatus
  • shardingState
  • Вверх
Выполняет следующие действия по всем базам данных кластера:
  • collStats
  • dbStats
  • getShardVersion
  • indexСтатистика
Обеспечивает действие поиска во всех коллекциях system.profile в кластере.
Предоставляет следующие действия в конфигурационных коллекциях базы данных конфигураций и коллекциях system.indexes, system.js и system.namespaces:
  • collStats
  • dbHash
  • dbStats
  • найти
  • killКурсоры
hostManager
Предоставляет возможность мониторинга и управления серверами.
Предоставляет следующие действия по кластеру в целом:
  • applicationMessage
  • closeAllDatabases
  • connPoolSync
  • cpuProfiler
  • diagLogging
  • flushRouterConfig
  • fsync
  • invalidateUserCache
  • killop
  • logRotate
  • Ресинхронизация
  • setParameter
  • Отключение
  • Прикосновение
  • Разблокировка
Выполняет следующие действия по всем базам данных кластера:
  • killКурсоры
  • repairDatabase

Резервные и восстановительные роли
Административная база данных включает следующие роли для резервного копирования и восстановления данных:
Резервное копие
Обеспечивает минимальные привилегии, необходимые для резервного копирования данных. Эта роль предоставляет достаточные права для использования резервного агента MongoDB Cloud Manager, Ops Manager Backup Agent или для использования mongodump для резервного копирования целого экземпляра mongod.
Обеспечивает действия вставки и обновления в коллекции mms.backup в базе администраторов и в коллекции настроек в базе конфигураций.
Обеспечивает действие listDatabases по всему кластеру.
Выполняет действие listCollections для всех баз данных.
Предоставляет действие listIndexes для всех коллекций.
Обеспечивает действие bypassDocumentValidation для коллекций с валидацией документов.
Предоставляет действие поиска по следующим параметрам:
  • все несистемные коллекции в кластере
  • все следующие системные коллекции в кластере: system.indexes, system.namespaces и system.js
  • коллекции admin.system.users и admin.system.roles
  • Коллекция config.settings
  • наследие коллекций system.users из версий MongoDB до версии 2.6
Изменено в версии 3.2.1: роль резервного копирования предоставляет дополнительные права для резервного копирования коллекций thesystem.profile, которые существуют при запуске с профилированием базы данных. Ранее пользователям требовался дополнительный доступ к чтению этой коллекции.

Восстановление
Предоставляет привилегии, необходимые для восстановления данных из резервных копий, не включающих данные system.profilecollection. Эта роль достаточна при восстановлении данных с mongorestore без опции --oplogReplay.
  • Если резервные данные включают данные коллекции system.profile, а целевой базы данных не содержит коллекцию system.profile, mongorestore пытается создать коллекцию, хотя Программа фактически не восстанавливает документы system.profile. Таким образом, пользователю необходимы дополнительные права для выполнения действий createCollection и convertToCapped в коллекции system.profile для базы данных.
    Встроенные роли dbAdmin и dbAdminAnyDatabase предоставляют дополнительные привилегии.
  • Если запускать mongorestore с --oplogReplay, роль восстановления недостаточна для повторного воспроизведения оплога. Чтобы воспроизвести оплог, создайте пользовательскую роль, которая будет иметь anyAction на anyResource и предоставлять только тем, кто должен запускать mongorestore с --oplogReplay.

Выполняет следующие действия по всем несистемным коллекциям и коллекциям system.js в кластере; в коллекциях admin.system.users и admin.system.roles в базе данных администратора; а также в коллекциях устаревших system.users из версий MongoDB до версии 2.6:
  • collMod
  • createCollection
  • createIndex
  • dropCollection
  • Вставка
Выполняет действие listCollections для всех баз данных.
Предоставляет следующие дополнительные действия на admin.system.users и legacy system.userscollections:
  • найти
  • Удалить
  • Обновление
Обеспечивает действие поиска во всех коллекциях system.namespaces в кластере.
Хотя восстановление включает возможность изменять документы в admin.system.userscollection с помощью обычных операций модификации, эти данные изменяются только с помощью управления пользователями методы.

Роли, полностью связанные с базами данных
Админ-база данных предоставляет следующие роли, применимые ко всем базам данных в экземпляре mongod и примерно эквивалентны их аналогам в одной базе данных:
readAnyDatabase
Предоставляет те же права только для чтения, что и для чтения, но применяется ко всем базам данных кластера. Роль также обеспечивает действие listDatabases по всему кластеру.
readWriteAnyDatabase
Предоставляет те же права на чтение и запись, что и readWrite, но применяется ко всем базам данных кластера. Роль также обеспечивает действие listDatabases по всему кластеру.
userAdminAnyDatabase
Обеспечивает тот же доступ к операциям администрирования пользователей, что и userAdmin, но применяется ко всем базам данных кластера. Роль также включает следующие действия по всему кластеру:
  • authSchemaUpgrade
  • invalidateUserCache
  • listDatabases
Роль также предоставляет следующие действия в коллекциях admin.system.users и admin.system.roles в базе данных администратора, а также в устаревших коллекциях system.userscollections из версий MongoDB до версии 2.6:
  • collStats
  • dbHash
  • dbStats
  • найти
  • killКурсоры
  • planCacheRead
Изменено в версии 2.6.4: userAdminAnyDatabase добавил следующие права на коллекции theadmin.system.users и admin.system.roles:
  • createIndex
  • dropIndex

Роль userAdminAnyDatabase не ограничивает права, которые пользователь может предоставить. В результате пользователи userAdminAnyDatabase могут предоставлять себе привилегии, превышающие текущие привилегии, и даже предоставлять себе все права, хотя эта роль этого не делает явно авторизует привилегии, выходящие за рамки пользовательского администрирования. Эта роль фактически является системным суперпользователем MongoDB.
dbAdminAnyDatabase
Обеспечивает тот же доступ к операциям администрирования баз данных, что и dbAdmin, но применяется ко всем базам данных кластера. Роль также обеспечивает действие listDatabases по всему кластеру.

Роли суперпользователя
Несколько ролей обеспечивают косвенный или прямой доступ суперпользователя по всей системе.
Следующие роли предоставляют возможность назначать любому пользователю любые привилегии в любой базе данных, что означает, что пользователи с одной из этих ролей могут назначать себе любые привилегии в любой базе данных:
  • роль dbOwner, при ограничении в базе данных администратора
  • роль userAdmin, при ограничении в базе данных администратора
  • userAdminAnyDatabase роль
Следующая должность предоставляет полные права на все ресурсы:
корень
Предоставляет доступ к операциям и всем ресурсам readWriteAnyDatabase, dbAdminAnyDatabase, userAdminAnyDatabase, clusterAdmin ролей и восстановления вместе.
Изменено в версии 3.0.7: корень имеет действие валидации в системе. Коллекции. Ранее root не включал доступ к коллекциям, начинающимся с системы. префиксы, отличные от system.indexes и system.namespace.
Корневая роль включает привилегии из роли восстановления.


Внутренняя роль__system
MongoDB назначает эту роль пользовательским объектам, представляющим членов кластера, таким как члены наборов реплик и экземпляры mongos. Эта роль даёт владельцу право предпринимать любые действия против любого объекта в базе данных.
Не назначайте эту роль пользовательским объектам, представляющим приложения или человеческих администраторов, за исключением исключительных случаев.
Если вам нужен доступ ко всем действиям на всех ресурсах, например, для запуска команд applyOps, не назначайте эту роль. Вместо этого создайте пользовательскую роль, которая предоставляет anyAction на anyResource и обеспечьте доступ только пользователям, нуждающимся в доступе к этим операциям.
Оригинал: https://docs.mongodb.com/manual/reference/built-in-roles/#built-in-roles






Предыдущий:Отражение C# получает имя отражания свойства объекта
Следующий:Создайте аккаунт и пароль для входа в MongoDb
 Хозяин| Опубликовано 09.10.2016 17:33:26 |
Создайте аккаунт и пароль для входа в MongoDb
http://www.itsvse.com/thread-3221-1-1.html
(Источник: Code Agriculture Network)
Отказ:
Всё программное обеспечение, программные материалы или статьи, публикуемые Code Farmer Network, предназначены исключительно для учебных и исследовательских целей; Вышеуказанный контент не должен использоваться в коммерческих или незаконных целях, иначе пользователи несут все последствия. Информация на этом сайте взята из Интернета, и споры по авторским правам не имеют отношения к этому сайту. Вы должны полностью удалить вышеуказанный контент с компьютера в течение 24 часов после загрузки. Если вам нравится программа, пожалуйста, поддержите подлинное программное обеспечение, купите регистрацию и получите лучшие подлинные услуги. Если есть нарушение, пожалуйста, свяжитесь с нами по электронной почте.

Mail To:help@itsvse.com