Skip to main content

워크플로에서 인증에 GITHUB_TOKEN 사용

GitHub Actions를 대신하여 GITHUB_TOKEN을 사용하여 인증하는 방법을 알아봅니다.

이 자습서에서는 작업에 토큰을 전달하고, API 요청을 수행하고, 보안 자동화에 대한 사용 권한을 구성하는 예제를 포함하여 GitHub Actions 워크플로에서 인증에 GITHUB_TOKEN을 사용하는 방법을 안내합니다.

참조 정보는 GitHub Actions에 대한 워크플로 구문을(를) 참조하세요.

워크플로에서 GITHUB_TOKEN 사용

다음과 같이 비밀을 참조하는 데 표준 구문을 사용하면 GITHUB_TOKEN을 사용할 수 있습니다. ${{ secrets.GITHUB_TOKEN }}. GITHUB_TOKEN을 사용하는 예시는 토큰을 작업에 대한 입력으로 전달하거나 인증된 GitHub API 요청을 만드는 데 사용합니다.

중요

워크플로가 GITHUB_TOKEN을 작업에 명시적으로 전달하지 않더라도 작업은 github.token 컨텍스트를 통해 GITHUB_TOKEN에 액세스할 수 있습니다. 좋은 보안 사례로, 항상 GITHUB_TOKEN에 부여된 권한을 제한하여 필요한 최소 액세스 권한만 갖도록 해야 합니다. 자세한 내용은 GitHub Actions에 대한 워크플로 구문을(를) 참조하세요.

예제 1: 입력으로 GITHUB_TOKEN 전달

이 예제 워크플로는 GH_TOKEN 입력 매개 변수의 값으로 GITHUB_TOKEN이 필요한 GitHub CLI를 사용합니다.

YAML
name: Open new issue
on: workflow_dispatch

jobs:
  open-issue:
    runs-on: ubuntu-latest
    permissions:
      contents: read
      issues: write
    steps:
      - run: |
          gh issue --repo ${{ github.repository }} \
            create --title "Issue title" --body "Issue body"
        env:
          GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

예제 2: REST API 호출

GITHUB_TOKEN은 인증된 API 호출을 수행하는 데 사용할 수 있습니다. 이 예제 워크플로는 GitHub REST API를 사용하여 이슈를 만듭니다.

name: Create issue on commit

on: [ push ]

jobs:
  create_issue:
    runs-on: ubuntu-latest
    permissions:
      issues: write
    steps:
      - name: Create issue using REST API
        run: |
          curl --request POST \
          --url https://api.github.com/repos/${{ github.repository }}/issues \
          --header 'authorization: Bearer ${{ secrets.GITHUB_TOKEN }}' \
          --header 'content-type: application/json' \
          --data '{
            "title": "Automated issue for commit: ${{ github.sha }}",
            "body": "This issue was automatically created by the GitHub Action workflow **${{ github.workflow }}**. \n\n The commit hash was: _${{ github.sha }}_."
            }' \
          --fail

GITHUB_TOKEN에 대한 권한 수정

워크플로 파일의 permissions 키를 사용하여 전체 워크플로 또는 개별 작업에 대한 GITHUB_TOKEN의 권한을 수정할 수 있습니다. 이렇게 하면 워크플로 또는 작업에 필요한 최소 권한을 구성할 수 있습니다. 적절한 보안 사례로, GITHUB_TOKEN에 최소한의 액세스 권한을 부여해야 합니다.

이 문서의 앞부분에 있는 워크플로 예제 두 개는 워크플로 수준과 작업 수준에서 사용 중인 permissions 키를 보여 줍니다.

추가 권한 부여

GITHUB_TOKEN에서 사용할 수 없는 권한이 필요한 토큰이 필요한 경우, GitHub App을 만들고 워크플로 내에서 설치 액세스 토큰을 생성할 수 있습니다. 자세한 내용은 GitHub Actions 워크플로에서 GitHub 앱을 사용하여 인증된 API 요청 만들기을(를) 참조하세요. 또는 personal access token을 만들고, 리포지토리에 비밀로 저장하고, ${{ secrets.SECRET_NAME }} 구문을 사용하여 워크플로의 토큰을 사용할 수 있습니다. 자세한 내용은 개인용 액세스 토큰 관리GitHub Actions에서 비밀 사용을(를) 참조하세요.

다음 단계

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy