暗号化されたフィールド
セルフホストとPaaSのみ
ライフレイ 7.4 U72+/GA72+
Liferay は、機密性の高いユーザーデータを保存するための暗号化フィールド タイプを提供します。 暗号化されたフィールドを使用するには、まずポータルのプロパティに暗号化アルゴリズムとキーを追加します。 次に、オブジェクト定義に暗号化されたフィールドを追加します。 データが暗号化されると、復号化キーを持つユーザーのみがそれを読み取ることができます。
暗号化されたフィールドには文字列値が保存され、画像やファイル タイプの暗号化には使用できません。 暗号化されたフィールドでは、フィルタリング、並べ替え、インデックス作成はサポートされていません。 さらに、フィールド暗号化は プロキシ オブジェクト定義では使用できません。
暗号化アルゴリズムとキーの追加
オブジェクトの暗号化アルゴリズムとキーを使用するには、次のプロパティを portal-ext.properties ファイルに追加する必要があります。
object.encryption.algorithm=[value]
object.encryption.key=[value]
サポートされているアルゴリズムの値には、 AES、 Blowfish、および DESが含まれます。 暗号化キーの値には base64 エンコードを使用する必要があります。 以下に例を示します。
object.encryption.algorithm=AES
object.encryption.key=D9z5Rwxkn+8SctNWW/q/OA==
暗号化されたフィールドの追加
-
グローバル メニュー (
) を開き、 コントロール パネル タブに移動して、 オブジェクトをクリックします。 -
目的のオブジェクト定義の編集を開始します。
-
フィールド タブに移動し、 追加 (
) をクリックします。 -
ラベル と フィールド名を入力します。
-
暗号化された フィールド タイプを選択します。
-
フィールドが必須かどうかを決定します。
-
[保存]をクリックします。
注暗号化アルゴリズムとキーがないと、暗号化されたフィールドを保存することはできません。
このフィールドを使用して、暗号化された文字列値を保存できます。 必要に応じて、フィールドで許可される文字数を制限するように設定できます。
暗号化されたデータへのアクセス
暗号化されたフィールド値を読み取ることができるのは、復号化キーを持つユーザーのみです。 Liferay インスタンスに有効な暗号化キーがある場合、承認されたユーザーは Liferay UI または REST API を介してフィールドのデータを表示およびエクスポートできます。 ただし、暗号化キーが紛失したり無効になったりすると、ユーザーは暗号化されたフィールドを持つオブジェクト定義のエントリにアクセスしたりエクスポートしたりできなくなります。 試行されると、Liferay は 400 エラーを返し、有効な暗号化キーを挿入するか、オブジェクトの暗号化されたフィールドを削除してエントリを回復するようにユーザーに指示します。
キーを紛失するとデータが失われる可能性があります。 暗号化キーは慎重に管理してください。 データとキーがバックアップされ、安全な場所に保管されていることを確認するのはお客様の責任です。