Menu Docs
Página inicial do Docs
/
Manual do MongoDB
/ / /

getAuditConfig

Nesta página

  • Definição
  • Sintaxe
  • Comportamento
  • Exemplos
getAuditConfig

Novidades na versão 5.0.

getAuditConfig é um comando administrativo que recupera configurações de auditoria de mongod e mongos instâncias do servidor.

O comando tem a seguinte sintaxe:

db.adminCommand(
{
getAuditConfig: 1
}
)

Auditoria deve ser habilitada para usar o getAuditConfig.

Os nós que não participam de uma configuração de auditoria de tempo de execução retornam suas definições de arquivo de configuração atuais para auditLog.filter e setParameter.auditAuthorizationSuccess.

Os nós que estão participam da auditoria de tempo de execução sincronizam sua configuração atual da memória. As atualizações de configuração são distribuídas por meio do mecanismo oplog , o que significa que as atualizações nos nós mongod são distribuídas para nós secundários muito rapidamente. No entanto, o mecanismo de distribuição é diferente em nós mongos . mongos nós precisam poll o servidor primário em intervalos regulares para atualizações de configuração. Você pode ver dados obsoletos devido ao atraso da pesquisa se executar setAuditConfig no servidor primário e getAuditConfig em um fragmento antes que o fragmento tenha pesquisado o servidor principal para obter detalhes de configuração atualizados.

Observação

Se você estiver gravando scripts de auditoria automatizados, observe que o estilo entre aspas e os tipos usados para representar a assinatura do cluster diferem entre mongosh e o shell mongo legado. Em mongosh os tipos são Binário e Longo. Os tipos correspondentes no shell legado são BinData e NumberLong.

// mongosh
signature: {
hash: Binary(Buffer.from("0000000000000000000000000000000000000000", "hex"), 0),
keyId: Long("0")
}
// mongo
"signature" : {
"hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="),
"keyId" : NumberLong(0)
}

Execute getAuditConfig no banco de dados admin .

db.adminCommand({getAuditConfig: 1})

O servidor de exemplo é configurado para auditar operações de leitura e gravação. Tem um filtro que captura as operações desejadas e o valor auditAuthorizationSuccess foi definido como true.

{
generation: ObjectId("60e73e74680a655705f16525"),
filter: {
atype: 'authCheck',
'param.command': {
'$in': [ 'find', 'insert', 'delete', 'update', 'findandmodify' ]
}
},
auditAuthorizationSuccess: true,
ok: 1,
'$clusterTime': {
clusterTime: Timestamp(1, 1625767540),
signature: {
hash: Binary(Buffer.from("0000000000000000000000000000000000000000", "hex"), 0),
keyId: Long("0")
}
},
operationTime: Timestamp(1, 1625767540)
}

Dica

Veja também:

← Desbloqueio Fsync