KeyVault.removeKeyAlternateName(UUID, keyAltName)Remove o
keyAltNameespecificado do diretório de dados com oUUIDespecificado. O diretório de dados deve existir no cofre de chave associado à conexão do reconhecimento de data center.Retorna: A chave de criptografia de dados antes de atualizar o
keyAltName.Retorna
nullse nenhum diretório de dados tiver oUUID()especificado.
Compatibilidade
Esse comando está disponível em implantações hospedadas nos seguintes ambientes:
- MongoDB Atlas: o serviço totalmente gerenciado para implantações do MongoDB na nuvem
MongoDB Enterprise: a versão autogerenciada e baseada em assinatura do MongoDB
MongoDB Community: uma versão com código disponível, de uso gratuito e autogerenciada do MongoDB
Sintaxe
removeKeyAlternateName() tem a seguinte sintaxe:
keyVault = db.getMongo().getKeyVault() keyVault.removeKeyAlternateName( UUID("<UUID string>"), "keyAltName" )
Comportamento
Requer a configuração da criptografia no nível do campo do lado do cliente na conexão do reconhecimento de data center
The mongosh client-side field level encryption methods require a database connection with client-side field level encryption enabled. If the current database connection was not initiated with client-side field level encryption enabled, either:
Use the
mongoshcommand line options to establish a connection with the required options. The command line options only support the Amazon Web Services KMS provider for CMK management.
Exemplo
The following example is intended for rapid evaluation of client-side field level encryption. For specific examples of using KeyVault.removeKeyAlternateName() with each supported KMS provider, see Encryption Key Management.
Criar as opções de criptografia em nível de campo do lado do cliente
Crie as opções de criptografia no nível do campo do lado do cliente usando a string de chave local gerada:
let autoEncryptionOpts = { "keyVaultNamespace" : "encryption.__dataKeys", "kmsProviders" : { "local" : { "key" : BinData(0, TEST_LOCAL_KEY) } } }
Crie seu cliente criptografado
Use o construtor Mongo() com as opções de criptografia de nível de campo do lado do cliente configuradas para criar uma conexão com o reconhecimento de data center. Substitua o URI mongodb://myMongo.example.net pelo URI da string de conexão do cluster de destino.
encryptedClient = Mongo( "mongodb://myMongo.example.net:27017/?replSetName=myMongo", autoEncryptionOpts )
Retrieve the keyVault object and use the KeyVault.removeKeyAlternateName() method to remove the specified key alternate name from the data encryption key with matching UUID:
keyVault = encryptedClient.getKeyVault() keyVault.removeKeyAlternateName(UUID("b4b41b33-5c97-412e-a02b-743498346079"),"Other-Data-Encryption-Key")
If successful, removeKeyAlternateName() returns the data encryption key prior to updating the keyAltName.
{ "_id" : UUID("b4b41b33-5c97-412e-a02b-743498346079"), "keyMaterial" : BinData(0,"PXRsLOAYxhzTS/mFQAI8486da7BwZgqA91UI7NKz/T/AjB0uJZxTvhvmQQsKbCJYsWVS/cp5Rqy/FUX2zZwxJOJmI3rosPhzV0OI5y1cuXhAlLWlj03CnTcOSRzE/YIrsCjMB0/NyiZ7MRWUYzLAEQnE30d947XCiiHIb8a0kt2SD0so8vZvSuP2n0Vtz4NYqnzF0CkhZSWFa2e2yA=="), "creationDate" : ISODate("2019-08-12T21:21:30.569Z"), "updateDate" : ISODate("2019-08-12T21:21:30.569Z"), "status" : 0, "version" : Long(0), "masterKey" : { "provider" : "local" }, "keyAltNames" : [ "ssn-encryption-key" ] }