デフォルト: デフォルト値は設定されていません。ユーザーが値を指定します。
用途
エクスポート・ダンプ・ファイル内の暗号化列のデータ、メタデータまたは表データを暗号化するためのパスワードを指定します。これにより、暗号化されたダンプ・ファイル・セットへの不正なアクセスを防ぎます。
注意:
データ・ポンプの暗号化機能は、Oracle Database 11gリリース1(11.1)で変更されています。リリース11.1より前は、ENCRYPTION_PASSWORD
パラメータが適用されるのは暗号化列のみでした。しかし、リリース11.1では、新しいENCRYPTION
パラメータが他のタイプのデータを暗号化するためのオプションを提供するようになりました。つまり、ENCRYPTION
と固有のオプションを指定せずにENCRYPTION_PASSWORD
を指定すると、ダンプ・ファイルに書き込まれるすべてのデータが暗号化されるようになりました(ENCRYPTION=ALL
を指定した場合と同じ)。暗号化列のみを再暗号化する場合は、ENCRYPTION_PASSWORD
に加えてENCRYPTION=ENCRYPTED_COLUMNS_ONLY
を指定する必要があります。
構文および説明
ENCRYPTION_PASSWORD = password
指定するpassword
値は、暗号化された表の列、メタデータまたは表データをダンプ・ファイル・セットにクリア・テキストとして書き込まないように、再度暗号化するキーを指定します。エクスポート操作に暗号化された表の列が含まれていて、暗号化パスワードが指定されていない場合、暗号化された列はダンプ・ファイル・セットにクリア・テキストで書き込まれ、警告が発行されます。
入力したパスワードは画面に表示されます。パスワードを入力時に画面に表示しない場合、ENCRYPTION_PWD_PROMPT
パラメータを使用します。
暗号化パスワードに許可される最大長は、ENCRYPTION
パラメータに指定されたオプションに応じて異なります。ENCRYPTION=ENCRYPTED_COLUMNS_ONLY
が指定されている場合、暗号化パスワードの最大長は、30バイトです。ENCRYPTION
パラメータがALL
、DATA_ONLY
またはMETADATA_ONLY
として指定されている場合、またはデフォルトが使用されている場合、暗号化パスワードの最大長は、128バイトです。
エクスポート操作については、ENCRYPTION_MODE
パラメータがPASSWORD
またはDUAL
に設定されている場合に、このパラメータが必要になります。
注意:
データ・ポンプのENCRYPTION_PASSWORD
パラメータで指定されるキーと、暗号化された列が含まれる表が最初に作成されるときにENCRYPT
キーワードで指定されるキーとの間には、関連性も依存性もありません。たとえば、次のように、キーがxyz
の暗号化列を持つ表を作成するとします。
CREATE TABLE emp (col1 VARCHAR2(256) ENCRYPT IDENTIFIED BY "xyz");
emp
表をエクスポートするときは、ENCRYPTION_PASSWORD
に任意の値を指定できます。xyz
である必要はありません。
制限事項
このパラメータは、Oracle Database 11g以上のEnterprise Editionでのみ有効です。
全体トランスポータブル・エクスポートで、暗号化された表領域および暗号化された列が存在する表を含む表領域を転送する場合、ENCRYPTION_PASSWORD
パラメータが必要です。
データ・ポンプの暗号化機能を使用するには、Oracle Advanced Securityオプションが有効である必要があります。Oracle Advanced Securityオプションのライセンス要件の詳細は、『Oracle Databaseライセンス情報』を参照してください。
ENCRYPTION_PASSWORD
を指定して、ENCRYPTION_MODE
を指定しない場合は、ENCRYPTION_MODE
のデフォルトがPASSWORD
になるため、Oracle Advanced Securityのデータの透過的な暗号化を有効にする必要はありません。
ENCRYPTION_PASSWORD
パラメータは、指定した暗号化モードがTRANSPARENT
の場合は有効になりません。
ENCRYPTION_MODE
をDUAL
に設定した場合にENCRYPTION_PASSWORD
パラメータを使用するには、Oracle Advanced Securityのデータの透過的な暗号化(TDE)を有効にする必要があります。TDEの詳細は、『Oracle Database Advanced Securityガイド』を参照してください。
ネットワーク・エクスポートの場合、ENCRYPTION_PASSWORD
パラメータとENCRYPTION=ENCRYPTED_COLUMNS_ONLY
の併用は、暗号化された列を含むユーザー定義の外部表ではサポートされていません。そのような表はスキップされ、エラー・メッセージが表示されますが、ジョブは続行されます。
すべての列に対する暗号化属性は、エクスポートされた表の定義とターゲット表で一致している必要があります。たとえば、EMP
表にEMPNO
という列があるとします。次のいずれの場合も、ソース表のEMP
列の暗号化属性が、ターゲット表のEMP
列の暗号化属性と一致していないためエラーになります。
EMPNO
列を暗号化してEMP
表をエクスポートし、表をインポートする前にEMPNO
列から暗号化属性を削除する。
EMPNO
列を暗号化せずにEMP
表をエクスポートし、表をインポートする前にEMPNO
列の暗号化を有効にする。
例
次の例では、暗号化パスワード123456
がダンプ・ファイルdpcd2be1.dmp
に割り当てられています。
> expdp hr TABLES=employee_s_encrypt DIRECTORY=dpump_dir1 DUMPFILE=dpcd2be1.dmp ENCRYPTION=ENCRYPTED_COLUMNS_ONLY ENCRYPTION_PASSWORD=123456
employee_s_encrypt
表の暗号化列は、dpcd2be1.dmp
ダンプ・ファイルにクリア・テキストとして書き込まれません。この例で作成されたdpcd2be1.dmp
ファイルを後でインポートするには、同じ暗号化パスワードを指定する必要があることに注意してください。