暗号化されたデータを扱うための新しい4Dコマンド

Deeplからの自動翻訳

前回の記事では、データファイルの暗号化を始める方法について説明しました。今回は、暗号化されたデータファイルで作業するための追加の方法について説明します。新しい4Dコマンドです。これらのコマンドは、ほとんどの暗号化要件をサポートするように設計されており、暗号化されたソリューションを顧客に提供することができます。

HDI: データ暗号化コマンドの例

データファイルの暗号化

MSCに加え、暗号化を管理するために Encrypt data file()コマンドを使用します。

C_TEXT($folder;$passphrase)
$passphrase :=Request("Enter the passphrase")
if (OK=1)
$folder :=Encrypt data file("Macintosh HD:Users:structures:myDataBase.4DB";
"Macintosh HD:Users:data:myData.4DD";$passphrase)
// myData.4DD is not opened
End if

データ暗号化キーの言語による提供

4Dのデータ暗号化キー自動検出機能に加え、新たに provideDataKey()コマンドを利用することができます。 dsオブジェクトを使用して、開いたデータファイルにデータ暗号化キーを提供することができます。これは、暗号化されたデータへのアクセスを制御するために、独自のユーザーインターフェイスを構築する際に便利です。

一方 dsはORDAの機能ですが provideDataKey()コマンドは、ORDA とクラシック 4D の両方のコードで有効です。

C_OBJECT($keyStatus)
C_TEXT ($passphrase)
$passphrase :=Request("Enter the passphrase")
if (OK=1)
$keyStatus :=ds.provideDataKey($passphrase)If ($keyStatus.success)
ALERT ("You have offered a valid encryption key")
Else
ALERT ("You were provided an invalid encryption key.") ("暗号化キーが正しくありません")
(パスワードは暗号化されています) (パスワードが正しくありません) (パスワードが正しくありません) (暗号化されています) 暗号化されたデータへのアクセスは拒否されます。")
End if
End if

暗号化状態を取得する

この新しい encryptionStatus()コマンドは dsオブジェクトで使用できます。これは、開いたデータファイルが暗号化されているかどうか、有効なデータ暗号化キーが提供されているかどうかをチェックします。

C_OBJECT($status;$provideStatus)
C_TEXT ($passphrase)
$status :=ds.encryptionStatus()
Case of
: (Not($status.isEncrypted))
ALERT("データは暗号化されていません")
:(($status.isEncrypted) & (Not($status.keyProvided))
ALERT ("データは暗号化されており、有効な暗号化キーが提供
されていません。暗号化されたデータへのアクセスは拒否されます")
: (($status.isEncrypted) & ($status.keyProvided))
ALERT("データは暗号化されており、暗号化キーはすでに提供されています。暗号化されたデータへのアクセスを許可します")
End case

その他のコマンド

未開封のDATAファイルの状態

この Data file encryption status()コマンドは、指定された未開封のデータファイルの暗号化ステータスを返します。これにより、データファイルを開く前に、暗号化の状態を確認することができます。

新しいデータキー()

このコマンドは New data key()コマンドは、指定されたパスフレーズからバイナリデータ暗号化キーを生成します。4Dは、データファイルを開く際に、接続されたデバイスの有効なデータ暗号化キーを自動的に検索しますので、このコマンドを使用すると、独自のバイナリデータ暗号化キーを生成して、ファイルに書き込むことができます。

データ鍵の発見

データファイルを開く前に、データ暗号化キーの入ったデバイスを接続するのを忘れた場合は Discover data key()コマンドを使用してキーを提供することができます。

データ・キーの登録()

データファイルを開くたびにデータ暗号化キーを入力する必要がないようにするために Register data key()コマンドを使用して、4Dキーチェーンに追加することができます。

アクションのコマンド

上記のHDIは、このブログ記事で紹介したすべてのコマンドをデモしており、自分のデータベースでどのように使うか、具体例を交えて概要を説明しています。

Avatar
- プロダクトオーナー - Marie-Sophie Landrieu-Yvertは、2017年にプロダクトオーナーとして4Dプロダクトチームに参加しました。プロダクトオーナーとして、彼女はユーザーストーリー(ユーザーが期待する新機能とその使用法)を書き、それを具体的な機能仕様に変換する役割を担っています。また彼女の役割は、実装された機能が顧客のニーズを満たしているかどうかを確認することでもあります。彼女は1995年にESIGELEC Engineering Schoolを卒業し、IBMでエンジニアとしてのキャリアをスタートさせました。様々なプロジェクト(保守や新規のプロジェクト)に参加し、Cobolのデベロッパーとして働きました。その後、UMLデザイナーおよびJavaデベロッパーとして勤務。最近は、機能要件の分析・記述、ビジネスチームと開発チームの調整などを主に担当しています。