AWS CodeCommit のセットアップ - AWS CodeCommit

AWS CodeCommit のセットアップ

AWS マネジメントコンソール にサインインし、AWS CodeCommit コンソールからリポジトリに直接ファイルをアップロード、追加または編集します。これは、素早く変更を加える方法です。ただし、複数のファイルの操作、ブランチ間のファイルなどを行う場合には、ローカルコンピューターを動作してリポジトリで作業することを考慮してください。CodeCommit の最も簡単な設定方法は、AWS CodeCommit 用に HTTPS Git 認証情報を設定することです。この HTTPS 認証方法は以下のとおりです。

  • 静的なユーザー名とパスワードを使用します。

  • CodeCommit でサポートされているすべてのオペレーティングシステムで機能します。

  • Git 認証情報をサポートする統合開発環境 (IDE) やその他の開発ツールとも互換性があります。

運用上の理由から Git 認証情報を使用したくない、または使用できない場合は、他の方法を使用できます。たとえば、フェデレーティッドアクセス、一時的な認証情報、またはウェブ ID プロバイダーを使用して CodeCommit リポジトリにアクセスする場合、Git 認証情報は使用できません。git-remote-codecommit コマンドを使用してローカルコンピュータを設定することをお勧めします。以下の選択肢を確認し、お客様に最適な代替方法を決定してください。

CodeCommit と Amazon Virtual Private Cloud を使用する方法については、AWS CodeCommit とインターフェイス VPC エンドポイントの使用 を参照してください。

認証情報の表示と管理

CodeCommit の認証情報を [セキュリティ認証情報] から AWS コンソールで表示および管理できます。

  1. AWS マネジメントコンソール にサインインし、IAM コンソール(https://console.aws.amazon.com/iam/)を開きます。

  2. 右上のナビゲーションバーでユーザー名を選択し、続いて [My Security Credentials (セキュリティ認証情報)] を選択します。

    
          AWS マネジメントコンソールの [My Security Credentials (セキュリティ認証情報)] リンク
  3. [AWS CodeCommit 認証情報] タブを選択します。

Git 認証情報を使用した設定

HTTPS 接続と Git 認証情報を使用すると、IAM で静的ユーザー名とパスワードが生成されます。これらの認証情報は、Git だけでなく、Git のユーザー名およびパスワード認証をサポートするサードパーティーツールでも使用します。この方法は、ほとんどの IDE と開発ツールでサポートされています。また、CodeCommit で使用する最もシンプルで簡単な接続方法です。

  • Git 認証情報を使用する HTTPS ユーザー用: Git 認証情報を使用して、ローカルコンピュータと CodeCommit リポジトリとの間の接続を設定するには、これらの指示に従ってください。

  • 開発ツールからの接続: Git 認証情報を使用して、IDE または他の開発ツールと CodeCommit リポジトリとの間の接続を設定するには、これらのガイドラインに従ってください。Git 認証情報をサポートする IDE には、Visual Studio、Eclipse、Xcode、IntelliJ などがあります (これらに限定されません)。

他の方法を使用した設定

HTTPS ではなく SSH プロトコルを使用して、CodeCommit リポジトリに接続できます。SSH 接続では、SSH 認証用に Git および CodeCommit が使用するパブリックキーとプライベートキーのファイルをローカルマシンで作成します。パブリックキーを IAM ユーザーに関連付けます。プライベートキーをローカルマシンに保存します。SSH では、パブリックキーとプライベートキーのファイルを手動で作成し管理する必要があるため、CodeCommit で使用するには、Git 認証情報がよりシンプルで使いやすい場合があります。

Git 認証情報とは異なり、SSH 接続設定は、ローカルコンピュータのオペレーティングシステムによって異なります。

  • AWS CLI を使用していないユーザーの SSH: すでにパブリック/プライベートキーペアがあり、ローカルコンピュータの SSH 接続に精通している場合は、これらの指示 (要約) に従ってください。

  • Linux, macOS, or Unix 上で SSH 接続する場合: パブリック/プライベートキーペアを作成し、Linux, macOS, or Unix オペレーティングシステムで接続を設定する手順については、これらの指示に従ってください。

  • Windows での SSH 接続の場合: パブリック/プライベートキーペアを作成し、Windows オペレーティングシステムで接続を設定する手順については、これらの指示に従ってください。

フェデレーティッドアクセス、ID プロバイダー、または一時的な認証情報を使用して CodeCommit または AWS に接続している場合、または IAM ユーザーや、IAM ユーザーの Git 認証情報を設定しない場合は、次の 2 つの方法のいずれかで CodeCommit リポジトリへの接続を設定できます。

  • git-remote-codecommit をインストールして使用します (推奨)。

  • AWS CLI に含まれる認証情報ヘルパーをインストールして使用します。

どちらの方法でも、IAM ユーザーを必要とすることなく CodeCommit リポジトリへのアクセスがサポートされます。つまり、フェデレーティッドアクセスと一時的な認証情報を使用してリポジトリに接続できます。git-remote-codecommit ユーティリティが、推奨のアプローチです。このユーティリティは Git を拡張し、さまざまな Git バージョンや認証情報ヘルパーと互換性があります。ただし、すべての IDE が git-remote-codecommit で使用されるクローン URL 形式をサポートしているわけではありません。IDE でリポジトリを操作するには、リポジトリのクローンをローカルコンピュータに対して手動で作成する必要があります。

Git では、AWS で認証して CodeCommit リポジトリとやり取りする必要があるときはいつでも、AWS CLI に含まれている認証情報ヘルパーにより、HTTPS 接続で、暗号署名付きの IAM ユーザー認証情報または Amazon EC2 インスタンスロールを使用できます。一部のオペレーティングシステムと Git バージョンには、独自の認証情報ヘルパーがあり、AWS CLI に含まれる認証情報ヘルパーと競合します。そのため、CodeCommit の接続に問題が発生する可能性があります。

他の AWS アカウントにホストされている CodeCommit リポジトリに接続する場合には、AWS CLI に含まれるロール、ポリシーおよび認証情報ヘルパーを使用してアクセスを設定し、接続をセットアップできます。

CodeCommit、Git、およびその他のコンポーネントの互換性

CodeCommit で作業するときは、Git を使用します。他のプログラムを使用することもできます。以下の表では、バージョン互換性に関する最新のガイダンスを示します。ベストプラクティスとして、最新バージョンの Git やその他のソフトウェアを使用することをお勧めします。

AWS CodeCommit のバージョン互換性に関する情報
コンポーネント バージョン
Git CodeCommit は Git バージョン 1.7.9 以降をサポートしています。最新バージョンの Git を使用することをお勧めします。
Curl CodeCommit では、curl 7.33 以降が必要です。 ただし、HTTPS と curl update 7.41.0 には既知の問題があります。詳細については、「トラブルシューティング」を参照してください。
Python (git-remote-codecommit のみ) git-remote-codecommit にはバージョン 3 以降が必要です。
Pip (git-remote-codecommit のみ) git-remote-codecommit には、バージョン 9.0.3 以降が必要です。