ADMINISTER KEY MANAGEMENT
目的
ADMINISTER
KEY
MANAGEMENT
文は、透過的データ暗号化のための統合されたキー管理インタフェースを提供します。この文は、次の目的に使用できます。
-
ソフトウェア・キーストアおよびハードウェア・キーストアの管理
-
暗号化キーの管理
-
シークレットの管理
前提条件
ADMINISTER
KEY
MANAGEMENT
システム権限、またはSYSKM
システム権限が必要です。
CONTAINER
句を指定する場合は、マルチテナント・コンテナ・データベース(CDB)に接続している必要があります。CONTAINER
=
ALL
を指定するには、現在のコンテナがルートである必要があります。また、共通に付与されているADMINISTER
KEY
MANAGEMENT
またはSYSKM
権限が必要です。
構文
administer_key_management::=
(keystore_management_clauses::=、key_management_clauses::=、secret_management_clauses::=)
keystore_management_clauses::=
(create_keystore::=、open_keystore::=、close_keystore::=、backup_keystore::=、alter_keystore_password::=、merge_into_new_keystore::=、merge_into_existing_keystore::=)
create_keystore::=
open_keystore::=
close_keystore::=
backup_keystore::=
alter_keystore_password::=
merge_into_new_keystore::=
merge_into_existing_keystore::=
isolate_keystore::=
unite_keystore ::=
key_management_clauses::=
(set_key::=、create_key::=、use_key::=、set_key_tag::=、export_keys::=、import_keys::=、migrate_key::=、reverse_migrate_key::=)
set_key::=
create_key::=
use_key::=
set_key_tag::=
export_keys::=
import_keys::=
migrate_key::=
reverse_migrate_key::=
move_keys ::=
secret_management_clauses::=
add_update_secret::=
delete_secret::=
セマンティクス
keystore_management_clauses
これらの句を使用して、次のキーストア管理操作を実行できます。
-
ソフトウェア・キーストアの作成
-
ソフトウェア・キーストアまたはハードウェア・キーストアのオープンとクローズ
-
パスワードで保護されたソフトウェア・キーストアのバックアップ
-
パスワードで保護されたソフトウェア・キーストアのパスワードの変更
-
2つの既存のソフトウェア・キーストアの、パスワードで保護された新しいソフトウェア・キーストアへのマージ
-
1つの既存のソフトウェア・キーストアの、パスワードで保護された既存のソフトウェア・キーストアへのマージ
-
プラガブル・データベース(PDB)で固有のキーストアを管理できるようにするための、コンテナ・データベース(CDB)からのPDBのキーストアの分離
-
CDBとのPDBのキーストアの統合
create_keystore
この句を使用して、パスワードで保護されたソフトウェア・キーストアと自動ログイン・ソフトウェア・キーストアの2種類のソフトウェア・キーストアを作成できます。この句をマルチテナント環境で発行するには、ルートに接続する必要があります。
CREATE KEYSTORE
パスワードで保護されたソフトウェア・キーストアを作成するには、この句を指定します。
-
keystore_location
には、ソフトウェア・キーストア・ディレクトリのフルパス名を指定します。キーストアは、このディレクトリにewallet.p12
という名前のファイルで作成されます。WALLET_ROOT
パラメータが設定されている場合、この句はオプションです。ご使用のシステムのソフトウェア・キーストア・ディレクトリを確認する方法を学習するには、『Oracle Database Advanced Securityガイド』を参照してください。 -
IDENTIFIED
BY
句を使用すると、キーストアのパスワードを設定できます。詳細は、「キーストア・パスワードを指定するときのノート」を参照してください。
CREATE [ LOCAL ] AUTO_LOGIN KEYSTORE
自動ログイン・ソフトウェア・キーストアを作成するには、この句を指定します。自動ログイン・ソフトウェア・キーストアは、パスワードで保護された既存のソフトウェア・キーストアから作成されます。自動ログイン・キーストアは、システム生成のパスワードを保持します。これは、パスワードで保護されたソフトウェア・キーストアと同じディレクトリにある、cwallet.sso
という名前のPKCS#12ベースのファイルに格納されます。
-
デフォルトでは、Oracleが作成する自動ログイン・キーストアは、このキーストアが格納されているコンピュータ以外のコンピュータからも開けるようになります。
LOCAL
キーワードを指定すると、Oracle Databaseによりローカルの自動ログイン・キーストアが作成されますが、そのキーストアはそれが格納されているコンピュータからのみ開けます。 -
keystore_location
には、パスワードで保護された既存のソフトウェア・キーストアが格納されているディレクトリのフルパス名を指定します。パスワードで保護されたソフトウェア・キーストアは、開いていても閉じていてもかまいません。 -
IDENTIFIED
BY
句を使用すると、パスワードで保護された既存のソフトウェア・キーストアにパスワードを指定できます。詳細は、「キーストア・パスワードを指定するときのノート」を参照してください。
キーストアの作成の制限事項
ローカルであるかどうかにかかわらず、パスワードで保護されたソフトウェア・キーストアと自動ログイン・ソフトウェア・キーストアは、どちらも1つのディレクトリ内に1つまで作成できます。
関連項目:
ソフトウェア・キーストアの作成の詳細は、『Oracle Database Advanced Securityガイド』を参照してください。
open_keystore
この句を使用すると、パスワードで保護されたソフトウェア・キーストアまたはハードウェア・キーストアを開くことができます。
ノート:
自動ログイン・ソフトウェア・キーストアとローカルの自動ログイン・ソフトウェア・キーストアを開くために、この句を使用する必要はありません。これらのキーストアは、マスター暗号化キーへのアクセスにより自動的に開かれます。
-
FORCE
KEYSTORE
句は、PDBでキーストアを開く場合に役立ちます。これにより、確実にPDBキーストアを開く前にCDBルート・キーストアが開きます。詳細は、「FORCE KEYSTORE句のノート」を参照してください。 -
IDENTIFIED
BY
句を使用すると、キーストアのパスワードを指定できます。詳細は、「キーストア・パスワードを指定するときのノート」を参照してください。 -
CONTAINER
句は、CDBに接続しているときに適用されます。現在のコンテナがプラガブル・データベース(PDB)である場合は、
CONTAINER
=
CURRENT
を指定すると、PDBでキーストアが開きます。PDBでキーストアを開く前に、ルートでキーストアが開かれている必要があります。現在のコンテナがルートである場合は、
CONTAINER
=
CURRENT
を指定すると、ルートでキーストアが開き、CONTAINER
=
ALL
と指定すると、ルートとすべてのPDBでキーストアが開きます。この句を省略すると、
CONTAINER
=
CURRENT
がデフォルトになります。
関連項目:
-
Oracle Database Advanced Securityガイド 統一モードでのキーストアおよびTDEマスター暗号化キーの管理
-
Oracle Database Advanced Securityガイド 分離モードでのキーストアおよびTDEマスター暗号化キーの管理
-
パスワードベースのソフトウェア・キーストアとハードウェア・キーストアを開く方法の詳細は、『Oracle Database Advanced Securityガイド』を参照してください。
close_keystore
この句を使用すると、パスワードで保護されたソフトウェア・キーストア、自動ログイン・ソフトウェア・キーストアまたはハードウェア・キーストアを閉じることができます。キーストアを閉じると、すべての暗号化操作と復号化操作が無効になります。データを暗号化または復号化しようとしたり、暗号化データにアクセスしようとすると、エラーが発生します。
-
パスワードで保護されたソフトウェア・キーストアまたはハードウェア・キーストアを閉じるには、
IDENTIFIED
BY
句を指定します。詳細は、「キーストア・パスワードを指定するときのノート」を参照してください。 -
自動ログイン・キーストアを閉じる場合は、
IDENTIFIED
BY
句を指定しないでください。自動ログイン・キーストアを閉じる前に、V$ENCRYPTION_WALLET
ビューのWALLET_TYPE
列を確認してください。AUTOLOGIN
が戻されたら、キーストアを閉じることができます。そうしないと、キーストアを閉じようとするとエラーが発生します。 -
CONTAINER
句は、CDBに接続しているときに適用されます。現在のコンテナがPDBである場合は、
CONTAINER
=
CURRENT
を指定すると、PDBでキーストアが閉じます。現在のコンテナがルートである場合は、
CONTAINER
=
CURRENT
句とCONTAINER
=
ALL
句は同じ結果になり、どちらの句でもルートとすべてのPDBでキーストアが閉じます。この句を省略すると、
CONTAINER
=
CURRENT
がデフォルトになります。
関連項目:
キーストアを閉じる方法の詳細は、『Oracle Database Advanced Securityガイド』を参照してください。
backup_keystore
この句を使用すると、パスワードで保護されたソフトウェア・キーストアをバックアップできます。このキーストアは、開いている必要があります。
-
デフォルトでは、Oracle Databaseは、
ewallet_
timestamp
.p12
という形式の名前でバックアップ・ファイルを作成します。timestamp
は、UTC形式でのファイル作成時のタイムスタンプです。オプションのUSING
'
backup_identifier
'
句を使用すると、バックアップ・ファイルの名前に追加するバックアップ識別子を指定できます。たとえば、バックアップ識別子に'Backup1'
を指定すると、Oracle Databaseは、ewallet_
timestamp
_Backup1.p12
という形式の名前でバックアップ・ファイルを作成します。 -
FORCE
KEYSTORE
句を使用すると、キーストアが閉じている場合でも、この操作が可能になります。詳細は、「FORCE KEYSTORE句のノート」を参照してください。 -
IDENTIFIED
BY
句を使用すると、キーストアのパスワードを指定できます。詳細は、「キーストア・パスワードを指定するときのノート」を参照してください。 -
オプションの
TO
'keystore_location
'句を使用すると、バックアップ・ファイルの作成先ディレクトリを指定できます。この句を省略すると、バックアップは、キーストアがバックアップされているディレクトリに作成されます。
関連項目:
パスワードベースのソフトウェア・キーストアのバックアップ方法の詳細は、『Oracle Database Advanced Securityガイド』を参照してください。
alter_keystore_password
この句を使用すると、パスワードで保護されたソフトウェア・キーストアのパスワードを変更できます。このキーストアは、開いている必要があります。
-
FORCE
KEYSTORE
句を使用すると、キーストアが閉じている場合でも、この操作が可能になります。詳細は、「FORCE KEYSTORE句のノート」を参照してください。 -
old_keystore_password
には、キーストアの古いパスワードを指定します。new_keystore_password
には、キーストアの新しいパスワードを指定します。詳細は、「キーストア・パスワードを指定するときのノート」を参照してください。 -
オプションの
WITH
BACKUP
句を使用すると、パスワードを変更する前に、キーストアのバックアップを作成するようにデータベースに指示できます。詳細は、「WITH BACKUP句のノート」を参照してください。
関連項目:
パスワードベースのソフトウェア・キーストアのパスワード変更方法の詳細は、『Oracle Database Advanced Securityガイド』を参照してください。
merge_into_new_keystore
この句を使用すると、2つのソフトウェア・キーストアを新しい1つのキーストアにマージできます。2つの構成要素であるキーストアに含まれるキーと属性は、新しいキーストアに追加されます。構成要素であるキーストアには、パスワードベースのソフトウェア・キーストアまたは自動ログイン(ローカルの自動ログインを含む)ソフトウェア・キーストアのいずれもできます。また、それらは開いていても閉じていてもかまいません。新しいキーストアは、パスワードで保護されたソフトウェア・キーストアになります。マージが完了された時点では、閉じられた状態になります。この句に指定するキーストアは、データベースで使用するように構成されたキーストアでも、それ以外のキーストアでもかまいません。
-
keystore1_location
には、最初のキーストアが格納されているディレクトリのフルパス名を指定します。 -
IDENTIFIED
BY
keystore1_password
は、最初のキーストアがパスワードベースのソフトウェア・キーストアの場合にかぎり指定できます。詳細は、「キーストア・パスワードを指定するときのノート」を参照してください。 -
keystore2_location
には、2番目のキーストアが格納されているディレクトリのフルパス名を指定します。 -
IDENTIFIED
BY
keystore2_password
は、2番目のキーストアがパスワードベースのソフトウェア・キーストアの場合にかぎり指定できます。 -
keystore3_location
には、新しいキーストアの作成先になるディレクトリのフルパス名を指定します。 -
keystore3_password
には、新しいキーストアのパスワードを指定します。
関連項目:
ソフトウェア・キーストアのマージ方法の詳細は、『Oracle Database Advanced Securityガイド』を参照してください。
merge_into_existing_keystore
この句を使用すると、ソフトウェア・キーストアを、それ以外の既存のソフトウェア・キーストアにマージできます。マージ元のキーストアに含まれるキーと属性は、マージ先のキーストアに追加されます。マージ元のキーストアには、パスワードで保護されたソフトウェア・キーストアまたは自動ログイン(ローカルの自動ログインを含む)ソフトウェア・キーストアのいずれも選択できます。また、それらは開いていても閉じていてもかまいません。マージ先になるキーストアは、パスワードベースのソフトウェア・キーストアにする必要があります。これは、マージの開始時に開いていても閉じられていてもかまいません。ただし、マージが完了した時点では、閉じられた状態になります。この句に指定するキーストアは、データベースで使用するように構成されたキーストアでも、それ以外のキーストアでもかまいません。
-
keystore1_location
には、マージ元のキーストアが格納されているディレクトリのフルパス名を指定します。 -
IDENTIFIED
BY
keystore1_password
は、マージ元のキーストアがパスワードベースのソフトウェア・キーストアの場合にかぎり、指定できます。 -
keystore2_location
には、マージ先になるキーストアが格納されているディレクトリのフルパス名を指定します。 -
keystore2_password
には、マージ先になるキーストアのパスワードを指定します。 -
オプションの
WITH
BACKUP
句を使用すると、マージを実行する前にマージ先になるキーストアのバックアップを作成するようにデータベースに指示できます。詳細は、「WITH BACKUP句のノート」を参照してください。
関連項目:
ソフトウェア・キーストアのマージ方法の詳細は、『Oracle Database Advanced Securityガイド』を参照してください。
isolate_keystore
コンテナ・データベース(CDB)内のプラガブル・データベース(PDB)では固有のキーストアを作成および管理できます。isolate_keystore
句を使用すると、テナントで以下を行うことができます。
-
CDBのキーから独立した透過的データ暗号化キーの管理
-
独立したキーストアのパスワードの作成
CDB環境では、特定のPDBのキーが保護される方法を選択できます。PDBでは、独立したパスワードでキーを保護するか、CDBの統合されたパスワードを使用できます。
-
IDENTIFIED
BY
句を使用すると、キーストアのパスワードを指定できます。 -
isolated_keystore_password
は、PDBキーストアの独立したパスワードを示します。 -
FORCE
KEYSTORE
句を使用すると、キーストアが閉じている場合でも、この操作が可能になります。詳細は、「FORCE KEYSTORE句のノート」を参照してください。 -
united_keystore_password
は、CDBキーストアのパスワードを示します。 -
オプションの
WITH
BACKUP
句を使用すると、パスワードを変更する前に、キーストアのバックアップを作成するようにデータベースに指示できます。詳細は、「WITH BACKUP句のノート」を参照してください。
isolate_keystoreを指定したFORCE句
ADMINISTER KEY MANAGEMENT FORCE ISOLATE KEYSTORE
コマンドのFORCE
句は、分離されているマスター・キーをPDBのクローンが使用している場合に使用されます。このコマンドにより、CDBキーストアから分離されたPDBキーストアにキーがコピーされます。たとえば:
ADMINISTER KEY MANAGEMENT
FORCE ISOLATE KEYSTORE
IDENTIFIED BY <isolated_keystore_password>
FROM ROOT KEYSTORE
[FORCE KEYSTORE]
IDENTIFIED BY [EXTERNAL STORE | <united_keystore_password>]
[WITH BACKUP [USING <backup_identifier>]
unite_keystore
unite_keystore
句を使用すると、キーストアを独立して管理していたPDBのキーストア管理モードを統合モードに変更できます。統合モードでは、CDB内のPDBを管理するためにCDB$ROOT
キーストア・パスワードが使用されます。
-
IDENTIFIED
BY
句を使用すると、キーストアのパスワードを指定できます。 -
isolated_keystore_password
は、PDBキーストアの独立したパスワードを示します。 -
FORCE
KEYSTORE
句を使用すると、キーストアが閉じている場合でも、この操作が可能になります。詳細は、「FORCE KEYSTORE句のノート」を参照してください。 -
united_keystore_password
は、CDBキーストアのパスワードを示します。 -
オプションの
WITH
BACKUP
句を使用すると、パスワードを変更する前に、キーストアのバックアップを作成するようにデータベースに指示できます。詳細は、「WITH BACKUP句のノート」を参照してください。
たとえば:
ADMINISTER KEY MANAGEMENT
UNITE KEYSTORE
IDENTIFIED BY <isolated_keystore_password>
WITH ROOT KEYSTORE
[FORCE KEYSTORE]
IDENTIFIED BY [EXTERNAL STORE | <united_keystore_password>]
[WITH BACKUP [USING <backup_identifier>]
key_management_clauses
これらの句を使用して次のキー管理操作を実行できます。
-
マスター暗号化キーの作成とアクティブ化
-
暗号化キーのタグの設定
-
キーストアからファイルへの暗号化キーのエクスポート
-
ファイルからキーストアへの暗号化キーのインポート
-
パスワードで保護されたソフトウェア・キーストアからハードウェア・キーストアへの移行
-
ハードウェア・キーストアからパスワードで保護されたソフトウェア・キーストアへの移行
set_key
この句は新しいマスター暗号化キーを作成し、それをアクティブ化します。この句を使用すると、キーストア内に最初のマスター暗号化キーを作成することも、マスター暗号化キーを交換(変更)することもできます。この句を使用するときに、マスター暗号化キーがアクティブな場合は、そのキーが非アクティブ化されてから新しいマスター暗号化キーがアクティブ化されます。キーを含むキーストアは、パスワードで保護されたソフトウェア・キーストアであっても、ハードウェア・キーストアであってもかまいません。このキーストアは、開いている必要があります。
TDEマスター・キーID (MKID
)およびTDEマスター暗号化キー(MK
)に目的の値を指定して、固有のTDEマスター暗号化キーを作成してください。
MKID
またはMK
を指定しない場合、使用されるデフォルトのキーはシステム生成のMKID
およびMK
です。
-
TDEで暗号化されたデータベースでは、どのTDEマスター暗号化キーが使用中であるかを追跡するためにTDEマスター・キーID(
MKID
)が使用されます。MKID:MK
オプションを使用すると、MKID
およびMK
の両方を指定できます。 -
MK
のみを指定した場合、データベースによってMKID
が生成されるため、指定したMK
値を持つTDEマスター暗号化キーを追跡できます。 -
MKID
が無効な場合(たとえば、長さが誤っていた場合、または0(ゼロ)の文字列である場合)は、エラーORA-46685: invalid master key identifier or master key value
が表示されます。 -
指定した
MKID
がキーストア内の既存のTDEマスター暗号化キーのMKID
と同じである場合は、エラーORA-46684: master key identifier exists in the keystore
が表示されます。 -
MKID
およびMK
のいずれかが無効な場合は、エラーORA-46685: invalid master key identifier or master key value
が表示されます。 -
set_key
句とcreate_key
句の両方にMKID:MK
を指定する必要があります。 -
use_key
句の場合、指定する必要があるのはMKID
のみです。
-
ENCRYPTION
キーワードはオプションで、意味を明確化するために使用されます。 -
オプションの
USING
TAG
句を指定すると、タグを新しいマスター暗号化キーに関連付けできます。詳細は、「USING TAG句のノート」を参照してください。 -
USING
ALGORITHM
句を指定すると、指定された暗号化アルゴリズムに準拠するマスター暗号化キーが作成されます。encrypt_algorithm
には、AES256
、ARIA256
、GOST256
またはSEED128
を指定できます。この句を指定するには、COMPATIBLE
初期化パラメータが12
.2
以上に設定されている必要があります。この句を指定しない場合、AES256
がデフォルトになります。ARIA、SEEDおよびGOSTアルゴリズムは、暗号化とハッシュについての国や政府の標準です。詳細は、『Oracle Databaseセキュリティ・ガイド』を参照してください。
-
FORCE
KEYSTORE
句を使用すると、キーストアが閉じている場合でも、この操作が可能になります。詳細は、「FORCE KEYSTORE句のノート」を参照してください。 -
IDENTIFIED
BY
句を使用すると、キーストアのパスワードを指定できます。詳細は、「キーストア・パスワードを指定するときのノート」を参照してください。 -
WITH
BACKUP
句と、オプションのUSING
'
backup_identifier
'
句を指定すると、新しいマスター暗号化キーが作成される前に、キーストアのバックアップが作成されます。詳細は、「WITH BACKUP句のノート」を参照してください。 -
CONTAINER
句は、CDBに接続しているときに適用されます。現在のコンテナがPDBである場合は、
CONTAINER
=
CURRENT
を指定すると、PDBで新しいマスター暗号化キーが作成およびアクティブ化されます。PDBでマスター暗号化キーを作成する前に、ルートにマスター暗号化キーが存在する必要があります。現在のコンテナがルートの場合は、
CONTAINER
=
CURRENT
を指定すると、ルートで新しいマスター暗号化キーが作成およびアクティブ化され、CONTAINER
=
ALL
を指定すると、すべてのPDBで新しいマスター暗号化キーが作成およびアクティブ化されます。この句を省略すると、
CONTAINER
=
CURRENT
がデフォルトになります。
関連項目:
-
Oracle Database Advanced Securityガイド 統一モードでのキーストアおよびTDEマスター暗号化キーの管理
-
Oracle Database Advanced Securityガイド 分離モードでのキーストアおよびTDEマスター暗号化キーの管理
-
マスター暗号化キーの作成およびアクティブ化の詳細は、『Oracle Database Advanced Securityガイド』を参照してください。
create_key
MKID:MK
オプションの指定の詳細は、set_key
句のセマンティクスを参照してください。
この句を使用すると、後で使用するためのマスター暗号化キーを作成できます。その後で、use_key句を使用すると、このキーをアクティブ化できます。キーを含むキーストアは、パスワードで保護されたソフトウェア・キーストアであっても、ハードウェア・キーストアであってもかまいません。このキーストアは、開いている必要があります。
-
ENCRYPTION
キーワードはオプションで、意味を明確化するために使用されます。 -
オプションの
USING
TAG
句を指定すると、タグを暗号化キーに関連付けできます。詳細は、「USING TAG句のノート」を参照してください。 -
USING
ALGORITHM
句を指定すると、指定された暗号化アルゴリズムに準拠するマスター暗号化キーが作成されます。encrypt_algorithm
には、AES256
、ARIA256
、GOST256
またはSEED128
を指定できます。この句を指定するには、COMPATIBLE
初期化パラメータが12
.2
以上に設定されている必要があります。この句を指定しない場合、AES256
がデフォルトになります。ARIA、SEEDおよびGOSTアルゴリズムは、暗号化とハッシュについての国や政府の標準です。詳細は、『Oracle Databaseセキュリティ・ガイド』を参照してください。
-
FORCE
KEYSTORE
句を使用すると、キーストアが閉じている場合でも、この操作が可能になります。詳細は、「FORCE KEYSTORE句のノート」を参照してください。 -
IDENTIFIED
BY
句を使用すると、キーを作成するキーストアのパスワードを指定できます。詳細は、「キーストア・パスワードを指定するときのノート」を参照してください。 -
WITH
BACKUP
句とオプションのUSING
'
backup_identifier
'
句を指定すると、キーが作成される前に、キーストアのバックアップが作成されるようになります。詳細は、「WITH BACKUP句のノート」を参照してください。 -
CONTAINER
句は、CDBに接続しているときに適用されます。現在のコンテナがPDBである場合は、
CONTAINER
=
CURRENT
を指定すると、PDBでマスター暗号化キーが作成されます。PDBでマスター暗号化キーを作成する前に、ルートにマスター暗号化キーが存在する必要があります。現在のコンテナがルートである場合は、
CONTAINER
=
CURRENT
を指定すると、ルートでマスター暗号化キーが作成され、CONTAINER
=
ALL
を指定すると、ルートとすべてのPDBでマスター暗号化キーが作成されます。この句を省略すると、
CONTAINER
=
CURRENT
がデフォルトになります。
関連項目:
後で使用するためのマスター暗号化キーの作成方法の詳細は、『Oracle Database Advanced Securityガイド』を参照してください。
use_key
この句を使用して作成済のマスター暗号化キーをアクティブ化できます。この句を使用するときに、マスター暗号化キーがアクティブな場合は、そのキーが非アクティブ化されてから新しいマスター暗号化キーがアクティブ化されます。キーを含むキーストアは、パスワードベースのソフトウェア・キーストアであっても、ハードウェア・キーストアであってもかまいません。このキーストアは、開いている必要があります。
-
ENCRYPTION
キーワードはオプションで、意味を明確化するために使用されます。 -
key_id
には、アクティブ化するキーの識別子を指定します。キー識別子は、V$ENCRYPTION_KEYS
ビューのKEY_ID
列を問い合せることで確認できます。 -
オプションの
USING
TAG
句を指定すると、タグを暗号化キーに関連付けできます。詳細は、「USING TAG句のノート」を参照してください。 -
FORCE
KEYSTORE
句を使用すると、キーストアが閉じている場合でも、この操作が可能になります。詳細は、「FORCE KEYSTORE句のノート」を参照してください。 -
IDENTIFIED
BY
句を使用すると、キーを含むキーストアのパスワードを指定できます。詳細は、「キーストア・パスワードを指定するときのノート」を参照してください。 -
WITH
BACKUP
句とオプションのUSING
'
backup_identifier
'
句を指定すると、キーがアクティブ化される前に、キーストアのバックアップを作成するようになります。詳細は、「WITH BACKUP句のノート」を参照してください。
関連項目:
マスター暗号化キーのアクティブ化の詳細は、『Oracle Database Advanced Securityガイド』を参照してください。
set_key_tag
この句を使用してに指定された暗号化キーにタグを設定できます。タグはオプションで、キーに関するユーザー定義の記述子です。キーにタグがない場合は、この句を使用してタグを作成できます。キーにタグがある場合は、この句を使用して置き換えることができます。暗号化キーのタグは、V$ENCRYPTION_KEYS
ビューのTAG
列を問い合せることで表示できます。このキーストアは、開いている必要があります。
-
tag
には、英数字の文字列を指定します。tag
は、一重引用符(' ')で囲みます。 -
key_id
には、暗号化キーの識別子を指定します。キー識別子は、V$ENCRYPTION_KEYS
ビューのKEY_ID
列を問い合せることで確認できます。 -
FORCE
KEYSTORE
句を使用すると、キーストアが閉じている場合でも、この操作が可能になります。詳細は、「FORCE KEYSTORE句のノート」を参照してください。 -
IDENTIFIED
BY
句を使用すると、キーを含むキーストアのパスワードを指定できます。詳細は、「キーストア・パスワードを指定するときのノート」を参照してください。 -
WITH
BACKUP
句とオプションのUSING
'
backup_identifier
'
句を指定すると、キーがアクティブ化される前に、キーストアのバックアップが作成されます。詳細は、「WITH BACKUP句のノート」を参照してください。
関連項目:
キー・タグの設定の詳細は、『Oracle Database Advanced Securityガイド』を参照してください。
export_keys
この句を使用して、1つ以上の暗号化キーを、パスワードで保護されたソフトウェア・キーストアからファイルにエクスポートします。このキーストアは、開いている必要があります。各暗号化キーは、キー識別子およびキー属性とともにエクスポートされます。エクスポートされたキーは、ファイル内でパスワード(シークレット)によって保護されます。その後に、import_keys句を使用して1つ以上のキーをパスワードで保護されたソフトウェア・キーストアにインポートできます。
-
ENCRYPTION
キーワードはオプションで、意味を明確化するために使用されます。 -
secret
を指定して、ファイル内のキーを保護するパスワード(シークレット)を設定します。シークレットは英数字の文字列です。シークレットは、二重引用符で囲むこともできます。引用符の有無にかかわらず、シークレットでは大文字と小文字が区別されます。 -
filename
には、キーのエクスポート先となるファイルのフルパス名を指定します。filename
は一重引用符で囲みます。 -
FORCE
KEYSTORE
句を使用すると、キーストアが閉じている場合でも、この操作が可能になります。詳細は、「FORCE KEYSTORE句のノート」を参照してください。 -
IDENTIFIED
BY
句を使用すると、エクスポートするキーを含むキーストアのパスワードを指定できます。詳細は、「WITH BACKUP句のノート」を参照してください。 -
次のいずれかの方法により、
WITH
IDENTIFIER
IN
句を使用して、エクスポートする1つ以上の暗号化キーを指定します。-
key_id
を使用して、エクスポートする暗号化キーの識別子を指定します。key_id
を複数指定する場合は、カンマ区切りのリストにします。キー識別子は、V$ENCRYPTION_KEYS
ビューのKEY_ID
列を問い合せることで確認できます。 -
subquery
を使用して、エクスポートする暗号化キーのキー識別子のリストを戻す問合せを指定できます。たとえば、次のsubquery
は、タグがmytag
という文字列で始まるデータベース内のすべての暗号化キーのキー識別子を戻します。SELECT KEY_ID FROM V$ENCRYPTION_KEYS WHERE TAG LIKE 'mytag%'
Oracle Databaseは、
subquery
を定義者の権限ではなく現在のユーザーの権限で実行することに注意してください。 -
WITH
IDENTIFIER
IN
句を省略すると、データベース内のすべての暗号化キーがエクスポートされます。
-
WITH IDENTIFIER IN句の制限事項
マルチテナント環境では、PDBからキーをエクスポートする際にWITH
IDENTIFIER
IN
を指定できません。これによって、PDB内のすべてのキーが、アクティブな暗号化キーに関するメタデータとともに確実にエクスポートされます。その後、PDBのクローンを作成する場合や、PDBを切断して接続する場合には、エクスポート・ファイルを使用して、クローンとして作成したPDBまたは新たに接続したPDBにキーをインポートし、アクティブな暗号化キーに関する情報を保存できます。
関連項目:
暗号化キーのエクスポートの詳細は、『Oracle Database Advanced Securityガイド』を参照してください。
import_keys
この句を使用して、1つ以上の暗号化キーを、ファイルからパスワードベースのソフトウェア・キーストアにインポートします。このキーストアは、開いている必要があります。各暗号化キーは、キー識別子およびキー属性とともにインポートされます。キーは、事前にexport_keys句を使用して、ファイルにエクスポートしておく必要があります。キーストアにインポートされているキーは再インポートできません。
-
ENCRYPTION
キーワードはオプションで、意味を明確化するために使用されます。 -
secret
には、ファイル内のキーを保護するパスワード(シークレット)を指定します。シークレットは英数字の文字列です。シークレットは、二重引用符で囲むこともできます。引用符の有無にかかわらず、シークレットでは大文字と小文字が区別されます。 -
filename
には、キーのインポート元となるファイルのフルパス名を指定します。filename
は一重引用符で囲みます。 -
FORCE
KEYSTORE
句を使用すると、キーストアが閉じている場合でも、この操作が可能になります。詳細は、「FORCE KEYSTORE句のノート」を参照してください。 -
IDENTIFIED
BY
句を使用すると、キーをインポートするキーストアのパスワードを指定できます。詳細は、「WITH BACKUP句のノート」を参照してください。 -
WITH
BACKUP
句とオプションのUSING
'
backup_identifier
'
句を指定すると、キーがインポートされる前に、キーストアのバックアップが作成されます。詳細は、「WITH BACKUP句のノート」を参照してください。
関連項目:
暗号化キーのインポートの詳細は、『Oracle Database Advanced Securityガイド』を参照してください。
migrate_key
この句を使用して、パスワードで保護されたソフトウェア・キーストアからハードウェア・キーストアへ移行します。この句によって、既存の表暗号化キーおよび表領域暗号化キーが、ソフトウェア・キーストア内のマスター暗号化キーを使用して復号化され、次にハードウェア・キーストア内の新規作成されたマスター暗号化キーを使用して再び暗号化されます。
use_key
をmigrate_key
とともに使用して、既存のキーをハードウェア・キーストアに移行できます。
次のように、key_id
をuse_key
とともに指定する必要があります:
ADMINISTER KEY MANAGEMENT USE ENCRYPTION KEY '0673C1262AA1D04F14BF26D720480C55B2' IDENTIFIED BY "external_keystore_password" MIGRATE USING software_keystore_password;
ノート:
この句の使用は、パスワードで保護されたソフトウェア・キーストアからハードウェア・キーストアへの移行のための一連のステップのうちの1ステップにすぎません。この句を使用する前に、すべてのステップについて、『Oracle Database Advanced Securityガイド』を参照してください。
-
ENCRYPTION
キーワードはオプションで、意味を明確化するために使用されます。 -
HSM_auth_string
には、ハードウェア・キーストアのパスワードを指定します。詳細は、「キーストア・パスワードを指定するときのノート」を参照してください。 -
FORCE
KEYSTORE
句を使用すると、キーストアが閉じている場合でも、この操作が可能になります。詳細は、「FORCE KEYSTORE句のノート」を参照してください。 -
software_keystore_password
には、パスワードベースのソフトウェア・キーストアのパスワードを指定します。詳細は、「キーストア・パスワードを指定するときのノート」を参照してください。 -
WITH
BACKUP
句とオプションのUSING
'
backup_identifier
'
句を指定すると、移行が行われる前に、キーストアのバックアップが作成されます。詳細は、「WITH BACKUP句のノート」を参照してください。
reverse_migrate_key
この句を使用して、ハードウェア・キーストアからパスワードで保護されたソフトウェア・キーストアへ移行します。この句によって、既存の表暗号化キーおよび表領域暗号化キーが、ハードウェア・キーストア内のマスター暗号化キーを使用して復号化され、次にパスワードで保護されたソフトウェア・キーストア内の新規作成されたマスター暗号化キーを使用して再び暗号化されます。
ノート:
この句の使用は、ハードウェア・キーストアからパスワードで保護されたソフトウェア・キーストアへの移行のための一連のステップのうちの1ステップにすぎません。この句を使用する前に、すべてのステップについて、『Oracle Database Advanced Securityガイド』を参照してください。
-
ENCRYPTION
キーワードはオプションで、意味を明確化するために使用されます。 -
software_keystore_password
には、パスワードベースのソフトウェア・キーストアのパスワードを指定します。詳細は、「キーストア・パスワードを指定するときのノート」を参照してください。 -
FORCE
KEYSTORE
句を使用すると、キーストアが閉じている場合でも、この操作が可能になります。詳細は、「FORCE KEYSTORE句のノート」を参照してください。 -
HSM_auth_string
には、ハードウェア・キーストアのパスワードを指定します。詳細は、「キーストア・パスワードを指定するときのノート」を参照してください。
move_keys
move_keys
句を使用して、暗号化キーを新しいキーストアに移動します。データベースにログインするには、ADMINISTER KEY MANAGEMENT
権限またはSYSKM
権限を持つユーザーである必要があります。キーの移動先にするキーストアのキー識別子を見つけるには、V$ENCRYPTION_KEYS
ビューのKEY_ID
列を問い合せる必要があります。
keystore_location1
は、新しいキーストア.p12
ファイルを格納するウォレットのディレクトリへのパスです。デフォルトでは、このディレクトリは$ORACLE_BASE/admin/db_unique_name/wallet
内にあります。
keystore1_password
は、新しいキーストアのパスワードです。
keystore_password
は、キーの移動元のキーストアのパスワードです。
key_identifier
は、V$ENCRYPTION_KEYS
ビューのKEY_ID
列を問い合せて確認するキーの識別子です。この設定は一重引用符(' ')で囲みます。
subquery
は、目的の正確なキー識別子を検索するために使用できます。
backup_identifier
はバックアップの説明(オプション)です。backup_identifier
は、一重引用符(' ')で囲みます。
たとえば:
ADMINISTER KEY MANAGEMENT MOVE KEYS
TO NEW KEYSTORE $ORACLE_BASE/admin/orcl/wallet
IDENTIFIED BY keystore_password
FROM FORCE KEYSTORE
IDENTIFIED BY keystore_password
WITH IDENTIFIER IN
(SELECT KEY_ID FROM V$ENCRYPTION_KEYS WHERE ROWNUM < 2);
secret_management_clauses
この句を使用すると、パスワードで保護されたソフトウェア・キーストアやハードウェア・キーストア内のシークレットを追加、更新および削除できます。
関連項目:
シークレットの追加、更新および削除の詳細は、『Oracle Database Advanced Securityガイド』を参照してください。
add_update_secret
この句を使用すると、キーストアにシークレットを追加したり、キーストア内の既存のシークレットを更新できます。このキーストアは、開いている必要があります。
-
キーストアにシークレットを追加するには、
ADD
を指定します。 -
キーストア内の既存のシークレットを更新するには、
UPDATE
を指定します。 -
secret
には、追加または更新するシークレットを指定します。シークレットは英数字の文字列です。シークレットは一重引用符で囲みます。 -
client_identifier
には、シークレットの識別に使用する英数字の文字列を指定します。client_identifier
は一重引用符で囲みます。この値では大文字と小文字が区別されます。 -
オプションの
USING
TAG
句を指定すると、secret
にタグを関連付けできます。tag
はオプションで、シークレットに関するユーザー定義の記述子です。タグは一重引用符で囲みます。シークレットのタグは、V$CLIENT_SECRETS
ビューのSECRET_TAG
列を問い合せることで確認できます。 -
FORCE
KEYSTORE
句を使用すると、キーストアが閉じている場合でも、この操作が可能になります。詳細は、「FORCE KEYSTORE句のノート」を参照してください。 -
IDENTIFIED
BY
句を使用すると、キーストアのパスワードを指定できます。詳細は、「キーストア・パスワードを指定するときのノート」を参照してください。 -
WITH
BACKUP
句とオプションのUSING
'
backup_identifier
'
句を指定すると、パスワードベースのソフトウェア・キーストアのシークレットが追加または更新される前に、キーストアのバックアップが作成されます。詳細は、「WITH BACKUP句のノート」を参照してください。
delete_secret
この句を使用すると、キーストアからシークレットを削除できます。このキーストアは、開いている必要があります。
-
client_identifier
には、シークレットの識別に使用する英数字の文字列を指定します。client_identifier
は一重引用符で囲みます。V$CLIENT_SECRETS
ビューのCLIENT
列を問い合せることで、クライアント識別子を表示できます。 -
FORCE
KEYSTORE
句を使用すると、キーストアが閉じている場合でも、この操作が可能になります。詳細は、「FORCE KEYSTORE句のノート」を参照してください。 -
IDENTIFIED
BY
句を使用すると、キーストアのパスワードを指定できます。詳細は、「キーストア・パスワードを指定するときのノート」を参照してください。 -
WITH
BACKUP
句とオプションのUSING
'
backup_identifier
'
句を指定すると、パスワードベースのソフトウェア・キーストアからシークレットが削除される前に、キーストアのバックアップが作成されます。詳細は、「WITH BACKUP句のノート」を参照してください。
USING TAG句のノート
多くのADMINISTER
KEY
MANAGEMENT
操作にはUSING
TAG
句が含まれ、これを使用すると、タグを暗号化キーに関連付けることができます。tag
はオプションで、キーに関するユーザー定義の記述子です。これは一重引用符で囲まれた文字列です。
暗号化キーのタグは、V$ENCRYPTION_KEYS
ビューのTAG
列を問い合せることで表示できます。
FORCE KEYSTORE句のノート
自動ログイン・ウォレットが存在する場合、FORCE KEYSTORE
句は、キーストアが閉じている場合でもキーストア操作を有効にします。この句の動作は、非CDB、CDBルートまたはPDBのいずれに接続されているかによって異なります。
ノート:
マルチテナント・コンテナ・データベースが、Oracle Database 21c以降のリリースで唯一サポートされているアーキテクチャです。ドキュメントが改訂されている間は、従来の用語が残っている可能性があります。ほとんどの場合、「データベース」と「非CDB」は、コンテキストに応じてCDBまたはPDBを指しています。アップグレードなどのコンテキストでは、「非CDB」が以前のリリースの非CDBを指す場合もあります。
-
非CDBに接続されている場合は、次のようになります。
-
パスワードで保護されたソフトウェア・キーストアまたはハードウェア・キーストアが閉じている場合は、操作の実行中にデータベースによってパスワードで保護されたソフトウェア・キーストアまたはハードウェア・キーストアが開かれ、開いた状態が維持されます。その後、自動ログイン・キーストアが存在する場合はそのキーストアが新しい情報で更新されます。
-
自動ログイン・キーストアが開いている場合は、操作の実行中にデータベースによってパスワードで保護されたソフトウェア・キーストアまたはハードウェア・キーストアが一時的に開かれ、自動ログイン・キーストアから切り替わることなく、自動ログイン・キーストアが新しい情報で更新されます。
-
パスワードで保護されたソフトウェア・キーストアまたはハードウェア・キーストアが開いている場合、
FORCE
KEYSTORE
句は必要なく、かつ影響を及ぼしません。
-
-
CDBルートに接続されている場合は、次のようになります。
-
CDBルート・キーストアに対する操作を実行するには(
CONTAINER=CURRENT
)、CDBルート・キーストアが開いている必要があります。したがって、非CDBについて説明した動作がCDBルートに適用されます。 -
CDBルート・キーストアおよびすべてのPDBキーストアに対する操作を実行するには(
CONTAINER=ALL
)、CDBルート・キーストアとすべてのPDBキーストアが開いている必要があります。したがって、非CDBについて説明した動作がCDBルートおよび各PDBに適用されます。
-
-
PDBに接続されている場合は、次のようになります。
-
PDBキーストアに対する操作を実行するには、CDBルート・キーストアと該当するPDBのキーストアが開いている必要があります。したがって、非CDBについて説明した動作がCDBルートおよび該当するPDBに適用されます。
-
キーストア・パスワードを指定するときのノート
キーストア・パスワードは、次のように指定します。
-
パスワードで保護されたソフトウェア・キーストアの場合は、文字列としてパスワードを指定します。パスワードを二重引用符で囲むこともできます。引用符の有無にかかわらず、パスワードは大文字と小文字が区別されます。キーストアのパスワードはデータベース・ユーザーのパスワードと同じ規則に従います。詳細は、「CREATE USER」の
「BY
password」
句を参照してください。 -
ハードウェア・キーストアの場合は、
"
user_id
:
password
"
の形式の文字列としてパスワードを指定します。-
user_id
は、HSM管理インタフェースを使用してデータベース用に作成されたユーザーIDです。 -
password
は、HSM管理インタフェースを使用してユーザーIDに対して作成されたパスワードです。
user_id
:
password
の文字列は二重引用符("
"
)囲み、user_id
とpassword
はコロン(:
)で区切ります。 -
-
EXTERNAL
STORE
を指定する場合、データベースでは、外部ストアに格納されているキーストア・パスワードを使用して操作を実行します。この機能により、集中的に管理およびアクセスできる独立した場所にパスワードを格納できるようになります。この機能を使用するには、最初に、キーストア・パスワードを格納する場所にEXTERNAL_KEYSTORE_CREDENTIAL_LOCATION
初期化パラメータを設定する必要があります。キーストア・パスワードに外部ストアを構成する方法の詳細は、『Oracle Database Advanced Securityガイド』を参照してください。
WITH BACKUP句のノート
多くのADMINISTER
KEY
MANAGEMENT
操作には、WITH
BACKUP
句が含まれます。この句は、パスワードで保護されたソフトウェア・キーストアにのみ適用されます。これは、この操作を実行する前に、キーストアをバックアップする必要があることを意味しています。
操作を実行するときにWITH
BACKUP
を指定するか、操作を実行する直前にWITH
BACKUP
を指定してADMINISTER
KEY
MANAGEMENT
を発行する必要があります。
WITH BACKUP
を使用して自動ログイン・ウォレットをバックアップすることもできます。
WITH
BACKUP
句を指定すると、Oracle Databaseは、ewallet_
timestamp
.p12
という形式の名前でバックアップ・ファイルを作成します。timestamp
は、UTC形式でのファイル作成時のタイムスタンプです。バックアップ・ファイルは、キーストアをバックアップしているディレクトリに作成されます。
オプションのUSING
'
backup_identifier
'
句を使用すると、バックアップ・ファイルの名前に追加するバックアップ識別子を指定できます。たとえば、バックアップ識別子に'Backup1'
を指定すると、Oracle Databaseは、ewallet_
timestamp
_Backup1.p12
という形式の名前でバックアップ・ファイルを作成します。
WITH
BACKUP
句は、パスワードで保護されたソフトウェア・キーストアの場合は必須ですが、ハードウェア・キーストアの場合はオプションです。
add_update_secret_seps
SEPSウォレットとも呼ばれる安全性の高い外部パスワード・ストア(SEPS)でキーを管理するには、この句を指定します。この句のセマンティクスは、add_update_secret
句と同じです。
delete_secret_seps
SEPSウォレットとも呼ばれる安全性の高い外部パスワード・ストア(SEPS)でキーを削除するには、この句を指定します。この句のセマンティクスは、delete_secret
句と同じです。
zero_downtime_software_patching_clauses
この句を指定すると、新しいPKCS#11エンドポイント・ライブラリに切り替えできます。その後、次の文を実行して、更新されたPKCS#11エンドポイント共有ライブラリに切り替えることができます。
ADMINISTER KEY MANAGEMENT SWITCHOVER TO LIBRARY 'updated_fully_qualified_file_name_of_library' FOR ALL CONTAINERS
関連項目:
例
キーストアの作成: 例
次の文は、/etc/ORACLE/WALLETS/orcl
ディレクトリ内にパスワードで保護されたソフトウェア・キーストアを作成します。
ADMINISTER KEY MANAGEMENT
CREATE KEYSTORE '/etc/ORACLE/WALLETS/orcl'
IDENTIFIED BY password;
次の文は、前の文で作成されたキーストアから自動ログイン・ソフトウェア・キーストアを作成します。
ADMINISTER KEY MANAGEMENT
CREATE AUTO_LOGIN KEYSTORE FROM KEYSTORE '/etc/ORACLE/WALLETS/orcl'
IDENTIFIED BY password;
キーストアを開く: 例
次の文は、パスワードで保護されたソフトウェア・キーストアを開きます。
ADMINISTER KEY MANAGEMENT
SET KEYSTORE OPEN
IDENTIFIED BY password;
CDBに接続している場合、次の文は現在のコンテナ内のパスワードで保護されたソフトウェア・キーストアを開きます。
ADMINISTER KEY MANAGEMENT
SET KEYSTORE OPEN
IDENTIFIED BY password
CONTAINER = CURRENT;
次の文はハードウェア・キーストアを開きます。
ADMINISTER KEY MANAGEMENT SET KEYSTORE OPEN IDENTIFIED BY "user_id:password";
次の文は、パスワードが外部ストアに格納されているキーストアを開きます。
ADMINISTER KEY MANAGEMENT SET KEYSTORE OPEN IDENTIFIED BY EXTERNAL STORE;
キーストアを閉じる: 例
次の文は、パスワードで保護されたソフトウェア・キーストアを閉じます。
ADMINISTER KEY MANAGEMENT
SET KEYSTORE CLOSE
IDENTIFIED BY password;
次の文は、自動ログイン・ソフトウェア・キーストアを閉じます。
ADMINISTER KEY MANAGEMENT SET KEYSTORE CLOSE;
次の文は、ハードウェア・キーストアを閉じます。
ADMINISTER KEY MANAGEMENT SET KEYSTORE CLOSE IDENTIFIED BY "user_id:password";
次の文は、パスワードが外部ストアに格納されているキーストアを閉じます。
ADMINISTER KEY MANAGEMENT SET KEYSTORE CLOSE IDENTIFIED BY EXTERNAL STORE;
キーストアのバックアップ: 例
次の文は、パスワードで保護されたソフトウェア・キーストアのバックアップを作成します。バックアップは、/etc/ORACLE/KEYSTORE/DB1
ディレクトリに格納され、バックアップ・ファイル名にタグhr.emp_keystore
が含まれます。
ADMINISTER KEY MANAGEMENT
BACKUP KEYSTORE USING 'hr.emp_keystore'
IDENTIFIED BY password
TO '/etc/ORACLE/KEYSTORE/DB1/';
キーストア・パスワードの変更: 例
次の文は、パスワードで保護されたソフトウェア・キーストアのパスワードを変更します。パスワードを変更する前に、キーストアのバックアップもタグpwd_change
付きで作成します。
ADMINISTER KEY MANAGEMENT ALTER KEYSTORE PASSWORD IDENTIFIED BY old_password SET new_password WITH BACKUP USING 'pwd_change';
2つのキーストアの新しいキーストアへのマージ: 例
次の文は、自動ログイン・ソフトウェア・キーストアをパスワードで保護されたソフトウェア・キーストアとマージして、パスワードで保護された新しいソフトウェア・キーストアを新しい場所に作成します。
ADMINISTER KEY MANAGEMENT MERGE KEYSTORE '/etc/ORACLE/KEYSTORE/DB1' AND KEYSTORE '/etc/ORACLE/KEYSTORE/DB2' IDENTIFIED BY existing_keystore_password INTO NEW KEYSTORE '/etc/ORACLE/KEYSTORE/DB3' IDENTIFIED BY new_keystore_password;
キーストアの既存のキーストアへのマージ: 例
次の文は、自動ログイン・ソフトウェア・キーストアをパスワードで保護されたソフトウェア・キーストアにマージします。マージを実行する前に、パスワードで保護されたソフトウェア・キーストアのバックアップも作成します。
ADMINISTER KEY MANAGEMENT
MERGE KEYSTORE '/etc/ORACLE/KEYSTORE/DB1'
INTO EXISTING KEYSTORE '/etc/ORACLE/KEYSTORE/DB2'
IDENTIFIED BY existing_keystore_password
WITH BACKUP;
マスター暗号化キーの作成およびアクティブ化: 例
次の文は、パスワードで保護されたソフトウェア・キーストア内のマスター暗号化キーを作成し、アクティブ化します。これにより、SEED128
アルゴリズムを使用してキーが暗号化されます。新しいマスター暗号化キーを作成する前に、キーストアのバックアップも作成します。
ADMINISTER KEY MANAGEMENT
SET KEY USING ALGORITHM 'SEED128'
IDENTIFIED BY password
WITH BACKUP;
次の文は、パスワードで保護されたソフトウェア・キーストア内にマスター暗号化キーを作成しますが、そのキーをアクティブ化しません。新しいマスター暗号化キーを作成する前に、キーストアのバックアップも作成します。
ADMINISTER KEY MANAGEMENT
CREATE KEY USING TAG 'mykey1'
IDENTIFIED BY password
WITH BACKUP;
次の問合せは、前の文で作成されたマスター暗号化キーのキー識別子を表示します。
SELECT TAG, KEY_ID FROM V$ENCRYPTION_KEYS WHERE TAG = 'mykey1'; TAG KEY_ID --- ---------------------------------------------------- mykey1 ARgEtzPxpE/Nv8WdPu8LJJUAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
次の文は、前の文で問合せのあったマスター暗号化キーをアクティブ化します。新しいマスター暗号化キーをアクティブ化する前に、キーストアのバックアップも作成します。
ADMINISTER KEY MANAGEMENT
USE KEY 'ARgEtzPxpE/Nv8WdPu8LJJUAAAAAAAAAAAAAAAAAAAAAAAAAAAAA'
IDENTIFIED BY password
WITH BACKUP;
キー・タグの設定: 例
この例では、キーストアが閉じていることを想定しています。次の文は、キーストアを一時的に開き、前の例でアクティブ化されたマスター暗号化キーについて、タグをmykey2
に変更します。タグを変更する前に、キーストアのバックアップも作成します。
ADMINISTER KEY MANAGEMENT
SET TAG 'mykey2' FOR 'ARgEtzPxpE/Nv8WdPu8LJJUAAAAAAAAAAAAAAAAAAAAAAAAAAAAA'
FORCE KEYSTORE
IDENTIFIED BY password
WITH BACKUP;
キーのエクスポート: 例
次の文は、パスワードで保護されたソフトウェア・キーストアから/etc/TDE/export.exp
ファイルに2つのマスター暗号化キーをエクスポートします。この文は、シークレットmy_secret
を使用してそのファイルの内のマスター暗号化キーを暗号化します。エクスポートされるマスター暗号化キーの識別子は、カンマ区切りのリストとして提供されます。
ADMINISTER KEY MANAGEMENT
EXPORT KEYS WITH SECRET "my_secret"
TO '/etc/TDE/export.exp'
IDENTIFIED BY password
WITH IDENTIFIER IN 'AdoxnJ0uH08cv7xkz83ovwsAAAAAAAAAAAAAAAAAAAAAAAAAAAAA',
'AW5z3CoyKE/yv3cNT5CWCXUAAAAAAAAAAAAAAAAAAAAAAAAAAAAA';
次の文は、パスワードで保護されたソフトウェア・キーストアから/etc/TDE/export.exp
ファイルにマスター暗号化キーをエクスポートします。タグがmytag1
またはmytag2
であるキーのみがエクスポートされます。ファイル内のマスター・キーは、シークレットmy_secret
を使用して暗号化されます。キー識別子は、V$ENCRYPTION_KEYS
ビューに問い合せて見つけます。
ADMINISTER KEY MANAGEMENT
EXPORT KEYS WITH SECRET "my_secret"
TO '/etc/TDE/export.exp'
IDENTIFIED BY password
WITH IDENTIFIER IN
(SELECT KEY_ID FROM V$ENCRYPTION_KEYS WHERE TAG IN ('mytag1', 'mytag2'));
次の文は、データベースのすべてのマスター暗号化キーを/etc/TDE/export.exp
ファイルにエクスポートします。ファイル内のマスター・キーは、シークレットmy_secret
を使用して暗号化されます。
ADMINISTER KEY MANAGEMENT
EXPORT KEYS WITH SECRET "my_secret"
TO '/etc/TDE/export.exp'
IDENTIFIED BY password;
マルチテナント環境で、次の文は、PDB salespdb
のすべてのマスター暗号化キーをメタデータとともに/etc/TDE/salespdb.exp
ファイルにエクスポートします。ファイル内のマスター・キーは、シークレットmy_secret
を使用して暗号化されます。その後、PDBのクローンを作成する場合や、PDBを切断して再接続する場合には、この文で作成されたエクスポート・ファイルを使用して、クローンとして作成したPDB、または新たに接続したPDBにキーをインポートできます。
ALTER SESSION SET CONTAINER = salespdb;
ADMINISTER KEY MANAGEMENT
EXPORT KEYS WITH SECRET "my_secret"
TO '/etc/TDE/salespdb.exp'
IDENTIFIED BY password;
キーのインポート: 例
次の文は、/etc/TDE/export.exp
ファイルからパスワードで保護されたソフトウェア・キーストアに、シークレットmy_secret
で暗号化されたマスター暗号化キーをインポートします。キーをインポートする前に、パスワードで保護されたソフトウェア・キーストアのバックアップも作成します。
ADMINISTER KEY MANAGEMENT
IMPORT KEYS WITH SECRET "my_secret"
FROM '/etc/TDE/export.exp'
IDENTIFIED BY password
WITH BACKUP;
キーストアの移行: 例
次の文は、パスワードで保護されたソフトウェア・キーストアからハードウェア・キーストアに移行します。移行を実行する前に、パスワードで保護されたソフトウェア・キーストアのバックアップも作成します。
ADMINISTER KEY MANAGEMENT SET ENCRYPTION KEY IDENTIFIED BY "user_id:password" MIGRATE USING software_keystore_password WITH BACKUP;
キーストアの逆移行: 例
次の文は、ハードウェア・キーストアからパスワードで保護されたソフトウェア・キーストアに逆移行します。
ADMINISTER KEY MANAGEMENT SET ENCRYPTION KEY IDENTIFIED BY software_keystore_password REVERSE MIGRATE USING "user_id:password";
キーストアへのシークレットの追加: 例
次の文は、クライアントclient1
のシークレットsecret1
をタグMy first secret
付きでパスワードで保護されたソフトウェア・キーストアに追加します。シークレットを追加する前に、パスワードで保護されたソフトウェア・キーストアのバックアップも作成します。
ADMINISTER KEY MANAGEMENT
ADD SECRET 'secret1' FOR CLIENT 'client1'
USING TAG 'My first secret'
IDENTIFIED BY password
WITH BACKUP;
次の文は、類似したシークレットをハードウェア・キーストアに追加します。
ADMINISTER KEY MANAGEMENT ADD SECRET 'secret2' FOR CLIENT 'client2' USING TAG 'My second secret' IDENTIFIED BY "user_id:password";
キーストア内のシークレットの更新: 例
次の文は、前の例でパスワードベースのソフトウェア・キーストア内に作成されたシークレットを更新します。シークレットを更新する前に、パスワードで保護されたソフトウェア・キーストアのバックアップも作成します。
ADMINISTER KEY MANAGEMENT
UPDATE SECRET 'secret1' FOR CLIENT 'client1'
USING TAG 'New Tag 1'
IDENTIFIED BY password
WITH BACKUP;
次の文は、前の例でハードウェア・キーストア内に作成されたシークレットを更新します。
ADMINISTER KEY MANAGEMENT UPDATE SECRET 'secret2' FOR CLIENT 'client2' USING TAG 'New Tag 2' IDENTIFIED BY "user_id:password";
キーストアからのシークレットの削除: 例
次の文は、前の例で更新されたシークレットをパスワードで保護されたソフトウェア・キーストアから削除します。シークレットを削除する前に、パスワードで保護されたソフトウェア・キーストアのバックアップも作成します。
ADMINISTER KEY MANAGEMENT
DELETE SECRET FOR CLIENT 'client1'
IDENTIFIED BY password
WITH BACKUP;
次の文は、前の例で更新されたシークレットをハードウェア・キーストアから削除します。
ADMINISTER KEY MANAGEMENT DELETE SECRET FOR CLIENT 'client2' IDENTIFIED BY "user_id:password";