環境帳戶連線 - AWS Proton

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

環境帳戶連線

概觀

了解如何在一個帳戶中建立和管理 AWS Proton 環境,並在另一個帳戶中佈建其基礎設施資源。這有助於大規模提高可見性和效率。環境帳戶連線僅支援使用 AWS CloudFormation 基礎設施做為程式碼的標準佈建。

注意

本主題中的資訊與使用AWS 受管佈建設定的環境有關。透過使用自我管理佈建設定的環境, AWS Proton 不會直接佈建您的基礎設施。反之,它會傳送提取請求 PRs) 到您的儲存庫以進行佈建。您有責任確保您的自動化程式碼擔任正確的身分和角色。

如需佈建方法的詳細資訊,請參閱 如何 AWS Proton 佈建基礎設施

術語

描述單一 帳戶 (管理帳戶) 中 AWS Proton 資源的圖表 AWS 區域。它還顯示了該帳戶中 AWS Proton 的環境如何使用環境帳戶連線部署到相同區域中的其他帳戶 (環境帳戶)。

透過 AWS Proton 環境帳戶連線,您可以從一個帳戶建立 AWS Proton 環境,並在另一個帳戶中佈建其基礎設施。

管理帳戶

您身為管理員的單一帳戶,會建立在另一個 AWS Proton 環境帳戶中佈建基礎設施資源的環境

環境帳戶

當您在另一個帳戶中建立 AWS Proton 環境時,環境基礎設施佈建所在的帳戶。

環境帳戶連線

管理帳戶環境帳戶之間的安全雙向連線。它會維護授權和許可,如以下各節所述。

當您在特定區域中的環境帳戶中建立環境帳戶連線時,只有相同區域中的管理帳戶才能查看並使用環境帳戶連線。這表示在管理帳戶中建立 AWS Proton 的環境和在環境帳戶中佈建的環境基礎設施必須位於相同的 區域。

環境帳戶連線考量事項

  • 對於要在環境帳戶中佈建的每個環境,您需要環境帳戶連線。

  • 如需環境帳戶連線配額的相關資訊,請參閱 AWS Proton 配額

標記

在環境帳戶中,使用 主控台或 AWS CLI 來檢視和管理環境帳戶連線客戶受管標籤。環境帳戶連線不會產生受 AWS 管標籤。如需詳細資訊,請參閱AWS Proton 資源和標記

在一個帳戶中建立環境,並在另一個帳戶中佈建其基礎設施

若要從單一管理帳戶建立和佈建環境,請為您計劃建立的環境設定環境帳戶。

從環境帳戶中開始並建立連線。

在環境帳戶中,建立範圍縮小為僅佈建環境基礎設施資源所需的許可 AWS Proton 的服務角色。如需詳細資訊,請參閱AWS Proton 使用 佈建的 服務角色 AWS CloudFormation

然後,建立環境帳戶連線請求並將其傳送至您的管理帳戶。接受請求時, AWS Proton 可以使用在相關聯環境帳戶中允許環境資源佈建的相關聯 IAM 角色。

在管理帳戶中,接受或拒絕環境帳戶連線。

在管理帳戶中,接受或拒絕環境帳戶連線請求。您無法從管理帳戶刪除環境帳戶連線。

如果您接受請求, AWS Proton 可以使用相關環境帳戶中允許資源佈建的相關聯 IAM 角色。

環境基礎設施資源會在相關聯的環境帳戶中佈建。您只能使用 AWS Proton APIs 從管理帳戶存取和管理環境及其基礎設施資源。如需詳細資訊,請參閱在一個帳戶中建立環境,並在另一個帳戶中佈建更新環境

拒絕請求後,您就無法接受或使用遭拒絕的環境帳戶連線。

注意

您無法拒絕連線至環境的環境帳戶連線。若要拒絕環境帳戶連線,您必須先刪除相關聯的環境。

在環境帳戶中,存取佈建的基礎設施資源。

在環境帳戶中,您可以檢視和存取佈建的基礎設施資源。例如,您可以視需要使用 CloudFormation API 動作來監控和清除堆疊。您無法使用 AWS Proton API 動作來存取或管理用來佈建基礎設施資源 AWS Proton 的環境。

在環境帳戶中,您可以刪除您在環境帳戶中建立的環境帳戶連線。您無法接受或拒絕它們。如果您刪除環境正在使用的環境帳戶連線 AWS Proton , AWS Proton 在環境帳戶和具名環境接受新的環境連線之前, 將無法管理環境基礎設施資源。您有責任清除在沒有環境連線的情況下保留的佈建資源。

使用 主控台或 CLI 來管理環境帳戶連線

您可以使用 主控台或 CLI 來建立和管理環境帳戶連線。

AWS Management Console
使用 主控台建立環境帳戶連線,並將請求傳送至管理帳戶,如後續步驟所示。
  1. 決定您計劃在管理帳戶中建立的環境名稱,或選擇需要環境帳戶連線的現有環境名稱。

  2. 在環境帳戶中的 AWS Proton 主控台中,選擇導覽窗格中的環境帳戶連線

  3. 環境帳戶連線頁面中,選擇請求連線

    注意

    驗證環境帳戶連線頁面標題中列出的帳戶 ID。請確定它與您要指定環境佈建的環境帳戶的帳戶 ID 相符。

  4. 請求連線頁面中:

    1. 連線至管理帳戶區段中,輸入您在步驟 1 中輸入的管理帳戶 ID環境名稱

    2. 環境角色區段中,選擇新服務角色,並 AWS Proton 自動為您建立新的角色。或者,選取現有服務角色和您先前建立的服務角色名稱。

      注意

      AWS Proton 自動為您建立的角色具有廣泛的許可。建議您將角色範圍縮小為佈建環境基礎設施資源所需的許可。如需詳細資訊,請參閱AWS Proton 使用 佈建的 服務角色 AWS CloudFormation

    3. (選用) 在標籤區段中,選擇新增標籤,為您的環境帳戶連線建立客戶受管標籤。

    4. 選擇請求連線

  5. 您的請求會在傳送至管理帳戶資料表的環境連線中顯示為待定,而模態可讓您了解如何接受來自管理帳戶的請求。

接受或拒絕環境帳戶連線請求。
  1. 在管理帳戶中的 AWS Proton 主控台中,選擇導覽窗格中的環境帳戶連線

  2. 環境帳戶連線頁面的環境帳戶連線請求表中,選擇要接受或拒絕的環境連線請求。

    注意

    驗證環境帳戶連線頁面標題中列出的帳戶 ID。請確定它符合與要拒絕的環境帳戶連線相關聯的管理帳戶的帳戶 ID。拒絕此環境帳戶連線後,您就無法接受或使用遭拒絕的環境帳戶連線。

  3. 選擇拒絕接受

    • 如果您選取拒絕,狀態會從待定變更為拒絕

    • 如果您選取接受,狀態會從待定變更為已連線

刪除環境帳戶連線。
  1. 在環境帳戶中的 AWS Proton 主控台中,選擇導覽窗格中的環境帳戶連線

    注意

    驗證環境帳戶連線頁面標題中列出的帳戶 ID。請確定它符合與要拒絕的環境帳戶連線相關聯的管理帳戶的帳戶 ID。刪除此環境帳戶連線後, AWS Proton 無法管理環境帳戶中的環境基礎設施資源。只有在環境帳戶的新環境帳戶連線,且 管理帳戶接受具名環境之後,才能管理它。

  2. 環境帳戶連線頁面的傳送連線至管理帳戶請求區段中,選擇刪除

  3. 模態會提示您確認要刪除。選擇 刪除

AWS CLI

決定您計劃在管理帳戶中建立的環境名稱,或選擇需要環境帳戶連線的現有環境名稱。

在環境帳戶中建立環境帳戶連線。

執行以下命令:

$ aws proton create-environment-account-connection \ --environment-name "simple-env-connected" \ --role-arn "arn:aws:iam::222222222222:role/service-role/env-account-proton-service-role" \ --management-account-id "111111111111"

回應:

{ "environmentAccountConnection": { "arn": "arn:aws:proton:region-id:222222222222:environment-account-connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "environmentAccountId": "222222222222", "environmentName": "simple-env-connected", "id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "lastModifiedAt": "2021-04-28T23:13:50.847000+00:00", "managementAccountId": "111111111111", "requestedAt": "2021-04-28T23:13:50.847000+00:00", "roleArn": "arn:aws:iam::222222222222:role/service-role/env-account-proton-service-role", "status": "PENDING" } }

接受或拒絕管理帳戶中的環境帳戶連線,如下列命令和回應所示。

注意

如果您拒絕此環境帳戶連線,您將無法接受或使用拒絕的環境帳戶連線。

如果您指定拒絕,狀態會從待定變更為拒絕

如果您指定接受,狀態會從待定變更為已連線

執行下列命令以接受環境帳戶連線:

$ aws proton accept-environment-account-connection \ --id "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"

回應:

{ "environmentAccountConnection": { "arn": "arn:aws:proton:region-id:222222222222:environment-account-connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "environmentAccountId": "222222222222", "environmentName": "simple-env-connected", "id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "lastModifiedAt": "2021-04-28T23:15:33.486000+00:00", "managementAccountId": "111111111111", "requestedAt": "2021-04-28T23:13:50.847000+00:00", "roleArn": "arn:aws:iam::222222222222:role/service-role/env-account-proton-service-role", "status": "CONNECTED" } }

執行下列命令以拒絕環境帳戶連線:

$ aws proton reject-environment-account-connection \ --id "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"

回應:

{ "environmentAccountConnection": { "arn": "arn:aws:proton:us-east-1:222222222222:environment-account-connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "status": "REJECTED", "environmentAccountId": "222222222222", "environmentName": "simple-env-reject", "id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "lastModifiedAt": "2021-04-28T23:13:50.847000+00:00", "managementAccountId": "111111111111", "requestedAt": "2021-04-28T23:13:50.847000+00:00", "roleArn": "arn:aws:iam::222222222222:role/service-role/env-account-proton-service-role" } }

檢視環境帳戶的連線。您可以取得列出環境帳戶連線

執行下列 get 命令:

$ aws proton get-environment-account-connection \ --id "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"

回應:

{ "environmentAccountConnection": { "arn": "arn:aws:proton:region-id:222222222222:environment-account-connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "environmentAccountId": "222222222222", "environmentName": "simple-env-connected", "id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "lastModifiedAt": "2021-04-28T23:15:33.486000+00:00", "managementAccountId": "111111111111", "requestedAt": "2021-04-28T23:13:50.847000+00:00", "roleArn": "arn:aws:iam::222222222222:role/service-role/env-account-proton-service-role", "status": "CONNECTED" } }

刪除環境帳戶中的環境帳戶連線。

注意

如果您刪除此環境帳戶連線,在環境帳戶和具名環境已接受新的環境連線之前, AWS Proton 將無法管理環境帳戶中的環境基礎設施資源。您有責任清除在沒有環境連線的情況下保留的佈建資源。

執行以下命令:

$ aws proton delete-environment-account-connection \ --id "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"

回應:

{ "environmentAccountConnection": { "arn": "arn:aws:proton:us-east-1:222222222222:environment-account-connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "environmentAccountId": "222222222222", "environmentName": "simple-env-connected", "id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "lastModifiedAt": "2021-04-28T23:13:50.847000+00:00", "managementAccountId": "111111111111", "requestedAt": "2021-04-28T23:13:50.847000+00:00", "roleArn": "arn:aws:iam::222222222222:role/service-role/env-account-proton-service-role", "status": "CONNECTED" } }