

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# CodeBuild의 GitHub 및 GitHub Enterprise Server 액세스
<a name="access-tokens-github-overview"></a>

GitHub의 경우 개인 액세스 토큰, OAuth 앱, Secrets Manager 보안 암호 또는 GitHub 앱 연결을 사용하여 소스 공급자에 액세스할 수 있습니다. GitHub Enterprise Server에서는 개인 액세스 토큰, Secrets Manager 암호 또는 GitHub 앱 연결을 사용하여 소스 공급자에 액세스할 수 있습니다.

**Topics**
+ [GitHub 및 GitHub Enterprise Server에 대한 GitHub 앱 연결](connections-github-app.md)
+ [GitHub 및 GitHub Enterprise Server 액세스 토큰](access-tokens-github.md)
+ [GitHub OAuth 앱](oauth-app-github.md)

# GitHub 및 GitHub Enterprise Server에 대한 GitHub 앱 연결
<a name="connections-github-app"></a>

GitHub 앱을 사용하여 CodeBuild에 연결할 수 있습니다. GitHub 앱 연결은 [AWS CodeConnections](https://docs.aws.amazon.com/dtconsole/latest/userguide/welcome-connections.html)를 통해 지원됩니다

소스 공급자 액세스를 사용하면 [CreateWebhook](https://docs.aws.amazon.com/codebuild/latest/APIReference/API_CreateWebhook.html)를 사용하여 [GitHub Webhook 이벤트](github-webhook.md)에 가입하여 빌드를 트리거하거나 CodeBuild에서 [자습서: CodeBuild 호스팅 GitHub Action 실행기 구성](action-runner.md)를 사용할 수 있습니다.

**참고**  
CodeConnections는 CodeBuild보다 적은 리전에서 사용할 수 있습니다. CodeBuild에서 리전 간 연결을 사용할 수 있습니다. 옵트인 리전에서 생성된 연결은 다른 리전에서 사용할 수 없습니다. 자세한 내용은 [AWS CodeConnections 엔드포인트 및 할당량](https://docs.aws.amazon.com/general/latest/gr/codestar_connections.html)을 참조하세요.

**Topics**
+ [1단계: GitHub 앱에 대한 연결 생성(콘솔)](#connections-github-console)
+ [2단계: CodeBuild 프로젝트에 연결을 사용할 IAM 역할 액세스 권한 부여](#connections-github-role-access)
+ [3단계: 새 연결을 사용하도록 CodeBuild 구성](#connections-github-account-credential)
+ [GitHub 앱 문제 해결](#connections-github-troubleshooting)

## 1단계: GitHub 앱에 대한 연결 생성(콘솔)
<a name="connections-github-console"></a>

다음 단계를 통해 CodeBuild 콘솔을 사용하여 GitHub의 프로젝트에 대한 연결을 추가할 수 있습니다.

**GitHub에 대한 연결을 생성하려면**
+ *개발자 도구 사용 설명서*의 [GitHub에 대한 연결 생성](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-create-github.html)을 위한 지침을 따릅니다.

**참고**  
계정에서 기존 연결을 생성하거나 사용하는 대신 다른 AWS 계정에서 공유된 연결을 사용할 수 있습니다. 자세한 내용은 [AWS 계정과 연결 공유](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-share.html)를 참조하세요.

## 2단계: CodeBuild 프로젝트에 연결을 사용할 IAM 역할 액세스 권한 부여
<a name="connections-github-role-access"></a>

연결에서 제공한 GitHub 토큰을 사용할 수 있는 IAM 역할 액세스 권한을 CodeBuild 프로젝트에 부여할 수 있습니다.

**CodeBuild 프로젝트에 IAM 역할 액세스 권한을 부여하려면**

1. CodeBuild 프로젝트의 [CodeBuild가 다른 AWS 서비스와 상호 작용하도록 허용](setting-up-service-role.md)에 대한 지침에 따라 CodeBuild 프로젝트의 IAM 역할을 생성합니다.

1. 지침에 따라 CodeBuild 프로젝트 역할에 다음 IAM 정책을 추가하여 연결에 대한 액세스 권한을 부여합니다.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "codeconnections:GetConnectionToken",
                   "codeconnections:GetConnection"
               ],
               "Resource": [
                   "arn:aws:iam::*:role/Service*"
               ]
           }
       ]
   }
   ```

------

## 3단계: 새 연결을 사용하도록 CodeBuild 구성
<a name="connections-github-account-credential"></a>

연결을 계정 수준 자격 증명으로 구성하고 프로젝트에서 사용할 수 있습니다.

------
#### [ AWS Management Console ]

**에서 연결을 계정 수준 자격 증명으로 구성하려면 AWS Management Console**

1. **소스 공급자**에서 **GitHub**를 선택합니다.

1. **자격 증명**에서 다음 중 하나를 수행합니다.
   + **기본 소스 자격 증명**을 선택하여 계정의 기본 소스 자격 증명을 사용하여 모든 프로젝트에 적용합니다.

     1. GitHub에 연결되지 않은 경우 **기본 소스 자격 증명 관리**를 선택합니다.

     1. **자격 증명 유형**에서 **GitHub 앱**을 선택합니다.

     1. **연결**에서 기존 연결을 선택하거나 연결을 새로 생성합니다.
   + **사용자 지정 소스 자격 증명**을 선택하여 사용자 지정 소스 자격 증명을 사용하여 계정의 기본 설정을 재정의합니다.

     1. **자격 증명 유형**에서 **GitHub 앱**을 선택합니다.

     1. **연결**에서 기존 연결을 선택하거나 연결을 새로 생성합니다.

------
#### [ AWS CLI ]

**에서 연결을 계정 수준 자격 증명으로 구성하려면 AWS CLI**
+ 터미널(Linux, macOS, Unix) 또는 명령 프롬프트(Windows)를 엽니다. AWS CLI 를 사용하여 `--token` 연결에 대해 `--auth-type`, `--server-type`및를 지정하여 **import-source-credentials** 명령을 실행합니다.

  다음 명령을 사용합니다.

  ```
  aws codebuild import-source-credentials --auth-type CODECONNECTIONS --server-type GITHUB --token <connection-arn>
  ```

------

CodeBuild 프로젝트에 여러 토큰을 설정할 수도 있습니다. 자세한 내용은 [여러 토큰을 소스 수준 자격 증명으로 구성](multiple-access-tokens.md#asm-source-credential) 단원을 참조하십시오.

## GitHub 앱을 사용한 문제 해결
<a name="connections-github-troubleshooting"></a>

다음 정보는 GitHub App과 관련된 문제를 해결하는 데 도움이 될 수 있습니다.

**Topics**
+ [원치 않는 리전에 GitHub용 AWS 커넥터 앱 설치](#connections-github-troubleshooting.undesired-region)
+ [GitHub 앱 연결에는 리포지토리에 대한 액세스 권한이 없습니다.](#connections-github-troubleshooting.repo-access)
+ [AWS 서비스의 IAM 역할에 필요한 IAM 권한이 없습니다.](#connections-github-troubleshooting.iam-permissions)

### 원치 않는 리전에 GitHub용 AWS 커넥터 앱 설치
<a name="connections-github-troubleshooting.undesired-region"></a>

**문제:** GitHub Marketplace에서 GitHub용 AWS 커넥터를 설치했지만 원치 않는 리전에서 연결이 생성되었습니다. GitHub 웹 사이트에서 앱을 재구성하려고 하면 앱이 이미 GitHub 계정에 설치되어 있기 때문에 작동하지 않습니다.

**가능한 원인:** 앱이 GitHub 계정에 이미 설치되어 있으므로 앱 권한만 재구성할 수 있습니다.

**권장 솔루션:** 원하는 리전의 설치 ID로 새 연결을 생성할 수 있습니다.

1. [https://console.aws.amazon.com/codesuite/settings/connections](https://console.aws.amazon.com/codesuite/settings/connections) CodeConnections 콘솔을 열고 AWS 콘솔 탐색 모음에서 리전 선택기를 사용하여 원하는 리전으로 이동합니다.

1. *개발자 도구 사용 설명서*의 [GitHub에 대한 연결 생성](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-create-github.html)을 위한 지침을 따릅니다.
**참고**  
 AWS Connector for GitHub 앱을 이미 설치했으므로 새 앱을 설치하는 대신 선택할 수 있습니다.

### GitHub 앱 연결에는 리포지토리에 대한 액세스 권한이 없습니다.
<a name="connections-github-troubleshooting.repo-access"></a>

**문제:** CodeBuild 또는 CodePipeline과 같은 연결을 사용하는 AWS 서비스는 리포지토리에 액세스할 수 없거나 리포지토리가 존재하지 않는다고 보고합니다. 몇 가지 가능한 오류 메시지는 다음과 같습니다.
+ `Authentication required for primary source.`
+ `Unable to create webhook at this time. Please try again later.`
+ `Failed to create webhook. GitHub API limit reached. Please try again later.`

***가능한 원인:** GitHub 앱을 사용하고 웹후크 권한 범위를 부여하지 않았을 수 있습니다.*  
**권장 솔루션:** 필요한 권한 범위를 부여하려면 [검토하거나 수정하려는 GitHub 앱으로 이동](https://docs.github.com/en/apps/using-github-apps/reviewing-and-modifying-installed-github-apps#navigating-to-the-github-app-you-want-to-review-or-modify)의 지침에 따라 설치된 앱을 구성합니다. 권한 섹션에서 앱에 웹후크 권한이 없는 것을 확인할 수 있으며 새로 요청된 권한을 검토할 수 있는 옵션이 있습니다. 새 권한을 검토하고 수락합니다. 자세한 내용은 [GitHub 앱에 대한 업데이트된 권한 승인](https://docs.github.com/en/apps/using-github-apps/approving-updated-permissions-for-a-github-app)을 참조하세요.

***가능한 원인:** 연결이 예상대로 작동했지만 갑자기 리포지토리에 액세스할 수 없습니다.*  
**가능한 솔루션:** 먼저 [권한 부여](https://docs.github.com/en/apps/using-github-apps/reviewing-and-revoking-authorization-of-github-apps) 및 [설치](https://docs.github.com/en/apps/using-github-apps/reviewing-and-modifying-installed-github-apps)를 검토하여 시작한 다음 GitHub 앱이 권한 부여 및 설치되었는지 확인합니다. GitHub 앱 설치가 일시 중지된 경우 일시 중지를 해제해야 합니다. GitHub 앱이 [UAT(사용자 액세스 토큰)](https://docs.github.com/en/apps/creating-github-apps/authenticating-with-a-github-app/authenticating-with-a-github-app-on-behalf-of-a-user) 연결에 대해 승인되지 않았거나 [IAT(설치 액세스 토큰)](https://docs.github.com/en/apps/creating-github-apps/authenticating-with-a-github-app/authenticating-as-a-github-app-installation) 연결에 설치되지 않은 경우 기존 연결을 더 이상 사용할 수 없으므로 새 연결을 생성해야 합니다. GitHub 앱을 다시 설치해도 이전 설치와 연결된 이전 연결은 복원되지 않습니다.  
**가능한 솔루션:** 연결이 UAT 연결인 경우 여러 CodeBuild 동시 빌드 실행에 사용되는 것과 같이 연결이 동시에 사용되지 않는지 확인합니다. 이는 GitHub가 연결에 의해 만료되는 토큰이 새로 고쳐지면 이전에 발급된 UAT를 즉시 무효화하기 때문입니다. 여러 동시 CodeBuild 빌드에 UAT 연결을 사용해야 하는 경우 여러 연결을 생성하고 각 연결을 독립적으로 사용할 수 있습니다.  
**가능한 솔루션:** 지난 6개월 동안 UAT 연결을 사용하지 않은 경우 GitHub에서 연결이 무효화됩니다. 이를 수정하려면 새로운 연결을 생성합니다.

***가능한 원인:** 앱을 설치하지 않고 UAT 연결을 사용했을 수 있습니다.*  
**권장 솔루션:** UAT 연결을 생성하면 GitHub 앱 설치와 연결을 연결할 필요가 없지만 리포지토리에 액세스하려면 설치가 필요합니다. 지침에 따라 [설치를 검토](https://docs.github.com/en/apps/using-github-apps/reviewing-and-modifying-installed-github-apps)하여 GitHub 앱이 설치되어 있는지 확인합니다. 설치되지 않은 경우 [GitHub 앱 페이지](https://github.com/marketplace/aws-connector-for-github)로 이동하여 앱을 설치합니다. UAT의 액세스에 대한 자세한 내용은 [사용자 액세스 토큰 정보](https://docs.github.com/en/apps/creating-github-apps/authenticating-with-a-github-app/generating-a-user-access-token-for-a-github-app#about-user-access-tokens)를 참조하세요.

### AWS 서비스의 IAM 역할에 필요한 IAM 권한이 없습니다.
<a name="connections-github-troubleshooting.iam-permissions"></a>

**문제:** 다음 오류 메시지 중 하나가 표시됩니다.
+ `Access denied to connection <connection-arn>`
+ `Failed to get access token from <connection-arn>`

**권장 솔루션:** 일반적으로 CodePipeline 또는 CodeBuild와 같은 AWS 서비스와의 연결을 사용합니다. AWS 서비스에 IAM 역할을 부여하면 AWS 서비스는 역할의 권한을 사용하여 사용자를 대신하여 작업할 수 있습니다. IAM 역할에 필요한 권한이 있는지 확인합니다. 필요한 IAM 권한에 대한 자세한 내용은 *개발자 도구 콘솔 사용 설명서*의 알림 및 [ CodeConnections에 대한 연결 및 ID 및 액세스 관리를 사용하기 위한 CodeBuild 프로젝트 IAM 역할 액세스 권한 부여](#connections-github-role-access)를 참조하세요. [AWS CodeStar CodeConnections](https://docs.aws.amazon.com/dtconsole/latest/userguide/security-iam.html) 

# GitHub 및 GitHub Enterprise Server 액세스 토큰
<a name="access-tokens-github"></a>

## 액세스 토큰 사전 조건
<a name="access-tokens-github-prereqs"></a>

시작하기 전에 GitHub 액세스 토큰에 적절한 권한 범위를 추가해야 합니다.

GitHub의 경우 개인용 액세스 토큰 범위가 다음과 같아야 합니다.
+ **repo**: 프라이빗 리포지토리의 전체 제어를 부여합니다.
+ **repo:status**: 퍼블릭 및 프라이빗 리포지토리 커밋 상태에 대한 읽기/쓰기 권한을 부여합니다.
+ **admin:repo\$1hook**: 리포지토리 후크의 전체 제어를 부여합니다. 토큰에 `repo` 범위가 있을 경우 이 범위가 필요하지 않습니다.
+ **admin:org\$1hook**: 조직 후크를 완전히 제어할 수 있습니다. 이 범위는 조직 웹후크 기능을 사용하는 경우에만 필요합니다.

자세한 내용은 GitHub 웹사이트의 [OAuth 앱에 대한 범위 이해](https://developer.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/)를 참조하십시오.

세분화된 개인 액세스 토큰을 사용하는 경우 사용 사례에 따라 개인 액세스 토큰에 다음 권한이 필요할 수 있습니다.
+ **목차: 읽기 전용**: 프라이빗 리포지토리에 대한 액세스 권한을 부여합니다. 프라이빗 리포지토리를 소스로 사용하는 경우 이 권한이 필요합니다.
+ **커밋 상태: 읽기 및 쓰기:** 커밋 상태를 생성할 수 있는 권한을 부여합니다. 프로젝트에 웹후크가 설정되어 있거나 보고서 빌드 상태 기능이 활성화된 경우 이 권한이 필요합니다.
+ **웹후크: 읽기 및 쓰기:** 웹후크를 관리할 수 있는 권한을 부여합니다. 프로젝트에 웹후크가 설정된 경우 이 권한이 필요합니다.
+ **pull 요청: 읽기 전용**: pull 요청에 액세스할 수 있는 권한을 부여합니다. 이 권한은 웹후크에 pull 요청 이벤트에 대한 `FILE_PATH` 필터가 있는 경우 필요합니다.
+ **관리: 읽기 및 쓰기:** CodeBuild에서 자체 호스팅 GitHub Action 실행기 기능을 사용하는 경우 이 권한이 필요합니다. 자세한 내용은 [리포지토리에 대한 등록 토큰 생성](https://docs.github.com/en/rest/actions/self-hosted-runners?apiVersion=2022-11-28#create-a-registration-token-for-a-repository) 및 [자습서: CodeBuild 호스팅 GitHub Action 실행기 구성](action-runner.md) 섹션을 참조하세요.

**참고**  
조직 리포지토리에 액세스하려면 조직을 액세스 토큰의 리소스 소유자로 지정해야 합니다.

자세한 내용은 GitHub 웹 사이트의 [ 세분화된 개인 액세스 토큰에 필요한 권한을](https://docs.github.com/en/rest/authentication/permissions-required-for-fine-grained-personal-access-tokens?apiVersion=2022-11-28) 참조하세요.

## 액세스 토큰을 사용하여 GitHub에 연결(콘솔)
<a name="access-tokens-github-console"></a>

콘솔에서 액세스 토큰을 사용하여 프로젝트를 GitHub에 연결하려면 프로젝트를 생성할 때 다음과 같이 합니다. 자세한 내용은 [빌드 프로젝트 만들기(콘솔)](create-project.md#create-project-console) 단원을 참조하세요.

1. **소스 공급자**에서 **GitHub**를 선택합니다.

1. **자격 증명**에서 다음 중 하나를 수행합니다.
   + 계정 자격 증명을 사용하여 모든 프로젝트에 계정의 기본 소스 자격 증명을 적용하려면 선택합니다.

     1. GitHub에 연결되지 않은 경우 **계정 자격 증명 관리**를 선택합니다.

     1. **자격 증명 유형**에서 **개인 액세스 토큰**을 선택합니다.
   + **서비스**에 계정 수준 자격 증명을 사용하기로 선택한 경우 토큰을 저장하는 데 사용할 서비스를 선택하고 다음을 수행합니다.

     1. **Secrets Manager**를 사용하도록 선택한 경우 기존 보안 암호 연결을 사용하거나 새 보안 암호를 생성하고 **저장**을 선택할 수 있습니다. 새 암호를 생성하는 방법에 대한 자세한 정보는 [Secrets Manager 보안 암호에 토큰 생성 및 저장](asm-create-secret.md) 섹션을 참조하세요.

     1. **CodeBuild**를 사용하도록 선택한 경우 GitHub 개인 액세스 토큰을 입력하고 **저장**을 선택합니다.
   + 사용자 지정 소스 자격 증명을 사용하여 계정의 자격 증명 설정을 재정의하려면 **이 프로젝트에 대해서만 자격 증명 재정의 사용**을 선택합니다.

     1. 채워진 자격 증명 목록에서 **개인 액세스 토큰** 아래의 옵션 중 하나를 선택합니다.

     1. 설명에서 **새 개인 액세스 토큰 연결 생성**을 선택하여 새 개인 액세스 토큰을 생성할 수도 있습니다.

## 액세스 토큰을 사용하여 GitHub에 연결(CLI)
<a name="access-tokens-github-cli"></a>

다음 단계에 따라를 사용하여 액세스 토큰 AWS CLI 을 사용하여 프로젝트를 GitHub에 연결합니다. 와 AWS CLI 함께를 사용하는 방법에 대한 자세한 내용은 단원을 AWS CodeBuild참조하십시오[명령줄 참조](cmd-ref.md).

1. **import-source-credentials** 명령을 실행합니다.

   ```
   aws codebuild import-source-credentials --generate-cli-skeleton
   ```

   JSON 형식 데이터가 출력에 표시됩니다. 가 설치된 로컬 컴퓨터 또는 인스턴스의 위치에 있는 파일(예: `import-source-credentials.json`)에 데이터를 복사 AWS CLI 합니다. 복사된 데이터를 다음과 같이 수정하고 결과를 저장합니다.

   ```
   {
       "serverType": "server-type",
       "authType": "auth-type",
       "shouldOverwrite": "should-overwrite",
       "token": "token",
       "username": "username"
       }
   ```

   다음을 바꿉니다.
   + *server-type*: 필수 값. 이 자격 증명에 사용되는 소스 공급자. 유효한 값은 GITHUB, BITBUCKET, GITHUB\$1ENTERPRISE, GITLAB 및 GITLAB\$1SELF\$1MANAGED입니다.
   + *auth-type*: 필수 값. 리포지토리에 연결하는 데 사용되는 인증 유형입니다. 유효한 값은 OAUTH, BASIC\$1AUTH, Personal\$1ACCESS\$1TOKEN, CODECONNECTIONS 및 SECRETS\$1MANAGER입니다. GitHub의 경우 PERSONAL\$1ACCESS\$1TOKEN만 허용됩니다. BASIC\$1AUTH는 Bitbucket 앱 암호로만 허용됩니다.
   + *should-overwrite*: 선택적 값입니다. 리포지토리 소스 자격 증명을 덮어쓰지 않도록 하려면 `false`로 설정합니다. 리포지토리 소스 자격 증명을 덮어쓰려면 `true`로 설정합니다. 기본값은 `true`입니다.
   + *token*: 필수 값. GitHub 또는 GitHub Enterprise Server에서는 개인용 액세스 토큰을 말합니다. Bitbucket의 경우 개인 액세스 토큰 또는 앱 암호입니다. 인증 유형 CODECONNECTIONS의 경우 연결 ARN입니다. 인증 유형 SECRETS\$1MANAGER의 경우 보안 암호 ARN입니다.
   + *username*: 선택 사항 값. GitHub 및 GitHub Enterprise Server 소스 공급자의 경우 이 파라미터가 무시됩니다.

1. 액세스 토큰으로 계정에 연결하려면 1단계에서 저장한 `import-source-credentials.json` 파일이 있는 디렉터리로 이동한 후 **import-source-credentials** 명령을 다시 실행합니다.

   ```
   aws codebuild import-source-credentials --cli-input-json file://import-source-credentials.json
   ```

   JSON 형식 데이터와 Amazon 리소스 이름(ARN)이 출력에 표시됩니다.

   ```
   {
       "arn": "arn:aws:codebuild:region:account-id:token/server-type"
       }
   ```
**참고**  
**import-source-credentials** 명령을 동일한 서버 유형과 인증 유형으로 다시 실행하면 저장된 액세스 토큰이 업데이트됩니다.

   계정을 액세스 토큰과 연결한 후 `create-project`를 사용하여 CodeBuild 프로젝트를 생성할 수 있습니다. 자세한 내용은 [빌드 프로젝트 생성(AWS CLI)](create-project.md#create-project-cli) 단원을 참조하십시오.

1. 연결된 액세스 토큰을 보려면 **list-source-credentials** 명령을 실행합니다.

   ```
   aws codebuild list-source-credentials
   ```

   JSON 형식의 `sourceCredentialsInfos` 객체가 출력에 표시됩니다.

   ```
   {
           "sourceCredentialsInfos": [
               {
                   "authType": "auth-type",
                   "serverType": "server-type", 
                   "arn": "arn"
               }
           ]
       }
   ```

   `sourceCredentialsObject`에는 연결된 소스 자격 증명 정보 목록이 포함되어 있습니다.
   + `authType`은 자격 증명에서 사용하는 인증 유형입니다. `OAUTH`, `BASIC_AUTH`, `PERSONAL_ACCESS_TOKEN`, `CODECONNECTIONS` 또는 `SECRETS_MANAGER`일 수 있습니다.
   + `serverType`은 소스 공급자의 유형입니다. `GITHUB`, `GITHUB_ENTERPRISE`, `BITBUCKET`, `GITLAB` 또는 `GITLAB_SELF_MANAGED`일 수 있습니다.
   + `arn`은 토큰의 ARN입니다.

1. 소스 공급자와의 연결을 해제하고 액세스 토큰을 삭제하려면 해당 ARN을 지정하여 **delete-source-credentials** 명령을 실행합니다.

   ```
   aws codebuild delete-source-credentials --arn arn-of-your-credentials
   ```

   JSON 형식의 데이터가 반환되고 삭제된 자격 증명의 ARN이 표시됩니다.

   ```
   {
       "arn": "arn:aws:codebuild:region:account-id:token/server-type"
       }
   ```

# GitHub OAuth 앱
<a name="oauth-app-github"></a>

## OAuth를 사용하여 GitHub 연결(콘솔)
<a name="oauth-app-github-console"></a>

콘솔에서 OAuth 앱을 사용하여 프로젝트를 GitHub에 연결하려면 프로젝트를 생성할 때 다음과 같이 합니다. 자세한 내용은 [빌드 프로젝트 만들기(콘솔)](create-project.md#create-project-console) 단원을 참조하세요.

1. **소스 공급자**에서 **GitHub**를 선택합니다.

1. **자격 증명**에서 다음 중 하나를 수행합니다.
   + 계정 자격 증명을 사용하여 모든 프로젝트에 계정의 기본 소스 자격 증명을 적용하려면 선택합니다.

     1. GitHub에 연결되지 않은 경우 **계정 자격 증명 관리**를 선택합니다.

     1. **자격 증명 유형**에서 **OAuth 앱**을 선택합니다.
   + **서비스**에 계정 수준 자격 증명을 사용하기로 선택한 경우 토큰을 저장하는 데 사용할 서비스를 선택하고 다음을 수행합니다.

     1. **Secrets Manager**를 사용하도록 선택한 경우 기존 보안 암호 연결을 사용하거나 새 보안 암호를 생성하고 **저장**을 선택할 수 있습니다. 새 암호를 생성하는 방법에 대한 자세한 정보는 [Secrets Manager 보안 암호에 토큰 생성 및 저장](asm-create-secret.md) 섹션을 참조하세요.

     1. **CodeBuild**를 사용하도록 선택한 경우 **저장**을 선택합니다.
   + 사용자 지정 소스 자격 증명을 사용하여 계정의 자격 증명 설정을 재정의하려면 **이 프로젝트에 대해서만 자격 증명 재정의 사용**을 선택합니다.

     1. 채워진 자격 증명 목록에서 **OAuth 앱** 아래의 옵션 중 하나를 선택합니다.

     1. 설명에서 **새 OAuth 앱 토큰 연결 생성**을 선택하여 새 OAuth 앱 토큰을 생성할 수도 있습니다.

승인된 OAuth 앱을 검토하려면 GitHub의 [애플리케이션](https://github.com/settings/applications)으로 이동하여 [aws-codesuite](https://github.com/aws-codesuite)에서 소유한 `AWS CodeBuild (region)`이라는 애플리케이션이 나열되어 있는지 확인합니다.