keyring_oci
プラグインは、商用製品である MySQL Enterprise Edition に含まれている拡張機能です。 商用製品の詳細は、https://www.mysql.com/products/ を参照してください。
keyring_oci
プラグインは、バックエンドストレージのために Oracle Cloud Infrastructure Vault と通信するキーリングプラグインです。 キー情報は、MySQL サーバーのローカル記憶域に永続的に格納されません。 すべてのキーは Oracle Cloud Infrastructure Vault に格納されるため、このプラグインは Oracle Cloud Infrastructure MySQL 顧客の MySQL Enterprise Edition キーの管理に適しています。
keyring_oci
プラグインは、標準の MySQL キーリングサービスインタフェースを構成する関数をサポートしています。 これらの関数によって実行されるキーリング操作には、次の 2 つのレベルでアクセスできます:
SQL インタフェース: SQL ステートメントで、セクション6.4.4.10「汎用キーリングキー管理関数」 で説明されているユーザー定義関数 (UDF) をコールします。
C インタフェース: C 言語コードでは、セクション5.6.8.2「キーリングサービス」 で説明されているキーリングサービス関数をコールします。
例 (UDF を使用):
SELECT keyring_key_generate('MyKey', 'AES', 32);
SELECT keyring_key_remove('MyKey');
keyring_oci
で許可されるキータイプの詳細は、セクション6.4.4.8「サポートされているキーリングキーのタイプと長さ」 を参照してください。
keyring_oci
プラグインをインストールするには、セクション6.4.4.1「キーリングプラグインのインストール」 にある一般的なキーリングのインストール手順と、ここにある keyring_oci
に固有の構成情報を使用します。 プラグイン固有の構成には、Oracle Cloud Infrastructure リソースの名前または値を示す多数のシステム変数の設定が含まれます。
Oracle Cloud Infrastructure の概念に精通していることを前提としていますが、keyring_oci
プラグインで使用するリソースを設定する際に次のドキュメントが役立つ場合があります:
keyring_oci
プラグインは、次のテーブルに示す構成パラメータをサポートしています。 これらのパラメータを指定するには、対応するシステム変数に値を割り当てます。
構成パラメータ | システム変数 | 必須 |
---|---|---|
ユーザー OCID | keyring_oci_user |
はい |
テナンシ OCID | keyring_oci_tenancy |
はい |
コンパートメント OCID | keyring_oci_compartment |
はい |
ボールト OCID | keyring_oci_virtual_vault |
はい |
マスターキー OCID | keyring_oci_master_key |
はい |
暗号化サーバーエンドポイント | keyring_oci_encryption_endpoint |
はい |
キー管理サーバーエンドポイント | keyring_oci_management_endpoint |
はい |
ボールトサーバーエンドポイント | keyring_oci_vaults_endpoint |
はい |
シークレットサーバーエンドポイント | keyring_oci_secrets_endpoint |
はい |
RSA 秘密キーファイル | keyring_oci_key_file |
はい |
RSA 秘密キーのフィンガープリント | keyring_oci_key_fingerprint |
はい |
CA 証明書バンドルファイル | keyring_oci_ca_certificate |
いいえ |
サーバーの起動プロセス中に使用できるようにするには、--early-plugin-load
オプションを使用して keyring_oci
をロードする必要があります。 前述のテーブルに示されているように、プラグイン関連のいくつかのシステム変数は必須であり、設定する必要もあります:
-
Oracle Cloud Infrastructure では、Oracle Cloud ID (OCID) を広範囲に使用してリソースを指定し、いくつかの
keyring_oci
パラメータでは、使用するリソースの OCID 値を指定します。 したがって、keyring_oci
プラグインを使用する前に、次の前提条件を満たす必要があります:Oracle Cloud Infrastructure に接続するためのユーザーが存在する必要があります。 必要に応じてユーザーを作成し、ユーザー OCID を
keyring_oci_user
システム変数に割り当てます。使用する Oracle Cloud Infrastructure テナンシ、テナンシ内の MySQL コンパートメントおよびコンパートメント内のボールトが存在する必要があります。 必要に応じてこれらのリソースを作成し、ユーザーが使用できるようになっていることを確認します。 テナンシ、コンパートメントおよびボールトの OCID を
keyring_oci_tenancy
、keyring_oci_compartment
およびkeyring_oci_virtual_vault
システム変数に割り当てます。暗号化用のマスターキーが存在する必要があります。 必要に応じて OCID を作成し、
keyring_oci_master_key
システム変数に割り当てます。
複数のサーバーエンドポイントを指定する必要があります。 これらのエンドポイントはボールト固有であり、Oracle Cloud Infrastructure によってボールト作成時に割り当てられます。 ボールトの詳細ページから値を取得し、
keyring_oci_encryption_endpoint
,keyring_oci_management_endpoint
,keyring_oci_vaults_endpoint
およびkeyring_oci_secrets_endpoint
システム変数に割り当てます。Oracle Cloud Infrastructure API では、RSA 秘密キーと公開キーのペアを認証に使用します。 このキーペアを作成してキーフィンガープリントを取得するには、「必要なキーおよび OCID」の手順を使用します。 秘密キーファイル名とキーフィンガープリントを
keyring_oci_key_file
およびkeyring_oci_key_fingerprint
システム変数に割り当てます。
必須のシステム変数に加えて、ピア認証用の認証局 (CA) 証明書バンドルファイルを指定するように keyring_oci_ca_certificate
をオプションで設定できます。
Oracle Cloud Infrastructure コンソールからパラメータをコピーする場合、コピーされた値に初期 https://
部分が含まれている可能性があります。 対応する keyring_oci
システム変数を設定する場合は、その部分を省略します。
たとえば、keyring_oci8
をロードして構成するには、サーバーの my.cnf
ファイルで次の行を使用します (必要に応じて、プラットフォームの .so
接尾辞とファイルの場所を調整します):
[mysqld]
early-plugin-load=keyring_oci.so
keyring_oci_user=ocid1.user.oc1..longAlphaNumericString
keyring_oci_tenancy=ocid1.tenancy.oc1..longAlphaNumericString
keyring_oci_compartment=ocid1.compartment.oc1..longAlphaNumericString
keyring_oci_virtual_vault=ocid1.vault.oc1.iad.shortAlphaNumericString.longAlphaNumericString
keyring_oci_master_key=ocid1.key.oc1.iad.shortAlphaNumericString.longAlphaNumericString
keyring_oci_encryption_endpoint=shortAlphaNumericString-crypto.kms.us-ashburn-1.oraclecloud.com
keyring_oci_management_endpoint=shortAlphaNumericString-management.kms.us-ashburn-1.oraclecloud.com
keyring_oci_vaults_endpoint=vaults.us-ashburn-1.oci.oraclecloud.com
keyring_oci_secrets_endpoint=secrets.vaults.us-ashburn-1.oci.oraclecloud.com
keyring_oci_key_file=file_name
keyring_oci_key_fingerprint=12:34:56:78:90:ab:cd:ef:12:34:56:78:90:ab:cd:ef
keyring_oci
プラグイン固有のシステム変数の詳細は、セクション6.4.4.13「キーリングシステム変数」 を参照してください。
keyring_oci
プラグインは実行時再構成をサポートしておらず、そのシステム変数は実行時に変更できません。 構成パラメータを変更するには、次のようにします:
my.cnf
ファイルのパラメータ設定を変更するか、mysqld-auto.conf
に永続化されるパラメータにSET PERSIST_ONLY
を使用します。サーバーを再起動します。