Тази статия е огледална статия за машинен превод, моля, кликнете тук, за да преминете към оригиналната статия.

Изглед: 7537|Отговор: 1

Таблица с разрешения на MongoDB

[Копирай линк]
Публикувано в 9.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 collection.

Предоставя следните действия върху всички колекции извън системата. Тази роля не включва пълен достъп до четене на колекции, които не са системни:
  • 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
  • viewРоля
  • viewUser

Роли в администрацията на клъстера
Администраторската база данни включва следните роли за администриране на цялата система, а не само на една база данни. Тези роли включват, но не се ограничават до, административни функции на набори от реплики и шардирани клъстери.
clusterAdmin
Осигурява най-голям достъп до управление на клъстера. Тази роля комбинира привилегиите, предоставени от ролите theclusterManager, clusterMonitor и hostManager. Освен това ролята предоставя действие на thedropDatabase.
clusterManager
Осигурява управление и мониторинг на клъстера. Потребител с тази роля може да има достъп до локалните бази данни на конфигурацията, които се използват съответно при шардиране и репликация.
Предоставя следните действия върху клъстера като цяло:
  • addShard
  • applicationСъобщение
  • почистванеСираче
  • flushRouterConfig
  • listShards
  • премахни Шард
  • 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 monitoring agent.
Предоставя следните действия върху клъстера като цяло:
  • connPoolStats
  • cursorInfo
  • getCmdLineOpts
  • getLog
  • getParameter
  • getShardMap
  • hostInfo
  • inprog
  • listБази данни
  • listShards
  • netstat
  • replSetGetStatus
  • replSetGetConfig
  • serverStatus
  • shardingState
  • Горе
Предоставя следните действия върху всички бази данни в клъстера:
  • collStats
  • dbStats
  • getShardVersion
  • indexStats
Осигурява действието за намиране на всички колекции system.profile в клъстера.
Предоставя следните действия в конфигурационните колекции на конфигурационната база данни и колекциите system.indexes, system.js и system.namespaces:
  • collStats
  • dbHash
  • dbStats
  • Намери
  • killКурсори
hostManager
Осигурява възможност за наблюдение и управление на сървъри.
Предоставя следните действия върху клъстера като цяло:
  • applicationСъобщение
  • closeAllDatabases
  • connPoolSync
  • cpuProfiler
  • diagLogging
  • flushRouterConfig
  • fsync
  • invalidateUserCache
  • killop
  • logRotate
  • ресинхронизиране
  • setParameter
  • Затваряне
  • Докосвам
  • Отключване
Предоставя следните действия върху всички бази данни в клъстера:
  • killКурсори
  • repairDatabase

Резервни и реставрационни роли
Администраторската база данни включва следните роли за архивиране и възстановяване на данни:
Резервно копие
Осигурява минимални привилегии, необходими за архивиране на данни. Тази роля предоставя достатъчни права за използване на backup agent на 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, ролята на възстановяване е недостатъчна за повторно възпроизвеждане на оплога. За да преиграете oplog-а, създайте потребителски дефинирана роля, която има 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 и наследени system.userscollections:
  • Намери
  • Премахване
  • Актуализация
Осигурява действие за намиране във всички колекции system.namespaces в клъстера.
Въпреки че възстановяването включва възможност за промяна на документите в admin.system.userscollection чрез нормални операции за модификация, тези данни се модифицират само чрез потребителското управление методи.

Роли изцяло в бази данни
Администраторската база данни предоставя следните роли, които се прилагат за всички бази данни в инстанция на mongod и са приблизително еквивалентни на техните еквиваленти в една база данни:
readAnyDatabase
Предоставя същите права само за четене като за четене, но се прилага за всички бази данни в клъстера. Ролята също така предоставя действието listDatabases върху клъстера като цяло.
readWriteAnyDatabase
Предоставя същите права за четене и запис като readWrite, но се прилага за всички бази данни в клъстера. Ролята също така предоставя действието listDatabases върху клъстера като цяло.
userAdminAnyDatabase
Осигурява същия достъп до операциите за администриране на потребителите като userAdmin, но се прилага за всички бази данни в клъстера. Ролята също така предоставя следните действия върху клъстера като цяло:
  • authSchemaUpgrade
  • invalidateUserCache
  • listБази данни
Ролята също така предоставя следните действия върху колекциите 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 има validate action на системата. колекции. Преди това root не включваше достъп до колекции, които започват със системата. префикси, различни от system.indexes и system.namespaces.
Основната роля включва привилегии от ролята за възстановяване.


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






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

Mail To:help@itsvse.com