4D v18

dataStore.provideDataKey( )

ホーム

 
4D v18
dataStore.provideDataKey( )

dataStore.provideDataKey( )  


 

説明  

dataStore.provideDataKey( ) メソッドは、データストアのカレントデータファイルのデータ暗号化キーを受け取り、暗号化されたデータと合致するかどうかチェックします。このコマンドは暗号化されたデータベースを開く時や、例えばデータファイルの再暗号化など暗号化キーが必要となる暗号化オペレーションを実行する際などに使用します。

注:

  • dataStore.provideDataKey( ) メソッドは暗号化されたデータベース内で呼び出される必要があります。暗号化されていないデータベース内で呼び出された場合、エラー2003 (暗号化キーはデータと合致しません)が返されます。データベースが暗号化されているかどうかを調べるためにはData file encryption status コマンドを使用して下さい。
  • dataStore.provideDataKey( ) メソッドは、リモートの4D から呼び出すことはできません。

引数としては、データベースに合致するcurPassPhrase または curDataKey を渡します:

  • curPassPhrase: データ暗号化キーを生成するのに使用した文字列(パスフレーズ)。この引数を使用した場合、暗号化キーは無視されます。
  • curDataKey: (encodedKey プロパティに)データ暗号化キーを格納しているオブジェクト。このキーはNew data key コマンドで生成された可能性がありあます。

有効な暗号化キーが提供された場合、そのキーはメモリ内のkeyChain に追加され、暗号化モードが有効になります:

  • 暗号化可能テーブルでの全てのデータ編集は、ディスク上(.4DD ファイル、ログファイル、. 4Dindx ファイル)では暗号化されます。
  • 暗号化可能テーブルから読み出した全てのデータは、メモリ内では復号化されます。

 

戻り値

コマンドの実行結果は、詳細な説明を格納したオブジェクトという形で返されます:

プロパティ詳細
successブール提供された暗号化キーが暗号化されたデータと合致すればTrue、それ以外の場合にはFalse
以下のプロパティは、success プロパティがFALSE であった場合にのみ返されます。
status数値エラーコード(提供された暗号化キーが間違っていた場合には4)
statusTextテキストエラーメッセージ
errorsコレクションエラーのスタック。最初のエラーに最も高いインデックスが割り当てられます。
[ ].componentSignatureテキスト内部コンポーネント名
[ ].errCodeNumberエラー番号
[ ].messageTextエラーメッセージ

curPassphrase および curDataKey のどちらの引数も渡されなかった場合、dataStore.provideDataKey( ) はnull を返します(この場合エラーは生成されません)。

例題  

 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



参照 


Data file encryption status
Encrypt data file
New data key

 
プロパティ 

プロダクト: 4D
テーマ: ORDA - データストア

This command can be run in preemptive processes

 
ページの目次 
 
履歴 

 
ARTICLE USAGE

ランゲージリファレンス ( 4D v18)