AWS CodeCommit リポジトリを共有する - AWS CodeCommit

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS CodeCommit リポジトリを共有する

CodeCommit リポジトリを作成したら、他のユーザーと共有できます。まず、 にアクセスするときにフェデレーティッドアクセス、一時的な認証情報、または IAM Identity Center などのウェブ ID プロバイダーを使用するか CodeCommit、IAM ユーザーと Git 認証情報または SSH キーペアを使用するかを決定します。前者を使用する場合は、ID プロバイダーのユーザー、アクセス、アクセス許可を設定してから、ユーザーが git-remote-codecommit を使用するための手順を提供する必要があります。詳細については、「git-remote-codecommit を使用して AWS CodeCommit への HTTPS 接続をセットアップする手順」および「認証情報のローテーションを使用した AWS CodeCommit リポジトリへの接続」を参照してください。

フェデレーティッドアクセスまたは ID プロバイダーで Git 認証情報または SSH キーペアを使用することはできませんが、多くの IDE はこれらの認証情報に対して最適に機能します。この場合は、クローンを作成するときと Git クライアントや IDE を使用してリポジトリに接続するときにユーザーに推奨するプロトコル (HTTPS または SSH) を決定します。次に、リポジトリを共有するユーザーに URL と接続情報を送信します。セキュリティ要件によっては、リポジトリを共有する際、アクセスを詳細に設定するため、または IAM ロールを作成して使用するために、IAM グループの作成、このグループへの管理ポリシーの適用、IAM ポリシーの編集も合わせて必要になることがあります。

注記

コンソールからリポジトリへのアクセスをユーザーに許可したら、リポジトリユーザーは Git クライアントや他の接続を設定することなく、コンソールで直接ファイルを追加または編集できます。詳細については、「AWS CodeCommit リポジトリにファイルを作成または追加する」および「AWS CodeCommit リポジトリでファイルの内容を編集する」を参照してください。

これらの手順は、「セットアップ 」および「リポジトリの作成」のステップを既に完了していることを前提としています。

注記

使用状況によっては、リポジトリの作成またはアクセスに対して課金される場合があります。詳細については、 CodeCommit 製品情報ページのの料金」を参照してください。

接続プロトコルを選択してユーザーと共有する

でリポジトリを作成すると CodeCommit、HTTPS 接続用と SSH 接続用の 2 つのエンドポイントが生成されます。どちらもネットワーク経由で安全な接続を提供します。ユーザーは、いずれかのプロトコルを使用できます。ユーザーに推奨するプロトコルに関係なく、エンドポイントはいずれもアクティブの状態を維持します。

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 で 3 つの 管理ポリシーを提供します CodeCommit。これらのポリシーを編集したり、Amazon Web Services アカウントに関連付けられているすべてのリポジトリに適用したりすることはできません。ただし、これらのポリシーをテンプレートとして使用し、共有するリポジトリにのみ適用する独自のカスタム管理ポリシーを作成することができます。カスタマー管理ポリシーは、共有するリポジトリに特別に適用することができます。詳細については、「管理ポリシー」と「IAM ユーザーとグループ」を参照してください。

ヒント

リポジトリへのアクセスを詳細に制御するには、複数のカスタマー管理ポリシーを作成して、別の IAM ユーザーおよびグループに適用します。

管理ポリシーの内容の確認、およびポリシーを使用してアクセス許可を作成および適用する方法については、「AWS CodeCommit の認証とアクセスコントロール」を参照してください。

リポジトリのカスタマー管理ポリシーを作成します。
  1. にサインイン AWS Management Console し、https://console.aws.amazon.com/iam/ で IAM コンソールを開きます。

  2. [ダッシュボード] ナビゲーションエリアで、[ポリシー] を選択し、次に [ポリシーの作成] を選択します。

  3. [ポリシーの作成] ページで、[Import managed policy (マネージドポリシーのインポート)] を選択します。

  4. [Import managed policies (マネージドポリシーのインポート)] ページの [フィルタポリシー] に「AWSCodeCommitPowerUser」と入力します。ポリシー名の横にあるボタンを選択し、[インポート] を選択します。

  5. [Create policy] (ポリシーの作成) ページで [JSON] を選択します。次に示すように、 CodeCommit アクションのResource行の「*」部分を CodeCommit リポジトリの Amazon リソースネーム (ARN) に置き換えます。

    "Resource": [ "arn:aws:codecommit:us-east-2:111111111111:MyDemoRepo" ]
    ヒント

    CodeCommit リポジトリの ARN を検索するには、 CodeCommit コンソールに移動し、リストからリポジトリ名を選択し、設定 を選択します。詳細については、「 リポジトリの詳細の表示」を参照してください。

    このポリシーに複数のリポジトリを適用するには、リソースに ARN を指定して各リポジトリを追加します。次に示すように、各 Resource ステートメントはカンマで区切ります。

    "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 し、https://console.aws.amazon.com/iam/ で IAM コンソールを開きます。

  2. [ダッシュボード] ナビゲーションエリアで、[グループ] を選択し、次に [Create New Group (新しいグループの作成)] を選択します。

  3. グループ名の設定 ページのグループ名 で、グループの名前 (例: MyDemoRepoGroup) を入力し、次のステップ を選択します。ここで、グループ名の一部として、リポジトリ名を含めることを検討してください。

    注記

    この名前は、Amazon Web Services アカウント全体で一意である必要があります。

  4. 前のセクションで作成したカスタマー管理ポリシーの横にあるボックスを選択します (例: AWSCodeCommitPowerUser-MyDemoRepo)。

  5. [Review] ページで、[Create Group] を選択します。IAM は、指定されたポリシーが既にアタッチされた状態でこのグループを作成します。このグループは、アマゾン ウェブ サービスアカウントに関連付けられたグループのリストに表示されます。

  6. リストからグループを選択します。

  7. グループの概要ページで、[ユーザー] タブを選択し、次に [Add Users to Group (グループにユーザーを追加)] を選択します。Amazon Web Services アカウントに関連付けられているすべてのユーザーを示すリストで、 CodeCommit リポジトリへのアクセスを許可するユーザーの横にあるボックスを選択し、ユーザーの追加を選択します

    ヒント

    検索ボックスに名前を入力して、ユーザーをすばやく見つけることができます。

  8. ユーザーの追加が完了したら、IAM コンソールを閉じます。

接続情報をユーザーと共有する

  1. https://console.aws.amazon.com/codesuite/codecommit/home で CodeCommit コンソールを開きます。

  2. リージョンセレクタで、リポジトリ AWS リージョン が作成された を選択します。リポジトリは に固有です AWS リージョン。詳細については、「リージョンと Git 接続エンドポイント」を参照してください。

  3. [リポジトリ] ページで、共有するリポジトリを選択します。

  4. [Clone URL] で、ユーザーが使用するプロトコルを選択します。接続プロトコルのクローン URL がコピーされます。

  5. のインストール、プロファイルの設定、Git のインストールなど AWS CLI、他の手順とともにクローン URL をユーザーに送信します。接続プロトコルの設定情報を含めるようにしてください (HTTPS など)。

次の E メール例は、米国東部 (オハイオ) (us-east-2) リージョンで HTTPS 接続プロトコルと Git 認証情報を使用して MyDemoRepo リポジトリに接続するユーザーに関する情報を提供します。この E メールでは、ユーザーが既に 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.

全体的なセットアップ手順は、「」で確認できますセットアップ