MySQL 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 asymmetric_decrypt;
DROP FUNCTION asymmetric_derive;
DROP FUNCTION asymmetric_encrypt;
DROP FUNCTION asymmetric_sign;
DROP FUNCTION asymmetric_verify;
DROP FUNCTION create_asymmetric_priv_key;
DROP FUNCTION create_asymmetric_pub_key;
DROP FUNCTION create_dh_parameters;
DROP FUNCTION create_digest;
CREATE FUNCTION
および DROP FUNCTION
ステートメントでは、関数名を小文字で指定する必要があります。 これは、大文字と小文字のどちらでも使用できる関数の呼び出し時での使用とは異なります。
mysql
データベースの場合、CREATE FUNCTION
および DROP FUNCTION
ステートメントでは、それぞれ INSERT
および DROP
権限が必要です。