針對 Amazon Timestream for InfluxDB 使用服務連結角色 - Amazon Timestream

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

針對 Amazon Timestream for InfluxDB 使用服務連結角色

Amazon Timestream for InfluxDB 使用 AWS Identity and Access Management (IAM) 服務連結角色。服務連結角色是 IAM 角色的唯一類型,可直接連結至 AWS 服務,例如 Amazon Timestream for InfluxDB。Amazon Timestream for InfluxDB 服務連結角色由 Amazon Timestream for InfluxDB 預先定義。其中包括服務代表 dbinstance 呼叫 AWS 服務所需的所有許可。

服務連結角色可讓您更輕鬆地為 InfluxDB 設定 Amazon Timestream,因為您不需要手動新增必要的許可。這些角色已存在 AWS 於您的帳戶中,但會連結至 Amazon Timestream for InfluxDB 使用案例,並具有預先定義的許可。只有 Amazon Timestream for InfluxDB 可以擔任這些角色,而且只有這些角色可以使用預先定義的許可政策。您必須先刪除角色的相關資源,才能刪除角色。這可保護您的 Amazon Timestream for InfluxDB 資源,因為您不會不小心移除存取資源的必要許可。

如需有關支援服務連結角色的其他 服務的資訊,請參閱服務連結角色欄中AWS 與 IAM 搭配使用的服務,並尋找具有 Yes 的服務。選擇具有連結的,以檢視該服務的服務連結角色文件。

Amazon Timestream for InfluxDB 的服務連結角色許可

Amazon Timestream for InfluxDB 使用名為 AmazonTimestreamInfluxDBServiceRolePolicy Word的服務連結角色 – 此政策允許 Timestream for InfluxDB 根據需要代表您管理 AWS 資源,以管理您的叢集。

AmazonTimestreamInfluxDBServiceRolePolicy Word服務連結角色許可政策允許 Amazon Timestream for InfluxDB 在指定的資源上完成下列動作:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "DescribeNetworkStatement", "Effect": "Allow", "Action": [ "ec2:DescribeSubnets", "ec2:DescribeVpcs", "ec2:DescribeNetworkInterfaces" ], "Resource": "*" }, { "Sid": "CreateEniInSubnetStatement", "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterface" ], "Resource": [ "arn:aws:ec2:*:*:subnet/*", "arn:aws:ec2:*:*:security-group/*" ] }, { "Sid": "CreateEniStatement", "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterface" ], "Resource": "arn:aws:ec2:*:*:network-interface/*", "Condition": { "Null": { "aws:RequestTag/AmazonTimestreamInfluxDBManaged": "false" } } }, { "Sid": "CreateTagWithEniStatement", "Effect": "Allow", "Action": [ "ec2:CreateTags" ], "Resource": "arn:aws:ec2:*:*:network-interface/*", "Condition": { "Null": { "aws:RequestTag/AmazonTimestreamInfluxDBManaged": "false" }, "StringEquals": { "ec2:CreateAction": [ "CreateNetworkInterface" ] } } }, { "Sid": "ManageEniStatement", "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterfacePermission", "ec2:DeleteNetworkInterface" ], "Resource": "arn:aws:ec2:*:*:network-interface/*", "Condition": { "Null": { "aws:ResourceTag/AmazonTimestreamInfluxDBManaged": "false" } } }, { "Sid": "PutCloudWatchMetricsStatement", "Effect": "Allow", "Action": [ "cloudwatch:PutMetricData" ], "Condition": { "StringEquals": { "cloudwatch:namespace": [ "AWS/Timestream/InfluxDB", "AWS/Usage" ] } }, "Resource": [ "*" ] }, { "Sid": "ManageSecretStatement", "Effect": "Allow", "Action": [ "secretsmanager:CreateSecret", "secretsmanager:DeleteSecret" ], "Resource": [ "arn:aws:secretsmanager:*:*:secret:READONLY-InfluxDB-auth-parameters-*" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "${aws:PrincipalAccount}" } } } ] }

允許 IAM 實體建立 AmazonTimestreamInfluxDBServiceRolePolicy Word服務連結角色

將下列政策陳述式新增至該 IAM 實體的許可:

{ "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole", "iam:PutRolePolicy" ], "Resource": "arn:aws:iam::*:role/aws-service-role/timestreamforinfluxdb.amazonaws.com/AmazonTimestreamInfluxDBServiceRolePolicy*", "Condition": {"StringLike": {"iam:AWS ServiceName": "timestreamforinfluxdb.amazonaws.com"}} }

允許 IAM 實體刪除 AmazonTimestreamInfluxDBServiceRolePolicy Word服務連結角色

將下列政策陳述式新增至該 IAM 實體的許可:

{ "Effect": "Allow", "Action": [ "iam:DeleteServiceLinkedRole", "iam:GetServiceLinkedRoleDeletionStatus" ], "Resource": "arn:aws:iam::*:role/aws-service-role/timestreamforinfluxdb.amazonaws.com/AmazonTimestreamInfluxDBServiceRolePolicy*", "Condition": {"StringLike": {"iam:AWS ServiceName": "timestreamforinfluxdb.amazonaws.com"}} }

或者,您可以使用 AWS 受管政策來提供 Amazon Timestream for InfluxDB 的完整存取權。

建立服務連結角色 (IAM)

您不需要手動建立一個服務連結角色。當您建立資料庫執行個體時,Amazon Timestream for InfluxDB 會為您建立服務連結角色。

若您刪除此服務連結角色,之後需要再次建立,您可以在帳戶中使用相同程序重新建立角色。當您建立資料庫執行個體時,Amazon Timestream for InfluxDB 會再次為您建立服務連結角色。

編輯 Amazon Timestream for InfluxDB 的服務連結角色描述

Amazon Timestream for InfluxDB 不允許您編輯 AmazonTimestreamInfluxDBServiceRolePolicy Word服務連結角色。因為有各種實體可能會參考服務連結角色,所以您無法在建立角色之後變更角色名稱。不過,您可以使用 IAM 編輯角色的描述。

編輯服務連結角色描述 (IAM 主控台)

您可以使用 IAM 主控台來編輯服務連結角色描述。

編輯服務連結角色的說明 (主控台)
  1. 在 IAM 主控台的左側導覽窗格中,選擇角色

  2. 選擇要修改之角色的名稱。

  3. Role description (角色說明) 的最右邊,選擇 Edit (編輯)。

  4. 在方塊中輸入新的描述,然後選擇 Save (儲存)

編輯服務連結角色描述 (IAM CLI)

您可以從 使用 IAM 操作 AWS Command Line Interface 來編輯服務連結角色描述。

變更服務連結角色的描述 (CLI)
  1. (選用) 若要檢視角色的目前描述,請使用 AWS CLI for IAM 操作 get-role

    $ aws iam get-role --role-name AmazonTimestreamInfluxDBServiceRolePolicy

    使用角色名稱,而非 ARN,以參考具有 CLI 操作的角色。例如,如果角色具有下列 ARN:arn:aws:iam::123456789012:role/myrole,請將角色稱為 myrole

  2. 若要更新服務連結角色的描述,請使用 AWS CLI for IAM 操作 update-role-description

    Linux 和 MacOS

    $ aws iam update-role-description \ --role-name AmazonTimestreamInfluxDBServiceRolePolicy \ --description "new description"

    Windows

    $ aws iam update-role-description ^ --role-name AmazonTimestreamInfluxDBServiceRolePolicy ^ --description "new description"

編輯服務連結角色描述 (IAM API)

您可以使用 IAM API編輯服務連結角色描述。

變更服務連結角色的描述 (API)
  1. (選用) 若要檢視角色的目前描述,請使用 IAM API操作 GetRole.

    https://iam.amazonaws.com/ ?Action=GetRole &RoleName=AmazonTimestreamInfluxDBServiceRolePolicy &Version=2010-05-08 &AUTHPARAMS
  2. 若要更新角色的描述,請使用 IAM API UpdateRoleDescription.

    https://iam.amazonaws.com/ ?Action=UpdateRoleDescription &RoleName=AmazonTimestreamInfluxDBServiceRolePolicy &Version=2010-05-08 &Description="New description"

刪除 Amazon Timestream for InfluxDB 的服務連結角色

若您不再使用需要服務連結角色的功能或服務,我們建議您刪除該角色。如此一來,您就沒有未主動監控或維護的未使用實體。然而,務必清除您的服務連結角色,之後才能將其刪除。

Amazon Timestream for InfluxDB 不會為您刪除服務連結角色。

清除服務連結角色

在您使用 IAM 刪除服務連結角色之前,請先確認角色沒有與其相關聯的資源 (叢集)。

在 IAM 主控台中檢查服務連結角色是否具有作用中工作階段
  1. 登入 AWS Management Console 並在 IAM 開啟 https://console.aws.amazon.com/iam/ 主控台。

  2. 在 IAM 主控台的左側導覽窗格中,選擇角色。然後選擇 AmazonTimestreamInfluxDBServiceRolePolicy Word角色的名稱 (而非核取方塊)。

  3. 在所選角色的 Summary (摘要) 頁面中,選擇 Access Advisor (存取 Advisor) 分頁。

  4. Access Advisor (存取 Advisor) 分頁中,檢閱服務連結角色的近期活動。

刪除服務連結角色 (IAM 主控台)

您可以使用 IAM 主控台來刪除服務連結角色。

刪除服務連結角色 (主控台)
  1. 登入 AWS Management Console 並在 IAM 開啟 https://console.aws.amazon.com/iam/ 主控台。

  2. 在 IAM 主控台的左側導覽窗格中,選擇角色。然後,選擇您要刪除的角色名稱旁的核取方塊,而非名稱或資料列本身。

  3. 在頁面頂端的 Role (角色) 動作中選擇 Delete (刪除) 角色。

  4. 在確認頁面中,檢閱服務上次存取的資料,以顯示每個所選角色上次存取 AWS 服務的時間。這可協助您確認角色目前是否作用中。如果您想要繼續進行,請選擇 Yes, Delete (是,刪除) 來提交服務連結角色以進行刪除。

  5. 觀看 IAM 主控台通知,以監控服務連結角色刪除的進度。由於 IAM 服務連結角色刪除是非同步的,因此在您提交角色以供刪除之後,刪除任務可能會成功或失敗。如果任務失敗,您可以從通知中選擇 View details (檢視詳細資訊)View Resources (檢視資源),以了解刪除失敗的原因。

刪除服務連結角色 (CLI IAM)

您可以從 使用 IAM 操作 AWS Command Line Interface 來刪除服務連結角色。

刪除服務連結角色 (CLI)
  1. 如果您不知道想要刪除的服務連結角色名稱,請輸入以下命令。此命令會列出您帳戶中的角色及其 Amazon Resource Names (ARNs)。

    $ aws iam get-role --role-name role-name

    使用角色名稱,而非 ARN,以參考具有 CLI 操作的角色。例如,如果角色具有 ARN arn:aws:iam::123456789012:role/myrole,您會將角色稱為 myrole

  2. 因為無法刪除正在使用或具有相關聯資源的服務連結角色,所以您必須提交刪除要求。如果不符合這些條件,則可以拒絕該請求。您必須從回應中擷取 deletion-task-id,以檢查刪除任務的狀態。輸入下列內容,提交服務連結角色刪除請求。

    $ aws iam delete-service-linked-role --role-name role-name
  3. 輸入下列內容來檢查刪除任務的狀態。

    $ aws iam get-service-linked-role-deletion-status --deletion-task-id deletion-task-id

    刪除任務的狀態可以是 NOT_STARTEDIN_PROGRESSSUCCEEDEDFAILED。如果刪除失敗,則呼叫會傳回失敗原因,以進行疑難排解。

刪除服務連結角色 (API IAM)

您可以使用 IAM API刪除服務連結角色。

刪除服務連結角色 (API)
  1. 若要提交服務連結卷的刪除請求,請呼叫 DeleteServiceLinkedRole。 在請求中,指定角色名稱。

    因為無法刪除正在使用或具有相關聯資源的服務連結角色,所以您必須提交刪除要求。如果不符合這些條件,則可以拒絕該請求。您必須從回應中擷取 DeletionTaskId,以檢查刪除任務的狀態。

  2. 若要檢查刪除的狀態,請呼叫 GetServiceLinkedRoleDeletionStatus。 在請求中,指定 DeletionTaskId

    刪除任務的狀態可以是 NOT_STARTEDIN_PROGRESSSUCCEEDEDFAILED。如果刪除失敗,則呼叫會傳回失敗原因,以進行疑難排解。

InfluxDB Service 連結角色的 Amazon Timestream 支援區域

Amazon Timestream for InfluxDB 支援在所有提供服務的區域中使用服務連結角色。如需詳細資訊,請參閱 AWS 服務端點