zoukankan      html  css  js  c++  java
  • 使用ENCKEYS方法加密数据

    要使用这种数据加密方法,您需要配置Oracle GoldenGate以生成加密密钥并将密钥存储在本地ENCKEYS文件中。此方法使用的永久密钥只能通过根据使用加密密钥填充ENCKEYS文件中的说明重新生成算法来更改。 ENCKEYS文件必须通过在操作系统中分配文件权限的常规方法进行保护。

    此过程生成AES加密密钥并提供将其存储在ENCKEYS文件中的说明。

    • 使用ENCKEYS方法加密数据
    • 使用ENCKEYS方法解密数据
    • 使用ENCKEYS方法进行数据加密的示例

    11.3.1 用ENCKEYS方法加密数据

    1、生成加密密钥并将其存储在ENCKEYS文件中。请参阅使用加密密钥填充ENCKEYS文件。确保将完成的ENCKEYS文件复制到任何中间系统和所有目标系统上的Oracle GoldenGate安装目录。

    2、在以下参数文件中,添加以下内容:

    • 加密trail数据:在主要提取组和数据泵的参数文件中,在指定要加密的路径或文件的任何参数前添加ENCRYPTTRAIL参数。指定路径或文件的参数是EXTTRAIL,RMTTRAIL,EXTFILE和RMTFILE。语法是以下之一:
      ENCRYPTTRAIL {AES128 | AES192 | AES256 | BLOWFISH}
      ENCRYPTTRAIL AES192, KEYNAME keyname
    • 通过TCP / IP对数据进行加密:在数据泵的参数文件(或主要提取程序,如果没有使用泵)的RMTHOSTOPTIONS参数中,使用KEYWORD子句添加ENCRYPT选项。语法是以下之一:
      RMTHOSTOPTIONS host, MGRPORT port, ENCRYPT {AES128 | AES192 | AES256 | BLOWFISH} KEYNAME keyname
      RMTHOSTOPTIONS ENCRYPT {AES128 | AES192 | AES256 | BLOWFISH} KEYNAME keyname

    Where:

    • RMTHOSTOPTIONS用于提取。有关被动提取的更多信息,请参阅使用目标系统连接启动。
    • 没有选项的ENCRYPTTRAIL使用AES128作为所有数据库类型的默认值,除了iSeries,z / OS和NonStop平台,其中默认情况下是BLOWFISH。
    • AES128采用AES-128加密算法进行加密。不支持iSeries,z / OS和NonStop平台。
    • AES192采用AES-192加密算法进行加密。不支持iSeries,z / OS和NonStop平台。
    • AES256采用AES-256加密算法进行加密。不支持iSeries,z / OS和NonStop平台。
    • BLOWFISH使用Blowfish加密,具有64位块大小和32位到128位的可变长度密钥大小。如果平台支持,请使用AES。使用BLOWFISH与以前的Oracle GoldenGate版本进行后向兼容,以及在NonStop上使用z / OS,DB2 for i和SQL / MX上的DB2。这些平台不支持AES。
    • KEYNAME keyname指定ENCKEYS文件中加密密钥的逻辑查找名称。不是ENCRYPTTRAIL的选项

    除非解压缩处于被动配置,否则将使用RMTHOST。有关更多信息,请参阅使用目标系统连接启动。

    3、如果使用通过TCP / IP加密的数据的静态收集器,请将以下参数附加到收集器启动字符串中:

    -KEYNAME keyname
    -ENCRYPT algorithm

    指定的密钥名称和算法必须与RMTHOST的KEYNAME和ENCRYPT选项指定的名称和算法相匹配

    11.3.2用ENCKEYS方法解密数据

    除非指定了trail加密,否则通过TCP / IP连接加密的数据在写入trail之前会在目标处自动解密。

    在trail中加密的数据保持加密状态,除非使用DECRYPTTRAIL参数。在Replicat可以将加密数据应用于目标之前,DECRYPTTRAIL是必需的。除非使用DECRYPTTRAIL和ENCRYPTTRAIL参数,否则数据泵会将加密数据传递到输出trail。如果数据泵必须对数据执行操作,则按以下方式对数据进行解密和加密。

    解密数据以便通过数据泵进行处理

    将DECRYPTTRAIL参数添加到数据泵的参数文件中。解密算法和密钥必须与用于加密踪迹的密钥匹配(请参阅使用ENCKEYS方法加密数据)

    DECRYPTTRAIL {AES128 | AES192 | AES256 | BLOWFISH}

    在数据泵处理后加密数据

    要在数据泵将其写入输出trail或文件之前加密数据,请在指定这些路径或文件的参数前使用ENCRYPTTRAIL参数。指定trail或文件的参数是EXTTRAIL,RMTTRAIL,EXTFILE和RMTFILE。 ENCRYPTTRAIL参数和trail或文件规范必须在DECRYPTTRAIL参数之后进行。请参阅使用ENCKEYS方法加密数据。

    使用ENCRYPTTRAIL指定的算法可能因路径而异。例如,您可以使用AES 128加密本地路径,使用AES 256加密远程路径。

    解密数据以供Replicat处理

    如果Replicat读取的trail已加密,请将DECRYPTTRAIL参数语句添加到Replicat参数文件。解密算法和密钥必须与用于加密线索的解密算法和密钥相匹配。请参阅使用ENCKEYS方法加密数据。

    11.3.3 使用ENCKEYS方法进行数据加密的例子

    以下示例显示如何为不同的trail或文件打开和关闭加密。在这个例子中,Extract写入两个本地路径,其中只有一个必须加密。

    在Extract配置中,trail bb是未加密的路径,所以它的EXTTRAIL参数放在加密trail aa的ENCRYPTTRAIL参数之前。或者,可以在指定trail bb的EXTTRAIL参数前使用NOENCRYPTTRAIL参数,然后在EXTTRAIL参数指定trail aa之前使用ENCRYPTTRAIL参数。

    在这个例子中,加密数据必须解密,以便数据泵1pump可以对其执行工作。因此,DECRYPTTRAIL参数用于数据泵的参数文件中。要重新加密输出数据,ENCRYPTTRAIL参数必须在DECRYPTTRAIL之后但在输出trail规范之前使用。如果数据泵不需要对数据执行任何操作,则可以省略DECRYPTTRAIL和ENCRYPTTRAIL参数以保留加密到Replicat的所有路径。

    Example 11-1 Extract Parameter File

    EXTRACT capt
    USERIDALIAS ogg
    DISCARDFILE /ogg/capt.dsc, PURGE
    -- Do not encrypt this trail.
    EXTTRAIL /ogg/dirdat/bb
    TABLE SALES.*;
    -- Encrypt this trail with AES-192.
    ENCRYPTTRAIL AES192
    EXTTRAIL /ogg/dirdat/aa
    TABLE FIN.*;

    Example 11-2 Data Pump 1 Parameter File

    EXTRACT 1pump
    USERIDALIAS ogg
    DISCARDFILE /ogg/1pmp.dsc, PURGE
    -- Decrypt the trail this pump reads. Use encryption key mykey1.
    DECRYPTTRAIL AES192
    -- Encrypt the trail this pump writes to, using AES-192.
    RMTHOSTOPTIONS myhost1, MGRPORT 7809
    ENCRYPTTRAIL AES192
    RMTTRAIL /ogg/dirdat/cc
    TABLE FIN.*;

    Example 11-3 Data pump 2 Parameter File

    EXTRACT 2pump
    USERIDALIAS ogg
    DISCARDFILE /ogg/2pmp.dsc, PURGE
    RMTHOST myhost2, MGRPORT 7809
    RMTTRAIL /ogg/dirdat/dd
    TABLE SALES.*;

    Example 11-4 Replicat1 (on myhost1) Parameter File

    REPLICAT 1deliv
    USERIDALIAS ogg
    ASSUMETARGETDEFS
    DISCARDFILE /ogg/1deliv.dsc, PURGE
    -- Decrypt the trail this Replicat reads. Use encryption key mykey2.
    DECRYPTTRAIL AES192
    MAP FIN.*, TARGET FIN.*;

    Example 11-5 Replicat 2 (on myhost2) parameter file

    REPLICAT 2deliv
    USERIDALIAS ogg
    ASSUMETARGETDEFS
    DISCARDFILE /ogg/2deliv.dsc, PURGE
    MAP SALES.*, TARGET SALES.*;

    参考资料

    https://docs.oracle.com/goldengate/c1221/gg-winux/GWUAD/configuring-oracle-goldengate-security.htm#GWUAD1074

  • 相关阅读:
    CDH 2、Cloudera Manager的安装
    204 01 Android 零基础入门 03 Java常用工具类 04 Java集合 04 Map集合 01 Map概述
    203 01 Android 零基础入门 03 Java常用工具类 04 Java集合 03 Set集合 07 删除宠物猫信息数据(引入泛型知识点)
    202 01 Android 零基础入门 03 Java常用工具类 04 Java集合 03 Set集合 06 查找宠物猫信息数据
    201 01 Android 零基础入门 03 Java常用工具类 04 Java集合 03 Set集合 05 添加重复的宠物猫信息数据
    200 01 Android 零基础入门 03 Java常用工具类 04 Java集合 03 Set集合 04 添加和显式宠物猫信息
    199 01 Android 零基础入门 03 Java常用工具类 04 Java集合 03 Set集合 03 宠物猫信息管理概述
    198 01 Android 零基础入门 03 Java常用工具类 04 Java集合 03 Set集合 02 案例:在集合中插入字符串
    197 01 Android 零基础入门 03 Java常用工具类 04 Java集合 03 Set集合 01 Set概述
    196 01 Android 零基础入门 03 Java常用工具类 04 Java集合 02 List集合 05 案例:公告的删除和修改
  • 原文地址:https://www.cnblogs.com/ZeroTiny/p/9203739.html
Copyright © 2011-2022 走看看