步驟 4:設定 VPC 端點連線的權限 - Amazon Keyspaces (適用於 Apache Cassandra)

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

步驟 4:設定 VPC 端點連線的權限

此步驟中的程序示範如何設定將 VPC 端點與 Amazon Keyspaces 搭配使用的規則和許可。

設定新端點的輸入規則以允許 TCP 輸入流量
  1. 在 Amazon VPC 主控台的左側面板上,選擇「端點」,然後選擇您在先前步驟中建立的端點。

  2. 選擇 [安全性群組],然後選擇與此端點相關聯的安全性群組。

  3. 選擇入站規則,然後選擇編輯入站規則

  4. 添加與類型作為 CQLSH /卡桑德拉的入站規則。這會將連接埠範圍自動設定為 9142

  5. 若要儲存新的輸入規則,請選擇 [儲存規則]。

若要設定 IAM 使用者許可
  1. 確認用來連線到 Amazon Keyspaces 的 IAM 使用者具有適當的許可。在 AWS Identity and Access Management (IAM) 中,您可以使用 AWS 受管政策授與 IAM 使用者AmazonKeyspacesReadOnlyAccess對 Amazon Keyspaces 的讀取存取權限。

    1. 登入 AWS Management Console 並開啟身分與存取權管理主控台,網址為 https://console.aws.amazon.com/iam/

    2. 在 IAM 主控台儀表板上,選擇 Users (使用者),然後從清單中選擇 IAM 使用者。

    3. Summary (摘要) 頁面上,選擇 Add permissions (新增許可)。

    4. 選擇 Attach existing policies directly (直接連接現有政策)。

    5. 從原則清單中選擇 [AmazonKeyspacesReadOnly存取權],然後選擇 [下一步:複查]。

    6. 選擇新增許可

  2. 確認您可以透過 VPC 端點存取 Amazon Keyspaces。

    aws keyspaces list-tables --keyspace-name 'my_Keyspace'

    如果你願意,你可以嘗試一些其他的 AWS CLI 命令 Amazon Keyspaces。如需詳細資訊,請參閱 AWS 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*" ] } ] }
  3. 使用 VPC 授予 IAM 使用者對 Amazon EC2 執行個體的讀取存取權限。

    將 Amazon Keyspaces 與 VPC 端點搭配使用時,您需要將存取 Amazon Keyspaces 唯讀許可的 IAM 使用者或角色授與 Amazon EC2 執行個體和 VPC,以收集端點和網路界面資料。Amazon Keyspaces 會將此資訊儲存在system.peers表格中,並使用它來管理連線。

    注意

    受管政策AmazonKeyspacesReadOnlyAccess_v2AmazonKeyspacesFullAccess包含允許 Amazon Keyspaces 存取 Amazon EC2 執行個體以讀取有關可用界面 VPC 端點的資訊的必要許可。

    1. 登入 AWS Management Console 並開啟身分與存取權管理主控台,網址為 https://console.aws.amazon.com/iam/

    2. 在 IAM 主控台儀表板上,選擇 [政策]。

    3. 選擇 [建立原則],然後選擇 [JSON] 索引標籤。

    4. 複製下列原則,然後選擇「下一步:標籤」。

      { "Version":"2012-10-17", "Statement":[ { "Sid":"ListVPCEndpoints", "Effect":"Allow", "Action":[ "ec2:DescribeNetworkInterfaces", "ec2:DescribeVpcEndpoints" ], "Resource": "*" } ] }
    5. 選擇下一步:複查,輸入策略keyspacesVPCendpoint的名稱,然後選擇建立策略

    6. 在 IAM 主控台儀表板上,選擇 Users (使用者),然後從清單中選擇 IAM 使用者。

    7. Summary (摘要) 頁面上,選擇 Add permissions (新增許可)。

    8. 選擇 Attach existing policies directly (直接連接現有政策)。

    9. 從策略清單中,選擇金鑰空間格點,然後選擇下一步:複查

    10. 選擇新增許可

  4. 若要確認 Amazon Keyspaces 資料system.peers表是否已使用 VPC 資訊更新,請使用從 Amazon EC2 執行個體執行下列查詢。cqlsh如果您在步驟 2 中尚未在 Amazon EC2 執行個體cqlsh上安裝,請按照中的指示進行使用連cqlsh-expansion接到 Amazon Keyspaces

    SELECT peer FROM system.peers;

    根據您所在地 AWS 區的 VPC 和子網路設定,輸出會傳回具有私有 IP 位址的節點。

    peer --------------- 112.11.22.123 112.11.22.124 112.11.22.125
    注意

    您必須使用 Amazon Keyspaces 的cqlsh連線,以確認您的 VPC 端點已正確設定。如果您使用本機環境或中的 Amazon Keyspaces CQL 編輯器 AWS Management Console,連線會自動透過公有端點而不是 VPC 端點進行。如果您看到九個 IP 地址,這些是 Amazon Keyspaces 為公用端點連接自動寫入system.peers表格的條目。