以下の引数が与えられます。
引数の値 | 備考 | |
---|---|---|
第1引数 | decrypt | 固定 |
第2引数 | --keyid | 固定 |
第3引数 | keyid | 可変。pgx_declare_external_master_key関数で指定された鍵IDが渡されます |
第4引数以降 | extraarg | 鍵管理システム接続情報ファイルのextra-argsに指定した値があれば、それが指定された順番で渡されます |
以下の環境変数が与えられます。
環境変数の名前 | 環境変数の値 | 備考 |
---|---|---|
TDE_KMS_SECRET | KMSシークレット | キーストアのオープンのためにFujitsu Enterprise Postgresに入力した文字列です |
コマンドは以下の復帰値で終了します。
復帰値 | 条件 |
---|---|
0 | 処理が正常に終了した場合 |
0以外 | 処理が正常終了しなかった場合 |
プラグインに対してデータは以下の方法で受渡されます。またプラグインは以下の方法で結果を返却します。
区分 | データの内容 | 受渡しの方法 | 備考 |
---|---|---|---|
入力 | 復号対象のデータ | プラグインの標準入力 | そのままの形式(Base64エンコードなどではありません) |
入力 | 鍵ID | 引数 | |
入力 | 暗号化パラメタ | - | Fujitsu Enterprise Postgresからは渡されない |
出力 | 復号結果 | プラグインの標準出力 | そのままの形式(Base64エンコードなどではありません) |
出力 | 処理のステータス | プラグインの復帰コード | |
出力 | メッセージ | プラグインの標準エラー出力 | 印字可能であることが期待されます |
マスタ暗号化キーによる復号が必要な際に呼び出されます。
与えられた暗号化データを指定された鍵IDで識別される暗号化キーで復号し、その結果を返却します。
復号結果のデータが漏洩しないように実装してください。例えば、平文である復号結果のデータをファイルに一時的にでも保存することには漏洩のリスクがあります。
復号時に暗号化時と同じ暗号化パラメタが必要な場合、それを保証するのはプラグインの責任です。Fujitsu Enterprise Postgresは復号時、暗号化時と同じ鍵IDと暗号化結果として受け取った暗号化されたデータをプラグインに渡すことだけを保証します。
復号対象のデータは、暗号化要求に対してプラグインが返却したデータがそのまま渡されます。