領域を効率的に使用する暗号化バックアップの構成

LIBRA.SOモジュールでは、レガシー・モード(RA21.1)と領域を効率的に使用する暗号化オプション(RA23.1)の両方がサポートされています。どちらのモードでも外部パスワード・ストアは同じ方法で作成されますが、RMAN SBTチャネルは異なる方法で構成されます。

暗号化バックアップを有効にするRMANコマンドは、次の形式です:

CONFIGURE CHANNEL DEVICE TYPE SBT PARMS "SBT_LIBRARY=/.../rdbms/lib/libra.so, 
ENV=(RA_FORMAT=true, RA_WALLET='location=file:/.../orswlt credential_alias=myra')" ;

これが設定されると、SBTジョブで通常のバックアップを実行するときに、目的の暗号化アルゴリズムを指定できます。

圧縮のデフォルトはLZO圧縮です。RMANコマンドラインで指定する場合は、BASICである必要があります。

ノート:

Controlfileは、増分データ・ファイルと同じピースに存在できません。

ただし、古いバックアップをリストアするには、新しいTDEキーが必要になります。

暗号化バックアップを開始する場合、新しいレベル0バックアップは必要ありません。また、キー更新には新しいレベル0は必要ありません。

この情報はRA 23.1以降に適用されます。

  1. 安全性の高い外部パスワード・ストア(mkstore)を作成します。次のコマンドでは、ravpc1という名前のリカバリ・アプライアンスのユーザーの資格証明を格納するOracleウォレットを作成します。

    $ mkstore                         \
      -wrl $ORACLE_HOME/oracle/wallet \
      -createALO                      \
      -createCredential zdlra01ingest-scan.acme.com:1521/zdlra01:dedicated ravpc1
    

    参照: 保護されたデータベースでのOracleウォレットの作成

  2. リカバリ・アプライアンス・バックアップ・モジュールを指しているSBT_LIBRARYパラメータを使用して、RMAN SBTチャネルを構成します。共有ライブラリlibra.soの完全パスが指定されています。RA_WALLETパラメータは、この保護されたデータベースとリカバリ・アプライアンスとの認証に使用する資格証明が格納されているOracleウォレットの場所を表します。ra-scanはリカバリ・アプライアンスのSCANで、zdlra5はリカバリ・アプライアンスのメタデータ・データベースのサービス名です。

    CONFIGURE CHANNEL DEVICE TYPE 'SBT_TAPE' 
    PARMS 'SBT_LIBRARY=/u01/app/oracle/product/19.0.0.0/dbhome_1/lib/libra.so,
    ENV=(RA_FORMAT=true,
    RA_WALLET=location=file:/u01/app/oracle/product/19.0.0.0/dbhome_1/dbs/zdlracredential_alias=ra-scan:1521/zdlra5:dedicated)' 
    FORMAT '%U_%d';
  3. この他に、RMAN圧縮およびRMAN暗号化を構成する必要があります。これは、1回のみ実行することも、各バックアップ・ジョブの一部として実行することもできます。

    configure compression algorithm  'low';
    set encryption on;
    configure device type 'sbt_tape' backup type to compressed backupset;
  4. リカバリ・アプライアンス・バックアップ・モジュールの完全パスを指定するSBT_LIBRARYパラメータを使用して、RMAN SBTチャネルを割り当てます。ENV設定では、リカバリ・アプライアンス・バックアップ・モジュールで使用する構成パラメータを指定します。ra-scanはリカバリ・アプライアンスのSCANで、zdlra5はリカバリ・アプライアンスのメタデータ・データベースのサービス名です。

    set echo on
    configure compression algorithm 'low';
    set encryption on;
    configure device type 'sbt_tape' backup type to compressed backupset;
    RUN{ALLOCATE CHANNEL c1 DEVICE TYPE sbt_tape 
    PARMS='SBT_LIBRARY=/u01/app/oracle/product/19.0.0.0/dbhome_1/lib/libra.so,
    ENV=(RA_FORMAT=true, 
    RA_WALLET=location=file:/u01/app/oracle/product/19.0.0.0/dbhome_1/dbs/zdlracredential_alias=ra-scan:1521/zdlra5:dedicated)' 
    FORMAT '%U_%d';
    BACKUP INCREMENTAL LEVEL 1 FILESPERSET 1 SECTION SIZE 64G DATABASE PLUS ARCHIVELOG NOT BACKED UP FILESPERSET 8;}
  5. 上の内容は、保護されたデータベースによって実行されます。リカバリ・アプライアンス管理者が、これが実行されていることを認識する必要はありません。ただし、リカバリ・アプライアンス管理者は、暗号化されていないデータがアプライアンスに送信されないようにすることができます。これは、CREATE_PROTECTION_POLICYまたはUPDATE_PROTECTION_POLICYを使用して、パラメータSECURE_MODE = YESを指定することで実現されます。

    SQL> exec dbms_ra.update_protection_policy(
    protection_policy_name => ‘GOLD’, 
    secure_mode => ‘YES’);
  6. この構成の後に、暗号化されていない(レガシー)バックアップを実行しようとすると、次のようなエラー・メッセージが表示されます:

    RMAN-00571:
    ===========================================================RMAN-00569: =============== ERROR
    MESSAGE STACK FOLLOWS ===============RMAN-00571:
    ===========================================================RMAN-03009: failure of backup
    command on channel_29 channel at 01/19/2023 10:27:06ORA-27192: skgfcls: sbtclose2
    returned error - failed to close fileORA-19511: non RMAN, but media
    manager or vendor specific failure, error text:KBHS-01404:  See trace file
    /u01/app/oracle/diag/rdbms/<dbuniquename>/<sid>/trace/sbtio_204486_140658931245376.log  for
    detailsKBHS-00719: Error 'recovery
    appliance Error'; ORA-64868: Only RMAN encrypted backups are supported on this Recovery
    Appliance.
    KBHS-00700: HTTP
  7. また、リアルタイムREDOが有効になっている場合は、LADパラメータをENCRYPTION=enableに設定する必要があります。

    ALTER SYSTEM SET LOG_ARCHIVE_DEST_3='SERVICE=boston 
    VALID_FOR=(ALL_LOGFILES, ALL_ROLES) 
    ASYNC DB_UNIQUE_NAME=zdlra2 encryption=enable' SCOPE=BOTH;

    これがないと、リカバリ・アプライアンス管理者にこのメッセージが表示されます。

    2023-01-19T18:25:41.933868+00:00
    Recovery Appliance failure on ospid: 221805; 
    Errors: ORA-64869: Unencrypted redo is not allowed for database <dbname>.