修改 NATIVE_NETWORK_ENCRYPTION 选项设置
启用 NATIVE_NETWORK_ENCRYPTION
选项后,您可以修改其设置。目前,您只能使用 AWS CLI 或 RDS API 修改 NATIVE_NETWORK_ENCRYPTION
选项设置。您无法使用控制台。以下示例修改该选项中的两个设置。
aws rds add-option-to-option-group \ --option-group-name my-option-group \ --options "OptionName=NATIVE_NETWORK_ENCRYPTION,OptionSettings=[{Name=SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER,Value=SHA256},{Name=SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER,Value=SHA256}]" \ --apply-immediately
要了解如何使用 CLI 修改选项设置,请参阅AWS CLI。有关各项设置的更多信息,请参阅NATIVE_NETWORK_ENCRYPTION 选项设置。
修改 CRYPTO_CHECKSUM_* 值
如果修改 NATIVE_NETWORK_ENCRYPTION 选项设置,请确保以下选项设置具有至少一个通用密码:
-
SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER
-
SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT
以下示例显示修改 SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER
的方案。该配置有效,因为 CRYPTO_CHECKSUM_TYPES_CLIENT
和 CRYPTO_CHECKSUM_TYPES_SERVER
都使用 SHA256
。
选项设置 | 修改前的值 | 修改后的值 |
---|---|---|
|
|
无更改 |
|
|
SHA1,MD5,SHA256 |
例如,假设需要将 SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER
从默认设置改为 SHA1,MD5
。在这种情况下,请确保将 SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT
设置为 SHA1
或者 MD5
。这些算法不包含 SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT
的默认值中。
修改 ALLOW_WEAK_CRYPTO* 设置
要将 SQLNET.ALLOW_WEAK_CRYPTO*
选项从默认值设置为 FALSE
,请确保满足以下条件:
-
SQLNET.ENCRYPTION_TYPES_SERVER
和SQLNET.ENCRYPTION_TYPES_CLIENT
有一种匹配的安全加密方法。如果方法并非DES
、3DES
或RC4
(所有密钥长度),则该方法被视为安全。 -
SQLNET.CHECKSUM_TYPES_SERVER
和SQLNET.CHECKSUM_TYPES_CLIENT
有一种匹配的安全校验和方法。如果方法并非MD5
,则该方法被视为安全。 -
该客户端使用 2021 年 7 月的 PSU 进行了修补。如果客户端没有进行修补,则客户端将失去连接并收到
ORA-12269
错误。
下面的示例显示了示例 NNE 设置。假设您想要将 SQLNET.ENCRYPTION_TYPES_SERVER
和 SQLNET.ENCRYPTION_TYPES_CLIENT
设置为 FALSE,从而阻止不安全的连接。校验和选项设置满足先决条件,因为它们都具有 SHA256
。但是,SQLNET.ENCRYPTION_TYPES_CLIENT
和 SQLNET.ENCRYPTION_TYPES_SERVER
使用 DES
、3DES
和 RC4
加密方法,这些方法不安全。因此,要将 SQLNET.ALLOW_WEAK_CRYPTO*
选项设置为 FALSE
,请首先将 SQLNET.ENCRYPTION_TYPES_SERVER
和 SQLNET.ENCRYPTION_TYPES_CLIENT
设置为安全加密方法,例如 AES256
。
选项设置 | 值 |
---|---|
|
|
|
SHA1,MD5,SHA256 |
|
|
|
|