Join us Sept 17 at .local NYC! Use code WEB50 to save 50% on tickets. Learn more >
MongoDB Event
Menu Docs
Página inicial do Docs
/
MongoDB Mongosync
/

Permissões de usuário

O usuário especificado na string de conexão mongosync deve ter as permissões necessárias nos clusters de origem e destino. As permissões variam dependendo do seu ambiente e se você deseja modificar as configurações de bloqueio de escrita ou usar a sincronização reversa.

As permissões self-managed são:

Tipo de sincronização
Permissões de origem necessárias
Permissões de destino necessárias

Default

Bloqueio duplo de gravação

Reversão

Múltiplas reversões

Para obter detalhes sobre as funções do servidor , consulte: Controle de acesso baseado em funções em implementações autogerenciadas.

Para atualizar permissões de usuário, consulte: grantRolesToUser.

As permissões do Atlas são:

Tipo de sincronização
Permissões de origem necessárias
Permissões de destino necessárias

Default

  • atlasAdmin

Bloqueio duplo de gravação, reversão ou múltiplas reversões

Para obter detalhes sobre as funções do Atlas, consulte: Funções e privilégios integrados.

Para atualizar as permissões de Atlas user , consulte: Gerenciar acesso a um projeto.

Observação

Os privilégios mínimos podem mudar entre versões mongosync.

Os privilégios mínimos de origem são:

Tipo de sincronização
Privilégios mínimos de origem

Default

[
{
"resource": { "cluster": true },
"actions": [
"appendOplogNote",
"getDefaultRWConcern",
"getShardMap",
"hostInfo",
"listDatabases",
"listShards",
"replSetGetConfig",
"replSetGetStatus",
"serverStatus"
]
},
{
"resource": { "db": "", "collection": "" },
"actions": [
"changeStream",
"collStats",
"find",
"indexStats",
"listCollections",
"listIndexes"
]
},
{
"resource": { "db": "admin", "collection": "system.version" },
"actions": [ "find" ]
},
{
"resource": { "db": "", "collection": "system.js" },
"actions": [ "listCollections", "listIndexes" ]
},
{
"resource": { "db": "config", "collection": "shards" },
"actions": [ "find" ]
},
{
"resource": { "db": "config", "collection": "collections" },
"actions": [ "find" ]
},
{
"resource": { "db": "config", "collection": "version" },
"actions": [ "find" ]
},
{
"resource": { "db": "config", "collection": "settings" },
"actions": [ "find" ]
},
{
"resource": { "system_buckets": "" },
"actions": [ "listCollections", "listIndexes" ]
}
]

Bloqueio de gravação

Tudo, desde os privilégios de origem padrão com a adição de:

[
{
"resource": { "cluster": true },
"actions": [ "bypassWriteBlockingMode", "setUserWriteBlockMode" ]
}
]

Reversão

Tudo, desde os privilégios de origem padrão e os privilégios de destino padrão.

Múltiplas reversões

Tudo, desde os privilégios de origem padrão e os privilégios de destino padrão com a adição de:

[
{ "resource": { "db": "", "collection": "" }, "actions": [ "dropDatabase" ] }
]

Migração V4.4

[
{
"resource": { "cluster": true },
"actions": [
"addShard",
"appendOplogNote",
"flushRouterConfig",
"getDefaultRWConcern",
"getShardMap",
"hostInfo",
"listDatabases",
"listShards",
"replSetGetConfig",
"replSetGetStatus",
"serverStatus"
]
},
{
"resource": { "db": "", "collection": "" },
"actions": [
"changeStream",
"collStats",
"find",
"indexStats",
"listCollections",
"listIndexes"
]
},
{
"resource": { "db": "admin", "collection": "system.version" },
"actions": [ "find" ]
},
{
"resource": { "db": "", "collection": "system.js" },
"actions": [ "listCollections", "listIndexes" ]
},
{
"resource": { "db": "config", "collection": "shards" },
"actions": [ "find" ]
},
{
"resource": { "db": "config", "collection": "collections" },
"actions": [ "find" ]
},
{
"resource": { "db": "config", "collection": "version" },
"actions": [ "find" ]
},
{
"resource": { "db": "config", "collection": "settings" },
"actions": [ "find" ]
}
]

Os privilégios mínimos de destino são:

Tipo de sincronização
Privilégios mínimos de destino

Default

[
{
"resource": { "cluster": true },
"actions": [
"appendOplogNote",
"enableSharding",
"getDefaultRWConcern",
"getShardMap",
"hostInfo",
"listDatabases",
"listShards",
"replSetGetConfig",
"replSetGetStatus",
"serverStatus"
]
},
{
"resource": { "db": "", "collection": "" },
"actions": [
"bypassDocumentValidation",
"changeStream",
"collMod",
"convertToCapped",
"createCollection",
"createIndex",
"dropCollection",
"dropIndex",
"enableSharding",
"find",
"indexStats",
"insert",
"listCollections",
"listIndexes",
"remove",
"renameCollectionSameDB",
"update",
"bypassWriteBlockingMode",
"setUserWriteBlockMode"
]
},
{
"resource": { "db": "admin", "collection": "system.version" },
"actions": [ "find" ]
},
{
"resource": { "db": "", "collection": "system.js" },
"actions": [ "listCollections", "listIndexes" ]
},
{
"resource": { "db": "config", "collection": "shards" },
"actions": [ "find" ]
},
{
"resource": { "db": "", "collection": "system.views" },
"actions": [ "dropCollection" ]
},
{
"resource": { "db": "config", "collection": "version" },
"actions": [ "find" ]
},
{
"resource": { "db": "config", "collection": "collections" },
"actions": [ "find" ]
},
{
"resource": { "db": "config", "collection": "settings" },
"actions": [ "find" ]
},
{
"resource": { "db": "config", "collection": "tags" },
"actions": [ "find" ]
},
{
"resource": { "system_buckets": "" },
"actions": [ "listCollections", "listIndexes" ]
}
]

Bloqueio de gravação

Tudo, desde os privilégios de destino padrão.

Reversão

Tudo, desde os privilégios de origem padrão e os privilégios de destino padrão com a adição de:

[
{ "resource": { "db": "", "collection": "" }, "actions": [ "dropDatabase" ] }
]

Múltiplas reversões

Tudo, desde os privilégios de origem padrão e os privilégios de destino padrão com a adição de:

[
{ "resource": { "db": "", "collection": "" }, "actions": [ "dropDatabase" ] }
]
  • Ao migrar de um cluster de origem 4.4, o cluster de origem deve ter clusterManager ou as permissões mínimas listadas para v4.4.

    As permissões mínimas de origem para v4.4 são:

    Tipo de sincronização
    Privilégios mínimos de origem

    Migração V4.4

    [
    {
    "resource": { "cluster": true },
    "actions": [
    "addShard",
    "appendOplogNote",
    "flushRouterConfig",
    "getDefaultRWConcern",
    "getShardMap",
    "hostInfo",
    "listDatabases",
    "listShards",
    "replSetGetConfig",
    "replSetGetStatus",
    "serverStatus"
    ]
    },
    {
    "resource": { "db": "", "collection": "" },
    "actions": [
    "changeStream",
    "collStats",
    "find",
    "indexStats",
    "listCollections",
    "listIndexes"
    ]
    },
    {
    "resource": { "db": "admin", "collection": "system.version" },
    "actions": [ "find" ]
    },
    {
    "resource": { "db": "", "collection": "system.js" },
    "actions": [ "listCollections", "listIndexes" ]
    },
    {
    "resource": { "db": "config", "collection": "shards" },
    "actions": [ "find" ]
    },
    {
    "resource": { "db": "config", "collection": "collections" },
    "actions": [ "find" ]
    },
    {
    "resource": { "db": "config", "collection": "version" },
    "actions": [ "find" ]
    },
    {
    "resource": { "db": "config", "collection": "settings" },
    "actions": [ "find" ]
    }
    ]
  • O bloqueio duplo de gravação e a sincronização reversa não são suportados.

Voltar

Métricas

Nesta página