プライマリ・コンテンツに移動
Oracle® Databaseユーティリティ
12cリリース1 (12.1.0.2)
B71303-09
目次へ移動
目次
索引へ移動
索引

前
次

ENCRYPTION_PASSWORD

デフォルト: デフォルト値は設定されていません。ユーザーが値を指定します。

用途

エクスポート・ダンプ・ファイル内の暗号化列のデータ、メタデータまたは表データを暗号化するためのパスワードを指定します。これにより、暗号化されたダンプ・ファイル・セットへの不正なアクセスを防ぎます。

注意:

データ・ポンプの暗号化機能は、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パラメータがALLDATA_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_MODEDUALに設定した場合に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ファイルを後でインポートするには、同じ暗号化パスワードを指定する必要があることに注意してください。