共用 AWS CodeCommit 儲存庫 - AWS CodeCommit

AWS CodeCommit 不再提供給新客戶。的現有客戶 AWS CodeCommit 可以繼續正常使用服務。進一步了解"

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

共用 AWS CodeCommit 儲存庫

建立 CodeCommit 儲存庫之後,您可以與其他使用者共用儲存庫。首先,判斷您在存取 時是否將使用聯合存取、臨時憑證,還是 IAM Identity Center 等 Web 身分提供者 CodeCommit,或者您是否要將 Git 憑證或SSH金鑰對與IAM使用者搭配使用。如果您使用的是前者,則需要設定身分提供者的使用者、存取權和許可,然後提供使用者使用 的指示git-remote-codecommit。如需詳細資訊,請參閱 HTTPS 連線的設定步驟AWS CodeCommit與git-remote-codecommit使用旋轉認證連線至AWS CodeCommit儲存庫

您無法搭配聯合存取或身分提供者使用 Git 憑證或SSH金鑰對,但許多憑證IDEs最適合使用這些憑證。在此情況下,請決定在複製和使用 Git 用戶端或 IDE連線到您的儲存庫時,向使用者推薦哪個通訊協定 (HTTPS 或 SSH)。然後將 URL和 連線資訊傳送給您要與其共用儲存庫的使用者。根據您的安全需求,共用儲存庫也可能需要建立IAM群組、將受管政策套用至該群組,以及編輯IAM政策以精簡存取,或建立和使用IAM角色。

注意

授予使用者對儲存庫的主控台存取之後,這些使用者即可直接在主控台中新增或編輯檔案,而不需設定 Git 用戶端或其他連線。如需詳細資訊,請參閱 建立檔案或將檔案新增至AWS CodeCommit儲存庫編輯AWS CodeCommit儲存庫中檔案的內容

這些指示的撰寫是假設您已完成設定 建立 儲存庫中的步驟。

注意

根據您的用量,您可能需要支付建立或存取儲存庫的費用。如需詳細資訊,請參閱 CodeCommit 產品資訊頁面上的定價

選擇要與使用者共用的連線通訊協定

當您在 中建立儲存庫時 CodeCommit,會產生兩個端點:一個用於HTTPS連線,另一個用於SSH連線。兩者都提供網路上的安全連線。您的使用者可以使用任一通訊協定。無論您建議使用者採用哪個通訊協定,這兩個端點都保持在作用中。

HTTPS 連線需要下列任一條件:

  • Git 憑證,IAM使用者可以在 中自行產生IAM。Git 登入資料是儲存庫的使用者設定並使用的最簡單方法。

  • 要擔任的 AWS 存取金鑰或角色,您的儲存庫使用者必須在其憑證設定檔中設定。您可以設定 git-remote-codecommit (建議使用) 或 AWS CLI隨附的登入資料協助程式。根帳戶或聯合身分使用者只能使用這些方法。

SSH 連線需要您的使用者:

  • 產生公私金鑰對。

  • 存放公有金鑰。

  • 將公有金鑰與其IAM使用者建立關聯。

  • 在使用者自己的本機電腦上設定已知的主機檔案。

  • 在使用者自己的本機電腦上建立和維護設定檔。

由於這是一個更複雜的組態程序,我們建議您選擇 HTTPS和 Git 憑證來連線至 CodeCommit。

如需有關 HTTPS、SSH、Git、 git-remote-codecommit和 遠端儲存庫的詳細資訊,請參閱 設定 使用旋轉認證連線至AWS CodeCommit儲存庫或參閱您的 Git 文件。如需通訊協定的一般概觀,以及每個通訊協定如何與遠端儲存庫通訊的詳細資訊,請參閱概觀伺服器上的 Git - 通訊協定

注意

雖然 Git 支援各種連線通訊協定, CodeCommit 但 不支援使用不安全通訊協定的連線,例如本機通訊協定或一般 HTTP。

為您的儲存庫建立IAM政策

AWS 在 中IAM為 提供三個受管政策 CodeCommit。這些政策無法編輯並套用至與您的 Amazon Web Services 帳戶相關聯的所有儲存庫。不過,您可以使用這些政策做為範本,以建立只套用至您想要共用的儲存庫的自訂受管政策。您的客戶受管政策可以特別套用至您想要共用的儲存庫。如需詳細資訊,請參閱 受管政策和IAM使用者和群組

提示

若要更精細地控制對儲存庫的存取,您可以建立多個客戶受管政策,並將政策套用至不同的IAM使用者和群組。

如需有關檢閱受管政策的內容,以及使用政策來建立和套用許可的資訊,請參閱AWS CodeCommit的身分驗證與存取控制

為您的儲存庫建立客戶受管政策
  1. 登入 AWS Management Console 並在 開啟IAM主控台https://console.aws.amazon.com/iam/

  2. Dashboard (儀表板) 導覽區域中,選擇 Policies (政策),然後選擇 Create Policy (建立政策)

  3. 建立政策頁面上,選擇匯入受管政策

  4. 匯入受管政策頁面的篩選政策 中,輸入 AWSCodeCommitPowerUser。選擇政策名稱旁的按鈕,然後選擇匯入

  5. 建立政策頁面上,選擇 JSON。使用 CodeCommit 儲存庫的 Amazon Resource Name (ARN) 取代 CodeCommit 動作Resource行的「*」部分,如下所示:

    "Resource": [ "arn:aws:codecommit:us-east-2:111111111111:MyDemoRepo" ]
    提示

    若要尋找 CodeCommit 儲存庫ARN的 ,請前往 CodeCommit 主控台,從清單中選擇儲存庫名稱,然後選擇設定 。如需詳細資訊,請參閱檢視儲存庫詳細資訊

    如果您希望此政策套用到多個儲存庫,請指定每個儲存庫的 ,將其新增為 資源ARN。在每個資源陳述式之間包含逗號,如下所示:

    "Resource": [ "arn:aws:codecommit:us-east-2:111111111111:MyDemoRepo", "arn:aws:codecommit:us-east-2:111111111111:MyOtherDemoRepo" ]

    完成編輯後,請選擇檢閱政策

  6. 檢閱政策頁面的名稱 中,輸入政策的新名稱 (例如,AWSCodeCommitPowerUser-MyDemoRepo)。 選擇性地提供此政策的描述。

  7. 選擇 建立政策

為儲存庫使用者建立IAM群組

若要管理對儲存庫的存取,請為其使用者建立IAM群組、將IAM使用者新增至該群組,然後連接您在上一個步驟中建立的客戶受管政策。或者,您可以建立具有連接客戶受管政策的角色,並讓使用者擔任該角色。

如果您使用 SSH,則必須將另一個受管政策連接至 IAMUserSSHKeys群組,該受IAM管政策允許使用者上傳其SSH公有金鑰,並將其與其用於連線至 IAM的使用者建立關聯 CodeCommit。

  1. 登入 AWS Management Console 並在 開啟IAM主控台https://console.aws.amazon.com/iam/

  2. Dashboard (儀表板) 導覽區域中,選擇 Groups (群組),然後選擇 Create New Group (建立新的群組)

  3. 設定群組名稱頁面上的群組名稱 中,輸入群組的名稱 (例如,MyDemoRepoGroup),然後選擇下一步。請考慮將儲存庫名稱包含於群組名稱中。

    注意

    此名稱在 Amazon Web Services 帳戶中必須是唯一的。

  4. 選取您在上一節中建立的客戶受管政策旁的方塊 (例如 AWSCodeCommitPowerUser-MyDemoRepo)。

  5. Review (檢閱) 頁面上,選擇 Create Group (建立群組)。IAM 會建立已連接指定政策的此群組。群組會出現在與您的 Amazon Web Services 帳戶相關聯的群組清單中。

  6. 從清單中選擇您的群組。

  7. 在群組摘要頁面上,選擇 Users (使用者) 標籤,然後選擇 Add Users to Group (新增使用者到群組)。在顯示與您的 Amazon Web Services 帳戶相關聯的所有使用者的清單中,選取您要允許其存取 CodeCommit 儲存庫的使用者旁邊的方塊,然後選擇新增使用者

    提示

    您可以使用 [Search (搜尋)] 方塊,依名稱快速尋找使用者。

  8. 新增使用者後,請關閉IAM主控台。

與您的使用者共用連線資訊

  1. https://console.aws.amazon.com/codesuite/Codecommit/home 開啟 CodeCommit 主控台。

  2. 在區域選取器中,選擇建立儲存庫 AWS 區域 的 。儲存庫是 特有的 AWS 區域。如需詳細資訊,請參閱區域和 Git 連線端點

  3. Repositories (儲存庫) 頁面上,選擇您要共用的儲存庫。

  4. 複製 URL中,選擇您希望使用者使用的通訊協定。這會複製連線通訊協定URL的複製。

  5. 向您的使用者傳送複製URL以及任何其他指示,例如安裝 AWS CLI、設定設定檔或安裝 Git。請務必包含連線通訊協定的組態資訊 (例如 HTTPS)。

下列電子郵件範例提供美國東部 (俄亥俄) (us-east-2) 區域中使用HTTPS連線通訊協定和 Git 憑證連線至 MyDemoRepo 儲存庫的使用者資訊。此電子郵件的撰寫是假設使用者已安裝 Git 且熟悉其使用方式。

I've created a CodeCommit repository for us to use while working on our project. The name of the repository is MyDemoRepo, and it is in the US East (Ohio) (us-east-2) region. Here's what you need to do in order to get started using it: 1. Make sure that your version of Git on your local computer is 1.7.9 or later. 2. Generate Git credentials for your IAM user by signing into the IAM console here: https://console.aws.amazon.com/iam/. Switch to the Security credentials tab for your IAM user and choose the Generate button in HTTPS Git credentials for CodeCommit. Make sure to save your credentials in a secure location! 3. Switch to a directory of your choice and clone the CodeCommit repository to your local machine by running the following command: git clone https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo my-demo-repo 4. When prompted for user name and password, use the Git credentials you just saved. That's it! If you'd like to learn more about using CodeCommit, you can start with the tutorial here.

您可以在 中找到完整的設定指示設定