Dies ist die alte 4D Dokumentations-Website. Die neue und aktualisierte Dokumentation finden Sie unter developer.4d.com

Home

 
4D v18.4
dataStore.provideDataKey( )

dataStore.provideDataKey( ) 


 

dataStore.provideDataKey ( curPassPhrase | curDataKey ) -> Funktionsergebnis 
Parameter Typ   Beschreibung
curPassPhrase | curDataKey  Text, Objekt in Aktuelle Passphrase (Text) oder aktueller Datenschlüssel (Objekt)
Funktionsergebnis  Objekt in Ergebnis des passenden Verschlüsselungscode

Die Methode dataStore.provideDataKey( ) liefert einen Schlüssel zur Datenverschlüsselung der aktuellen Datendatei des Datastore und prüft, ob der Schlüssel zu den verschlüsselten Daten passt. Sie lässt sich beim Öffnen einer verschlüsselten Anwendung verwenden oder beim Ausführen einer Verschlüsselungsoperation, für die ein Verschlüsselungscode erforderlich ist, wie z.B. erneutes Verschlüsseln der Datendatei.

Hinweise:

  • dataStore.provideDataKey( ) muss in einer verschlüsselten Anwendung aufgerufen werden. Beim Aufrufen in einer unverschlüsselten Anwendung wird der Fehler 2003 zurückgegeben (Der Verschlüsselungscode stimmt nicht mit der Datendatei überein). Mit dem Befehl Data file encryption status können Sie feststellen, ob die Anwendung verschlüsselt ist.
  • dataStore.provideDataKey( ) lässt sich nicht von einem remote 4D oder einem verschlüsselten remote Datastore aufrufen.

Sie übergeben den Parameter curPassPhrase oder curDataKey, der zur Anwendung passt:

  • curPassPhrase: String zum Generieren des Schlüssels zur Datenverschlüsselung. Mit diesem Parameter wird ein Verschlüsselungscode erzeugt.
  • curDataKey: Objekt (mit der Eigenschaft encodedKey) mit dem Schlüssel zur Datenverschlüsselung. Dieser Schlüssel muss zuvor mit dem Befehl New data key erstellt worden sein.

Wird ein gültiger Schlüssel zur Datenverschlüsselung geliefert, wird er zu dem Schlüsselbund (keyChain) im Hauptspeicher hinzugefügt und der Verschlüsselungsmodus wird aktiviert:

  • Alle Änderungen an Daten in verschlüsselbaren Tabellen werden auf der Festplatte verschlüsselt (Dateien .4DD, .journal, .4Dindx)
  • Alle aus verschlüsselbaren Tabellen geladenen Daten werden im Hauptspeicher entschlüsselt

 

Ergebnis

Das zurückgegebene Objekt beschreibt das Befehlsergebnis:

EigenschaftTypBeschreibung
successBooleanWahr, wenn der gelieferte Verschlüsselungscode zu den verschlüsselten Daten passt. Sonst Falsch
Die folgenden Eigenschaften werden nur zurückgegeben, wenn success = FALSE
statusZahlFehlercode (4, wenn der gelieferte Verschlüsselungscode falsch ist)
statusTextTextFehlermeldung
errorsCollectionFehlerstapel. Der erste Fehler hat den höchsten Index
[ ].componentSignatureTextInterner Name der Komponente
[ ].errCodeZahlFehlernummer
[ ].messageTextFehlermeldung

Ist kein currentPassphrase oder currentDataKey vorgegeben, gibt dataStore.provideDataKey( ) null zurück (es wird kein Fehler generiert).

 C_OBJECT($keyStatus)
 C_TEXT($passphrase)
 
 $passphrase:=Request("Enter the passphrase")
 If(OK=1)
    $keyStatus:=ds.provideDataKey($passphrase)
    If($keyStatus.success)
       ALERT("You have provided a valid encryption key")
    Else
       ALERT("You have provided an invalid encryption key, you will not be able to work with encrypted data")
    End if
 End if



Siehe auch 

4D Blog - New 4D commands to work with encrypted data
Data file encryption status
Encrypt data file
New data key

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: ORDA - DataStore

Dieser Befehl kann in preemptive Prozessen laufen

 
SEITENINHALT 
 
GESCHICHTE 

Erstellt: 4D v17 R5

 
ARTIKELVERWENDUNG

4D Programmiersprache ( 4D v18)
4D Programmiersprache ( 4D v18.4)
4D Programmiersprache ( 4D v18.6)