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

AWS CodeCommit は、新規顧客には利用できなくなりました。 AWS CodeCommit の既存のお客様は、通常どおりサービスを引き続き使用できます。詳細はこちら

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

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

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

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

注記

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

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

注記

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

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

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

HTTPS 接続には次のいずれかが必要です。

  • Git 認証情報。IAM ユーザーが IAM で生成できます。Git 認証情報は、リポジトリのユーザーがセットアップおよび使用する上で最も簡単な方法です。

  • リポジトリユーザーが認証情報プロファイルで設定する必要がある、引き受ける AWS アクセスキーまたはロール。git-remote-codecommit を設定するか (推奨)、 AWS CLIに含まれる認証情報ヘルパーを設定できます。これらはルートアカウントやフェデレーティッドユーザーが使用できる唯一の方法です。

SSH 接続では、ユーザーが次のことを行う必要があります。

  • パブリックキーとプライベートキーのペアを生成する。

  • パブリックキーを保存する。

  • パブリックキーを IAM ユーザーに関連付ける。

  • ローカルコンピュータで既知のホストファイルを設定する。

  • ローカルコンピュータで設定ファイルを作成して管理する。

これはより複雑な設定プロセスであるため、 HTTPSと Git 認証情報を接続先として選択することをお勧めします CodeCommit。

HTTPS、、GitSSH、、git-remote-codecommitリモートリポジトリの詳細については、、設定 認証情報をローテーションして AWS CodeCommit リポジトリに接続するまたは Git ドキュメントを参照してください。

注記

Git はさまざまな接続プロトコルをサポートしていますが、 CodeCommit はローカルプロトコルや汎用 など、セキュリティで保護されていないプロトコルとの接続をサポートしていませんHTTP。

リポジトリの IAM ポリシーを作成する

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

ヒント

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

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

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

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

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

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

  5. ポリシーの作成ページで、 を選択します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グループにアタッチする必要があります。この管理ポリシーは、ユーザーがSSHパブリックキーをアップロードし、接続に使用するIAMユーザーに関連付けることを許可するIAM管理ポリシーです CodeCommit。

  1. にサインイン AWS Management Console し、 で IAMコンソールを開きますhttps://console.aws.amazon.com/iam/

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

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

    注記

    この名前は、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. クローン 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.

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