本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
加密传输中数据
您可以使用传输层安全 (TLS) 来加密您的应用程序与 Amazon DocumentDB 集群之间的连接。默认情况下,为新创建的 Amazon DocumentDB 集群启用传输中加密。可以选择在创建集群时或稍后禁用它。启用传输中加密后,需要使用TLS安全连接才能连接到集群。有关使用连接到 Amazon DocumentDB 的更多信息TLS,请参阅。以编程方式连接到 Amazon DocumentDB
管理亚马逊 DocumentDB 集群设置 TLS
Amazon DocumentDB 集群的传输加密通过集群TLS参数组中的参数进行管理。您可以使用 AWS Management Console 或 AWS Command Line Interface ()AWS CLI管理您的 Amazon DocumentDB 集群TLS设置。请参阅以下章节,了解如何验证和修改当前TLS设置。
- Using the AWS Management Console
-
按照以下步骤使用控制台执行TLS加密管理任务,例如识别参数组、验证TLS值和进行所需的修改。
注意
除非您在创建集群时以其他方式指定,否则将使用默认集群参数组创建集群。无法修改
default
集群参数组中的参数(例如,tls
启用/禁用)。因此,如果您的集群使用的是default
集群参数组,则需要修改集群以使用非默认集群参数组。首先,您可能需要创建自定义集群参数组。有关更多信息,请参阅 创建 Amazon DocumentDB 集群参数组。-
确定集群使用的集群参数组
-
在 /docdb 上打开亚马逊 DocumentDB 控制台。https://console.aws.amazon.com
-
在导航窗格中,选择集群。
提示
如果您在屏幕左侧没有看到导航窗格,请在页面左上角选择菜单图标 ()。
-
请注意,在集群导航框中,集群标识符列既显示集群又显示实例。实例列在集群下方。请参阅下方屏幕截图以供参考。
-
选择您感兴趣的集群。
-
选择配置选项卡,向下滚动到集群详细信息底部,然后找到集群参数组。请注意集群参数组的名称。
如果集群参数组的名称是
default
(例如,default.docdb3.6
),则您必须创建一个自定义集群参数组,并将其设置为集群的参数组,然后才能继续。有关更多信息,请参阅下列内容:-
创建 Amazon DocumentDB 集群参数组 — 如果没有可以使用的自定义集群参数组,请创建一个。
-
修改 Amazon DocumentDB 集群 — 修改您的集群以使用自定义集群参数组。
-
-
-
确定
tls
集群参数的当前值。-
在 /docdb 上打开亚马逊 DocumentDB 控制台。https://console.aws.amazon.com
-
在导航窗格中,选择参数组。
-
在集群参数组列表中,选择您感兴趣的集群参数组的名称。
-
找到群集参数部分。在集群参数列表中,找到
tls
集群参数行。此时,以下四列很重要:-
Cluster parameter name (集群参数名称) — 集群参数的名称。为了进行管理TLS,您对
tls
集群参数感兴趣。 -
Values (值) — 每个集群参数的当前值。
-
Allowed values (允许的值) — 可应用到集群参数的值的列表。
-
Apply type (应用类型) — static (静态)或 dynamic (动态)。对静态集群参数的更改只能在重启实例时应用。对动态集群参数的更改可以立即应用,也可以在重启实例时应用。
-
-
修改
tls
集群参数的值。如果
tls
的值不是所需的,请为此集群参数组修改其值。要更改tls
集群参数的值,请按照以下步骤从前一部分继续执行。-
选择集群参数名称 (
tls
) 左侧的按钮。 -
选择编辑。
-
要更改
tls
的值,请在 Modify(修改)tls
对话框中,从下拉列表中为此集群参数选择所需的值。有效值为:
已禁用 — 禁用 TLS
启用-启用 1.0 到 1.3 TLS 版本。
fips-140-3 — 使用启用。TLS FIPS根据《联邦信息处理标准》(FIPS) 出版物 140-3 的要求,集群仅接受安全连接。只有以下地区的亚马逊 DocumentDB 5.0(引擎版本 3.0.3727)集群才支持此功能:ca-central-1、us-west-2、us-east-1、us-east-2、us-east-2、-1、-1、-1。 us-gov-east us-gov-west
-
选择 Modify cluster parameter (修改集群参数)。更改在重启时应用到每个集群实例。
-
重启 Amazon DocumentDB 实例
重启集群的每个实例,以便将更改应用到集群中的所有实例。
-
在 /docdb 上打开亚马逊 DocumentDB 控制台。https://console.aws.amazon.com
-
在导航窗格中,选择实例。
-
要指定待重启的实例,请在实例列表中找到实例,并选择该实例名称左侧的按钮。
-
选择 Actions(操作),然后选择 Reboot(重启)。通过选择重启来确认您要重启。
-
-
- Using the AWS CLI
-
按照以下步骤执行TLS加密管理任务, AWS CLI例如识别参数组、验证TLS值和进行所需的修改。
注意
除非您在创建集群时以其他方式指定,否则将使用默认集群参数组创建集群。无法修改
default
集群参数组中的参数(例如,tls
启用/禁用)。因此,如果您的集群使用的是default
集群参数组,则需要修改集群以使用非默认集群参数组。您可能需要先创建自定义集群参数组。有关更多信息,请参阅 创建 Amazon DocumentDB 集群参数组。确定集群使用的集群参数组
结合下列参数使用
describe-db-clusters
命令 。--db-cluster-identifier
– 必需。所需集群的名称。--query
— 可选。此查询将输出限制为仅显示感兴趣的字段,在本例中为集群名称及其集群参数组名称。
aws docdb describe-db-clusters \ --db-cluster-identifier docdb-2019-05-07-13-57-08 \ --query 'DBClusters[*].[DBClusterIdentifier,DBClusterParameterGroup]'
此操作的输出如下所示(JSON格式)。
[ [ "docdb-2019-05-07-13-57-08", "
custom3-6-param-grp
" ] ]如果集群参数组的名称是
default
(例如,default.docdb3.6
),则您必须有一个自定义集群参数组,并将其设置为集群的参数组,然后才能继续。有关更多信息,请参阅以下主题:-
创建 Amazon DocumentDB 集群参数组 — 如果没有可以使用的自定义集群参数组,请创建一个。
-
修改 Amazon DocumentDB 集群 — 修改您的集群以使用自定义集群参数组。
确定
tls
集群参数的当前值。要获取有关此集群参数组的更多信息,请使用带以下参数的
describe-db-cluster-parameters
操作:--db-cluster-parameter-group-name
– 必需。使用上一个命令输出中的集群参数组名称。--query
— 可选。查询将输出限制为仅感兴趣的字段,在本例中为ParameterName
、ParameterValue
、AllowedValues
和ApplyType
。
aws docdb describe-db-cluster-parameters \ --db-cluster-parameter-group-name
custom3-6-param-grp
\ --query 'Parameters[*].[ParameterName,ParameterValue,AllowedValues,ApplyType]'此操作的输出如下所示(JSON格式)。
[ [ "audit_logs", "disabled", "enabled,disabled", "dynamic" ], [
"tls", "disabled", "disabled,enabled,fips-140-3", "static"
], [ "ttl_monitor", "enabled", "disabled,enabled", "dynamic" ] ]-
修改
tls
集群参数的值。如果
tls
的值不是所需的,则为此集群参数组修改其值。要更改tls
集群参数的值,请使用带以下参数的modify-db-cluster-parameter-group
操作。--db-cluster-parameter-group-name
– 必需。要修改的集群参数组的名称。不能是default.*
集群参数组。--parameters
– 必需。要修改的集群参数组的参数列表。-
ParameterName
– 必需。要修改的集群参数的名称。 -
ParameterValue
– 必需。此集群参数的新值。必须是集群参数的AllowedValues
之一。-
enabled
— 集群接受使用 1.0 到 1.3 TLS 版本的安全连接。 -
disabled
— 集群不接受使用进行安全连接TLS。 fips-140-3
— 根据《联邦信息处理标准》(FIPS) 出版物 140-3 的要求,群集仅接受安全连接。只有以下地区的亚马逊 DocumentDB 5.0(引擎版本 3.0.3727)集群才支持此功能:ca-central-1、us-west-2、us-east-1、us-east-2、us-east-2、-1、-1、-1。 us-gov-east us-gov-west
-
-
ApplyMethod
— 何时应用此修改。对于静态集群参数(如tle
),此值必须为pending-reboot
。-
pending-reboot
— 仅在重启后才将更改应用到实例。您必须分别重启每个集群实例,以便此更改在所有集群实例上生效。
-
-
以下代码禁用
tls
,在重启时将更改应用到每个数据库实例。aws docdb modify-db-cluster-parameter-group \ --db-cluster-parameter-group-name custom3-6-param-grp \ --parameters "ParameterName=tls,ParameterValue=disabled,ApplyMethod=pending-reboot"
以下代码启用
tls
(版本 1.0 到 1.3)在每个实例重启时将更改应用于每个实例。aws docdb modify-db-cluster-parameter-group \ --db-cluster-parameter-group-name custom3-6-param-grp \ --parameters "ParameterName=tls,ParameterValue=enabled,ApplyMethod=pending-reboot"
以下代码TLS使用启用
fips-140-3
,在每个数据库实例重启时将更改应用于每个数据库实例。aws docdb modify-db-cluster-parameter-group \ ‐‐db-cluster-parameter-group-name custom5-0-param-grp \ ‐‐parameters "ParameterName=tls,ParameterValue=fips-140-3,ApplyMethod=pending-reboot"
此操作的输出如下所示(JSON格式)。
{ "DBClusterParameterGroupName": "custom3-6-param-grp" }
-
重启 Amazon DocumentDB 实例
重启集群的每个实例,以便将更改应用到集群中的所有实例。要重启 Amazon DocumentDB 实例,请使用具有以下参数的
reboot-db-instance
操作。--db-instance-identifier
– 必需。要重启的实例的标识符。
以下代码将重启实例
sample-db-instance
。对于 Linux、macOS 或 Unix:
aws docdb reboot-db-instance \ --db-instance-identifier
sample-db-instance
对于 Windows:
aws docdb reboot-db-instance ^ --db-instance-identifier
sample-db-instance
此操作的输出如下所示(JSON格式)。
{ "DBInstance": { "AutoMinorVersionUpgrade": true, "PubliclyAccessible": false, "PreferredMaintenanceWindow": "fri:09:32-fri:10:02", "PendingModifiedValues": {}, "DBInstanceStatus": "rebooting", "DBSubnetGroup": { "Subnets": [ { "SubnetStatus": "Active", "SubnetAvailabilityZone": { "Name": "us-east-1a" }, "SubnetIdentifier": "subnet-4e26d263" }, { "SubnetStatus": "Active", "SubnetAvailabilityZone": { "Name": "us-east-1c" }, "SubnetIdentifier": "subnet-afc329f4" }, { "SubnetStatus": "Active", "SubnetAvailabilityZone": { "Name": "us-east-1e" }, "SubnetIdentifier": "subnet-b3806e8f" }, { "SubnetStatus": "Active", "SubnetAvailabilityZone": { "Name": "us-east-1d" }, "SubnetIdentifier": "subnet-53ab3636" }, { "SubnetStatus": "Active", "SubnetAvailabilityZone": { "Name": "us-east-1b" }, "SubnetIdentifier": "subnet-991cb8d0" }, { "SubnetStatus": "Active", "SubnetAvailabilityZone": { "Name": "us-east-1f" }, "SubnetIdentifier": "subnet-29ab1025" } ], "SubnetGroupStatus": "Complete", "DBSubnetGroupDescription": "default", "VpcId": "vpc-91280df6", "DBSubnetGroupName": "default" }, "PromotionTier": 2, "DBInstanceClass": "db.r5.4xlarge", "InstanceCreateTime": "2018-11-05T23:10:49.905Z", "PreferredBackupWindow": "00:00-00:30", "KmsKeyId": "arn:aws:kms:us-east-1:012345678901:key/0961325d-a50b-44d4-b6a0-a177d5ff730b", "StorageEncrypted": true, "VpcSecurityGroups": [ { "Status": "active", "VpcSecurityGroupId": "sg-77186e0d" } ], "EngineVersion": "3.6.0", "DbiResourceId": "db-SAMPLERESOURCEID", "DBInstanceIdentifier": "sample-cluster-instance-00", "Engine": "docdb", "AvailabilityZone": "us-east-1a", "DBInstanceArn": "arn:aws:rds:us-east-1:012345678901:db:sample-cluster-instance-00", "BackupRetentionPeriod": 1, "Endpoint": { "Address": "sample-cluster-instance-00.corcjozrlsfc.us-east-1.docdb.amazonaws.com", "Port": 27017, "HostedZoneId": "Z2R2ITUGPM61AM" }, "DBClusterIdentifier": "sample-cluster" } }
实例重启需要几分钟时间。只有在实例状态为 available (可用) 时,才能使用实例。您可以使用控制台或 AWS CLI监控实例状态。有关更多信息,请参阅 监控 Amazon DocumentDB 实例的状态。