Enterprise Encryption
の関数は、プラグインディレクトリ
(plugin_dir
システム変数で名前が指定されたディレクトリ)
にインストールされたユーザー定義関数 (UDF)
ライブラリファイルに配置されています。UDF
ライブラリのベース名は
openssl_udf
であり、サフィクスはプラットフォームに依存します。たとえば、ファイル名は
Linux では openssl_udf.so
、Windows
では openssl_udf.dll
です。
ライブラリファイルから関数をインストールするには、CREATE
FUNCTION
ステートメントを使用します。ライブラリからすべての関数をロードするには、次のステートメントセットを使用します
(必要に応じて、ファイル名サフィクスを調整します)。
CREATE FUNCTION asymmetric_decrypt RETURNS STRING
SONAME 'openssl_udf.so';
CREATE FUNCTION asymmetric_derive RETURNS STRING
SONAME 'openssl_udf.so';
CREATE FUNCTION asymmetric_encrypt RETURNS STRING
SONAME 'openssl_udf.so';
CREATE FUNCTION asymmetric_sign RETURNS STRING
SONAME 'openssl_udf.so';
CREATE FUNCTION asymmetric_verify RETURNS INTEGER
SONAME 'openssl_udf.so';
CREATE FUNCTION create_asymmetric_priv_key RETURNS STRING
SONAME 'openssl_udf.so';
CREATE FUNCTION create_asymmetric_pub_key RETURNS STRING
SONAME 'openssl_udf.so';
CREATE FUNCTION create_dh_parameters RETURNS STRING
SONAME 'openssl_udf.so';
CREATE FUNCTION create_digest RETURNS STRING
SONAME 'openssl_udf.so';
一度インストールすれば、何回サーバーを再起動しても
UDF はインストールされたままです。UDF
をアンロードするには、DROP
FUNCTION
ステートメントを使用します。たとえば、鍵生成の関数をアンロードするには、次のように実行します。
DROP FUNCTION create_asymmetric_priv_key;
DROP FUNCTION create_asymmetric_pub_key;
CREATE
FUNCTION
および
DROP
FUNCTION
ステートメントでは、関数名を小文字で指定する必要があります。これは、大文字と小文字のどちらでも使用できる関数の呼び出し時での使用とは異なります。
mysql
データベースの場合、CREATE
FUNCTION
および
DROP
FUNCTION
ステートメントでは、それぞれ
INSERT
および
DROP
権限が必要です。