本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
步骤 4:为VPC终端节点连接配置权限
本步骤中的过程演示如何配置规则和权限,以便在 Amazon Keyspac VPC es 中使用终端节点。
为新终端节点配置入站规则以允许TCP入站流量
-
在 Amazon VPC 控制台的左侧面板上,选择终端节点,然后选择您在前面的步骤中创建的终端节点。
-
选择安全组,然后选择与该端点关联的安全组。
-
选择入站规则,然后选择 编辑入站规则。
-
添加一条入站规则,键入为 CQLSH/CASSANDRA。这会将端口范围自动设置成 9142。
-
选择保存规则以保存新入站规则。
配置IAM用户权限
-
确认用于连接 Amazon Keyspaces 的IAM用户是否具有相应的权限。在 Amazon Identity and Access Management (IAM) 中,您可以使用 Amazon 托管策略
AmazonKeyspacesReadOnlyAccess
向IAM用户授予对 Amazon Keyspaces 的读取权限。登录 Amazon Web Services Management Console 并打开IAM控制台,网址为https://console.aws.amazon.com/iam/
。 -
在IAM控制台仪表板上,选择用户,然后从列表中选择您的IAM用户。
-
在 Summary (摘要) 页上,选择 Add permissions (添加权限)。
-
选择直接附加现有策略。
-
从策略列表中选择 AmazonKeyspacesReadOnlyAccess,然后选择下一步:查看。
-
选择添加权限。
-
确认您可以通过终端节点访问 Amazon Keyspaces。VPC
aws keyspaces list-tables --keyspace-name '
my_Keyspace
'如果你愿意,你可以尝试使用其他一些针对 Amazon Keyspaces 的 Amazon CLI 命令。有关更多信息,请参阅 Amazon CLI 命令参考。
注意
IAM用户或角色访问 Amazon Keyspaces 所需的最低权限是系统表的读取权限,如以下策略所示。有关基于策略的权限的更多信息,请参阅 Amazon Keyspaces 基于身份的策略示例。
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "cassandra:Select" ], "Resource":[ "arn:aws:cassandra:us-east-1:555555555555:/keyspace/system*" ] } ] }
-
使用授予IAM用户对 Amazon EC2 实例的读取权限VPC。
当您使用带有VPC终端节点的 Amazon Keyspaces 时,您需要向访问亚马逊密钥空间的IAM用户或角色授予对您的EC2亚马逊实例的只读权限以及收集终端节点和VPC网络接口数据的权限。Amazon Keyspaces 将这一信息存储在
system.peers
表中,并使用它来管理连接。注意
托管策略
AmazonKeyspacesReadOnlyAccess_v2
AmazonKeyspacesFullAccess
包括让 Amazon Keyspaces 访问亚马逊EC2实例以读取有关可用接口VPC终端节点的信息所需的权限。登录 Amazon Web Services Management Console 并打开IAM控制台,网址为https://console.aws.amazon.com/iam/
。 -
在IAM控制台仪表板上,选择策略。
-
选择创建策略,然后选择JSON选项卡。
-
复制以下策略并选择下一步:标签。
{ "Version":"2012-10-17", "Statement":[ { "Sid":"ListVPCEndpoints", "Effect":"Allow", "Action":[ "ec2:DescribeNetworkInterfaces", "ec2:DescribeVpcEndpoints" ], "Resource": "*" } ] }
-
选择下一步:查看,输入策略的名称
keyspacesVPCendpoint
,然后选择创建策略。 -
在IAM控制台仪表板上,选择用户,然后从列表中选择您的IAM用户。
-
在 Summary (摘要) 页上,选择 Add permissions (添加权限)。
-
选择直接附加现有策略。
-
从策略列表中选择 keyspacesVPCendpoint,然后选择下一步:查看。
-
选择添加权限。
-
要验证 Amazon Keyspaces
system.peers
表是否正在更新VPC信息,请使用从您的亚马逊EC2实例运行以下查询。cqlsh
如果您尚未在步骤 2 中在 Amazon EC2 实例cqlsh
上安装,请按照中的说明进行操作使用 cqlsh-expansion 连接 Amazon Keyspaces。SELECT peer FROM system.peers;
输出返回具有私有 IP 地址的节点,具体取决于您VPC所在 Amazon 地区的子网设置。
peer --------------- 112.11.22.123 112.11.22.124 112.11.22.125
注意
您必须使用与 Amazon Keyspaces 的
cqlsh
连接来确认您的VPC终端节点配置正确。如果您在中使用本地环境或使用 Amazon Keyspaces CQL 编辑器 Amazon Web Services Management Console,则连接将自动通过公有终端节点而不是您的VPC终端节点进行。如果您看到九个 IP 地址,则这些地址是 Amazon Keyspaces 针对公有端点连接自动写入system.peers
表的条目。