Vous êtes sur le site Web historique de la documentation de 4D. Les documentations sont progressivement déplacées vers developer.4d.com

Accueil

 
4D v18.4
dataStore.provideDataKey( )

dataStore.provideDataKey( ) 


 

dataStore.provideDataKey ( phraseSecrèteCour | cléDonnéesCour ) -> Résultat 
Paramètre Type   Description
phraseSecrèteCour | cléDonnéesCour  Texte, Objet in Phrase secrète courante (texte) ou clé de chiffrement des données courante (objet)
Résultat  Objet in Résultat de la mise en correspondance de la clé de chiffrement

La méthode dataStore.provideDataKey( ) permet de fournir une clé de chiffrement des données pour le fichier de données courant du datastore et détecte si la clé correspond aux données chiffrées. Cette commande peut être utilisée à l'ouverture d'une base chiffrée, ou à l'exécution de n'importe quelle opération de chiffrement qui nécessite la clé de chiffrement, telle que le rechiffrement du fichier de données.

Notes :

  • La méthode dataStore.provideDataKey( ) doit être appelée dans une base chiffrée. Si elle est appelée dans une base non chiffrée, l'erreur 2003 (la clé de chiffrement ne correspond pas aux données) est retournée. Utilisez la commande Statut chiffrement donnees pour déterminer si la base est chiffrée.
  • La méthode dataStore.provideDataKey( ) ne peut pas être appelée à partir d'un 4D distant ou un datastore chiffré distant.

Passez le paramètre phraseSecrèteCour ou cléDonnéesCour qui correspond à la base :

  • phraseSecrèteCour : Chaine utilisée pour générer la clé de chiffrement des données. Lorsque vous utilisez ce paramètre, une clé de chiffrement est générée.
  • cléDonnéesCour : Objet (avec la propriété encodedKey) contenant la clé de chiffrement des données. Cette clé peut avoir été générée à l'aide de la commande Creer cle donnees.

Si une clé de chiffrement des données valide est fournie, elle est ajoutée à keyChain dans la mémoire et active le mode chiffrement :

  • toutes les modifications de données apportées dans des tables chiffrables sont chiffrées sur le disque (fichiers .4DD, .journal. 4Dindx)
  • toutes les données chargées à partir de tables chiffrables sont déchiffrées dans la mémoire

 

Résultat

Le résultat de la commande est décrit dans l'objet retourné :

PropriétéTypeDescription
successBooléenVrai si la clé de chiffrement fournie correspond aux données chiffrées, sinon Faux
Les propriétés ci-dessous sont retournées uniquement si success est mis à FAUX
statusNumériqueCode d'erreur (4 si la clé de chiffrement fournie est mauvaise)
statusTextTexteMessage d'erreur
errorsCollectionPile d'erreurs. La première erreur possède l'indice le plus élevé
[ ].componentSignatureTexteNom du composant interne
[ ].errCodeNumériqueNuméro de l'erreur
[ ].messageTexteMessage d'erreur

Si aucun paramètre phraseSecrèteCour ou cléDonnéesCour n'est fourni, dataStore.provideDataKey( ) retourne null (aucune erreur n'est générée).

Exemple  

 C_OBJET($keyStatus)
 C_TEXTE($passphrase)
 
 $passphrase:=Demander("Saisissez la phrase secrète")
 Si(OK=1)
    $keyStatus:=ds.provideDataKey($passphrase)
    Si($keyStatus.success)
       ALERTE("Vous avez fourni une clé de chiffrement valide")
    Sinon
       ALERTE("Vous n'avez pas fourni une clé de chiffrement valide, vous ne pourrez pas utiliser des données chiffrées")
    Fin de si
 Fin de si



Voir aussi  

4D Blog - New 4D commands to work with encrypted data
Chiffrer fichier donnees
Creer cle donnees
Statut chiffrement donnees

 
PROPRIÉTÉS 

Produit : 4D
Thème : ORDA - DataStore
Nom intl. : dataStore.provideDataKey( )

Commande(s) éligible(s) à l'exécution dans un process préemptif

 
PAGE CONTENTS 
 
HISTORIQUE 

Créé : 4D v17 R5

 
UTILISATION DE L'ARTICLE

4D - Langage ( 4D v18)
4D - Langage ( 4D v18.4)
4D - Langage ( 4D v18.6)