本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
專案共用可讓專案擁有者與其他 AWS 帳戶或使用者共用其 AWS CodeBuild 專案。在此模型中,擁有專案的帳戶 (擁有者) 將專案分享給其他帳戶 (消費者)。消費者無法編輯或執行專案。
共用專案
消費者可以使用 AWS CLI 和 AWS CodeBuild 主控台來檢視您已共用的專案和建置。消費者無法編輯或執行專案。
您可以將專案新增至現有的資源分享,或在 AWS RAM 主控台
注意
您無法刪除其建置已新增至資源分享的專案。
若要與組織單位或整個組織共用專案,必須啟用透過 AWS Organizations來共用的功能。如需詳細資訊,請參閱《AWS RAM 使用者指南》中的透過 AWS Organizations啟用共用。
您可以使用 AWS CodeBuild 主控台、 AWS RAM 主控台或 AWS CLI 來共用您擁有的專案。
共用專案的先決條件
開始共用專案之前,請確定 AWS 您的帳戶擁有該專案。您無法將已分享給您的專案再分享出去。
共用您擁有的專案 (CodeBuild 主控台)
開啟 AWS CodeBuild 主控台,網址為 https://console.aws.amazon.com/codesuite/codebuild/home
://www.。 -
在導覽窗格中,選擇 Build projects (建置專案)。
注意
根據預設,只會顯示最新的 10 個組建專案。若要檢視更多組建專案,請選擇齒輪圖示,然後針對 Projects per page (每頁顯示專案數) 選擇不同的值,或使用向前和向後箭頭。
-
選擇您要共用的專案,然後選擇 Share (共用)。如需詳細資訊,請參閱《AWS RAM 使用者指南》中的建立資源共用。
共用您擁有的專案AWS RAM (主控台)
請參閱AWS RAM 《 使用者指南》中的建立資源共享。
共用您擁有的專案 (AWS RAM 命令)
使用 create-resource-share 命令。
共用您擁有的專案 (CodeBuild 命令)
使用 put-resource-policy 命令:
-
建立名為
policy.json
的檔案,並將以下命令複製到其中。{ "Version":"2012-10-17", "Statement":[{ "Effect":"Allow", "Principal":{ "AWS":"
<consumer-aws-account-id-or-user>
" }, "Action":[ "codebuild:BatchGetProjects", "codebuild:BatchGetBuilds", "codebuild:ListBuildsForProject"], "Resource":"<arn-of-project-to-share>
" }] } -
使用專案 ARN 和識別符更新
policy.json
,以與之共用。下列範例會授予根使用者的唯讀存取權,該使用者為 123456789012 所識別 AWS 的帳戶。{ "Version":"2012-10-17", "Statement":[{ "Effect":"Allow", "Principal":{ "AWS": [ "123456789012" ] }, "Action":[ "codebuild:BatchGetProjects", "codebuild:BatchGetBuilds", "codebuild:ListBuildsForProject"], "Resource":"arn:aws:codebuild:us-west-2:123456789012:project/my-project" }] }
-
執行 put-resource-policy 命令。
aws codebuild put-resource-policy --resource-arn
<project-arn>
--policy file://policy.json -
取得 AWS RAM 資源共享 ARN。
aws ram list-resources --resource-owner SELF --resource-arns
<project-arn>
這將傳回類似以下的回應:
{ "resources": [ { "arn": "
<project-arn>
", "type": "<type>
", "resourceShareArn": "<resource-share-arn>
", "creationTime": "<creation-time>
", "lastUpdatedTime": "<last-update-time>
" } ] }從回應中,複製
<resource-share-arn>
值以用於下一個步驟。 -
執行 AWS RAM promote-resource-share-created-from-policy 命令。
aws ram promote-resource-share-created-from-policy --resource-share-arn
<resource-share-arn>
相關服務
專案共用與 AWS Resource Access Manager (AWS RAM) 整合,這項服務可讓您與任何 AWS 帳戶或透過 共用 AWS 資源 AWS Organizations。有了 AWS RAM,您可以建立資源共用,指定資源及要與之分享的消費者,以分享資源。消費者可以是 中的個別 AWS 帳戶 AWS Organizations、組織單位或整個組織 AWS Organizations。
如需詳細資訊,請參閱《AWS RAM 使用者指南》。