Saltar para o conteúdo principal
Versão: 20 R7 BETA

Data file encryption status

Data file encryption status ( rotaEstrutura , rotaDados ) -> Resultado

ParâmetroTipoDescrição
rotaEstruturaTextRota do arquivo de estrutura 4D a ser verificado
rotaDadosTextRota do arquivo de dados 4D a ser verificado
ResultadoObjectInformação sobre o estado de criptografia do arquivo de dados e de cada tabela

Descrição

O comando Data file encryption status devolve um objeto que fornece o estado de cifrado para o arquivo de dados designado pelos parâmetros rotaEstruta e rotaDados. Também se proporciona o estado de cada tabela.

rotaDados designa um arquivo de dados 4D (.4dd). Deve corresponder ao arquivo de estrutura definido pelo parâmetro rotaEstrut. Pode designar o arquivo de estrutura atual, mas o arquivo de dados não deve ser o arquivo atual (aberto).

Nota: utilize o método ds.encryptionStatus( ) para determinar o estado de cifrado do arquivo de dados atual.

Valor devolvido

O objeto devolvido contém as propriedades abaixo:

PropriedadeTipoDescrição
isEncryptedBooleanoTrue se o arquivo de dados estiver cifrado
keyProvidedBooleanoTrue se a chave de cifrado que coincidir com o arquivo de dados cifrados estiver no chaveiro 4D (*).
tablesObjetoObjeto que contém tantas propriedades como tabelas criptografadas oy criptografáveis.
<table name>ObjetoTabela Encriptada ou Criptografável
nameTextoNome da tabela
numNúmeroNúmero de tabela
isEncryptableBooleanoTrue se a tabela se declara criptografável no arquivo de estrutura
isEncryptedBooleanoTrue se os registros da tabela estiverem cifrados no arquivo de dados

(*) A chave de criptografia pode ser fornecida:

  • previamente:
    • antes de abrir este arquivo de dados, utilizando um dispositivo conectado,
    • com o comando ds.provideDataKey( ) quando se abre este arquivo de dados,
    • depois de abrir o arquivo de dados, con o comando Discover data key
  • utilizando o comando Register data key

Exemplo

Se quiser conhecer o estado de criptografia de um arquivo de dados que corresponda ao arquivo de estrutura atual:

 var $status : Object
 
 $status:=Data file encryption status(Structure file;"D:\\Invoices\\Data_2019\\Invoices.4dd")
 Case of
    :(Not($status.isEncrypted))
       ALERT("O arquivo de dados não está criptografado")
    :($status.isEncrypted&(Not($status.keyProvided))
       ALERT("O arquivo de dados está criptografado e a chave de cifrado não está no chaveiro. Não terá acesso aos dados cifrados.")
    :($status.isEncrypted&$status.keyProvided)
       ALERT("O arquivo de dados está cifrado e a chave de cifrado está no chaveiro. Terá acesso aos datos cifrados.")
 End case

Ver também

Encrypt data file