使用 Neptune 的服務連結角色 - Amazon Neptune

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

使用 Neptune 的服務連結角色

Amazon Neptune AWS Identity and Access Management (IAM) 服務連結角色。服務連結角色是直接連結至 Neptune 的唯一IAM角色類型。服務連結角色由 Neptune 預先定義,並包含服務呼叫其他人所需的所有權限 AWS 代表您提供的服務。

重要

對於某些管理功能,Amazon Neptune 會使用與 Amazon 共用的操作技術RDS。這包括服務連結的角色和管理API權限。

服務連結角色可讓您更輕鬆使用 Neptune,因為您不需要手動新增必要許可。Neptune 定義其服務連結角色的許可,除非另有定義,否則僅有 Neptune 可以擔任其角色。定義的權限包括信任原則和權限原則,而且該權限原則無法附加至任何其他IAM實體。

您必須先刪除角色的相關資源,才能刪除角色。如此可保護您的 Neptune 資源,避免您不小心移除資源的存取許可。

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

Neptune 的服務連結角色許可

Neptune 使用AWSServiceRoleForRDS服務連結角色允許 Neptune 和 Amazon 呼RDS叫 AWS 代表您的資料庫執行個體的服務。AWSServiceRoleForRDS 服務連結角色信任 rds.amazonaws.com 服務來擔任該角色。

此角色許可政策允許 Neptune 對指定資源完成下列動作:

  • ec2 上的動作:

    • AssignPrivateIpAddresses

    • AuthorizeSecurityGroupIngress

    • CreateNetworkInterface

    • CreateSecurityGroup

    • DeleteNetworkInterface

    • DeleteSecurityGroup

    • DescribeAvailabilityZones

    • DescribeInternetGateways

    • DescribeSecurityGroups

    • DescribeSubnets

    • DescribeVpcAttribute

    • DescribeVpcs

    • ModifyNetworkInterfaceAttribute

    • RevokeSecurityGroupIngress

    • UnassignPrivateIpAddresses

  • sns 上的動作:

    • ListTopic

    • Publish

  • cloudwatch 上的動作:

    • PutMetricData

    • GetMetricData

    • CreateLogStream

    • PullLogEvents

    • DescribeLogStreams

    • CreateLogGroup

注意

您必須設定權限,才能允許IAM實體 (例如使用者、群組或角色) 建立、編輯或刪除服務連結角色。您可能會遇到下列錯誤訊息:

無法建立資源。請確認您擁有建立服務連結角色的許可。否則請等待,然後再試一次。

如果您看到此訊息,請確認您已啟用以下許可:

{ "Action": "iam:CreateServiceLinkedRole", "Effect": "Allow", "Resource": "arn:aws:iam::*:role/aws-service-role/rds.amazonaws.com/AWSServiceRoleForRDS", "Condition": { "StringLike": { "iam:AWSServiceName":"rds.amazonaws.com" } } }

如需詳細資訊,請參閱IAM使用指南中的服務連結角色權限

建立 Neptune 的服務連結角色

您不需要手動建立一個服務連結角色。當您建立執行個體或叢集時,Neptune 會為您建立服務連結角色。

重要

若要深入瞭解,請參閱IAM使用者指南中的「我的IAM帳戶」中的「新角色」。

若您刪除此服務連結角色,之後需要再次建立,您可以在帳戶中使用相同程序重新建立角色。當您建立執行個體或叢集時,Neptune 會再次為您建立服務連結角色。

編輯 Neptune 的服務連結角色

Neptune 不允許您編輯 AWSServiceRoleForRDS 服務連結角色。因為有各種實體可能會參考服務連結角色,所以您無法在建立角色之後變更角色名稱。但是,您可以使用編輯角色的描述IAM。如需詳細資訊,請參閱IAM使用指南中的編輯服務連結角色

刪除 Neptune 的服務連結角色

若您不再使用需要服務連結角色的功能或服務,我們建議您刪除該角色。如此一來,您就沒有未主動監控或維護的未使用實體。不過,您必須先刪除您的所有執行個體和叢集,才能刪除關聯的服務連結角色。

刪除之前先清除服務連結角色

您必須先確認角色沒有作用中工作階段,並移除角色使用的所有資源,然後才能用IAM來刪除服務連結角色。

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

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

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

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

    注意

    如果您不確定 Neptune 是否正在使用 AWSServiceRoleForRDS 角色,可嘗試刪除該角色。如果服務正在使用該角色,則刪除會失敗,而您可以檢視正在使用該角色的 區域。如果服務正在使用該角色,您必須先等到工作階段結束,才能刪除該角色。您無法撤銷服務連結角色的工作階段。

如果您想要移除 AWSServiceRoleForRDS 角色,則必須先刪除您的所有執行個體和叢集。

刪除您的所有執行個體

使用下列其中一個程序來刪除您的每一個執行個體。

刪除執行個體 (主控台)
  1. 在打開 Amazon RDS 控制台https://console.aws.amazon.com/rds/

  2. 在導覽窗格中,選擇 Instances (執行個體)。

  3. Instances (執行個體) 清單中,選擇您要刪除的執行個體。

  4. 選擇 Instance actions (執行個體動作),然後選擇 Delete (刪除)。

  5. 若出現 Create final Snapshot? (是否建立最終快照?) 提示訊息,請選擇 Yes (是)No (否)

  6. 如果您在前一個步驟中選擇 Yes (是),則對於 Final snapshot name (最終快照名稱),輸入您的最終快照名稱。

  7. 選擇 刪除

若要刪除例證 (AWS CLI)

請參閱delete-db-instance中的 AWS CLI 指令參考

刪除執行個體 (API)

請參閱 DeleteDBInstance

刪除您的所有叢集

使用以下其中一個程序來刪除單一叢集,然後為每個叢集重複此程序。

刪除叢集 (主控台)
  1. 登入 AWS 管理主控台,然後在https://console.aws.amazon.com/neptune/家中開啟 Amazon Neptune 主控台。

  2. Clusters (叢集) 清單中,選擇您要刪除的叢集。

  3. 選擇 Cluster Actions (叢集動作),然後選擇 Delete (刪除)

  4. 選擇 刪除

刪除叢集 (CLI)

請參閱delete-db-cluster中的 AWS CLI 指令參考

刪除叢集 (API)

請參閱DeleteDBCluster

您可以使用IAM主控台IAMCLI、或刪IAMAPI除AWSServiceRoleForRDS服務連結角色。如需詳細資訊,請參閱IAM使用指南中的刪除服務連結角色