

 **このページの改善にご協力ください** 

このユーザーガイドに貢献するには、すべてのページの右側のペインにある「**GitHub でこのページを編集する**」リンクを選択してください。

# AWS CodeConnections を使用して Git リポジトリに接続する
<a name="integration-codeconnections"></a>

 [AWS CodeConnections](https://docs.aws.amazon.com/dtconsole/latest/userguide/welcome-connections.html) は、AWS サービスをサードパーティーのソースコードリポジトリに接続するための安全な方法を提供します。AWSCodeConnections は、GitHub、GitLab、Bitbucket、および[その他のプロバイダー](https://docs.aws.amazon.com/dtconsole/latest/userguide/supported-versions-connections.html)をサポートしています。詳細と開始方法については、「[接続の使用](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections.html)」を参照してください。

## Argo CD で AWS CodeConnections を使用する
<a name="integration-codeconnections-use"></a>

EKS Capability for Argo CD を使用する場合、存続期間の長い認証情報や個人用アクセストークンを管理することなく、AWS CodeConnections を使用して Git リポジトリへの安全な認証を有効にすることができます。AWSCodeConnections は OAuth 認証フローを処理し、Git プロバイダーへの接続を管理することで、サードパーティーの Git プロバイダーに保存されている GitOps リポジトリとアプリケーションマニフェストにアクセスするための安全で管理しやすいアプローチを提供します。

 **前提条件** 
+ Amazon EKS クラスターに Argo CD 機能が作成されていること
+ Git プロバイダーへの接続が AWS CodeConnections で作成されていること
+ Argo CD が接続を使用するように IAM アクセス許可が設定されていること

 **Argo CD リポジトリアクセス用の CodeConnections を設定するには** 

1. CodeConnections コンソールで接続を作成します。

   1. [CodeConnections コンソール](https://console.aws.amazon.com/codesuite/settings/connections)を開きます。

   1. **[接続を作成]** を選択します。

   1. プロバイダー (GitHub、GitLab、または Bitbucket) を選択し、認証フローに従います。

   1. Argo CD の設定で使用するため、接続 ARN を書き留めます。

1. Argo CD 機能ロールが、リソースベースのポリシーにより接続を使用するためのアクセス許可を持っていることを確認します。

   ```
   {
     "Version": "2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Action": [
           "codeconnections:UseConnection",
           "codeconnections:GetConnection"
         ],
         "Resource": "arn:aws:codeconnections:region:account-id:connection/connection-id"
       }
     ]
   }
   ```

1. CodeConnections リソースエンドポイントをリポジトリ URL として使用して、リポジトリを追加するときに、CodeConnections リソースを参照するように Argo CD を設定します。Argo CD 機能は、存続期間の長い認証情報を必要とせず、接続を使用して Git プロバイダーを認証します。

## Argo CD を用いた CodeConnections を使用する際の考慮事項
<a name="integration-codeconnections-considerations"></a>

EKS Capability for Argo CD で AWS CodeConnections を使用する場合は、次の点に注意してください。
+ CodeConnections 接続は、EKS クラスターと同じ AWS リージョンにある必要がある
+ Argo CD 機能ロールには、`codeconnections:UseConnection` および `codeconnections:GetConnection` のアクセス許可がある必要がある
+ CodeConnections は、OAuth フローと認証情報のライフサイクルを自動的に管理する

Argo CD でリポジトリアクセスを設定する方法の詳細については、「[リポジトリアクセスを設定する](argocd-configure-repositories.md)」を参照してください。