{"meta":{"title":"GitHub 앱 만들기 정보","intro":"GitHub Apps를 사용하면 통합을 구축하여 프로세스를 자동화하고 GitHub의 기능을 확장할 수 있습니다.","product":"앱","breadcrumbs":[{"href":"/ko/apps","title":"앱"},{"href":"/ko/apps/creating-github-apps","title":"GitHub 앱 만들기"},{"href":"/ko/apps/creating-github-apps/about-creating-github-apps","title":"GitHub 앱 만들기 정보"},{"href":"/ko/apps/creating-github-apps/about-creating-github-apps/about-creating-github-apps","title":"앱 만들기 정보"}],"documentType":"article"},"body":"# GitHub 앱 만들기 정보\n\nGitHub Apps를 사용하면 통합을 구축하여 프로세스를 자동화하고 GitHub의 기능을 확장할 수 있습니다.\n\n## GitHub Apps 정보\n\nGitHub App는 GitHub와 상호작용하고 그 기능을 확장할 수 있도록 구축할 수 있는 통합 방식의 한 유형입니다. 사용자를 로그인시키거나 서비스 계정을 만들 필요 없이, 유연성을 제공하고 프로세스의 비효율을 줄일 수 있는 GitHub App를 구축할 수 있습니다.\n\n일반적인 사용 사례는 다음과 같습니다.GitHub Apps\n\n* 작업 또는 백그라운드 프로세스 자동화\n* 사용자가 자신의 GitHub\n  계정으로 \"Sign in with GitHub\"를 사용하여 귀하의 생태계에서 자신의 신원을 제공할 수 있도록 지원합니다.\n* 개발자 도구로서 사용자가 귀하의 GitHub에 로그인하여 GitHub App로 작업할 수 있도록 하며, 이후 GitHub이 사용자를 대신해 작동할 수 있습니다.\n* 도구 또는 외부 서비스를 GitHub와 통합\n\nOAuth apps 마찬가지로 GitHub AppsOAuth 2.0을 사용하고 사용자를 대신하여 작업할 수 있습니다. 달리 OAuth apps, GitHub Apps 사용자와 독립적으로 작동할 수도 있습니다.\n\nGitHub Apps은 기업, 설치할 수 있으며 특정 리포지토리에 대한 액세스 권한을 부여할 수 있습니다. 또한 기본 제공 웹후크와 범위가 좁은 특정 권한이 함께 제공됩니다.\n\n기본적으로 조직의 소유자만 조직에서 GitHub 앱의 설정을 관리할 수 있습니다. 추가 사용자가 조직에서 소유한 GitHub 앱의 개발자 설정을 변경할 수 있도록 소유자가 GitHub 앱 관리자 권한을 부여할 수 있습니다. GitHub 앱 관리자는 제3자 응용 프로그램을 관리할 수 없습니다. 조직에서 GitHub 앱 관리자를 추가하고 제거하는 방법에 대한 자세한 내용은 [조직의 역할](/ko/organizations/managing-peoples-access-to-your-organization-with-roles/roles-in-an-organization#github-app-managers)을(를) 참조하세요.\n\n## GitHub App 구축\n\nGitHub App를 빌드하려면 먼저 GitHub App를 등록해야 합니다. 자세한 내용은 [GitHub 앱 등록](/ko/apps/creating-github-apps/registering-a-github-app/registering-a-github-app)을(를) 참조하세요.\n\n그런 다음, GitHub App에 기능을 추가하는 코드를 작성해야 합니다.\nGitHub App 등록 시 사용한 자격 증명을 사용하여 GitHub의 API에 인증된 요청을 보낼 수 있습니다. 코드 작성에 대한 자세한 내용은 GitHub App을 참조하세요[](/ko/apps/creating-github-apps/writing-code-for-a-github-app/about-writing-code-for-a-github-app). 인증된 요청을 수행하는 방법에 대한 자세한 내용은 [GitHub 앱을 사용한 인증 정보](/ko/apps/creating-github-apps/authenticating-with-a-github-app/about-authentication-with-a-github-app) 항목을 참조하세요.\n\nGitHub App의 코드를 작성한 후에는 앱은 어딘가에서 실행되어야 합니다. 앱이 웹 사이트 또는 웹앱인 경우 [Azure App Service](https://azure.microsoft.com/products/app-service/) 같은 서버에서 앱을 호스트할 수 있습니다. 앱이 클라이언트 쪽 앱인 경우 사용자의 디바이스에서 실행될 수 있습니다.\n\nGitHub App을 사용하려면 조직 또는 개인 계정에 이를 설치해야 합니다.\n\n* GitHub App\n  **비공개**인 경우 앱을 소유한 계정에만 설치할 수 있습니다.\n* GitHub App\n  **공용**인 경우 다른 계정도 설치할 수 있습니다. 엔터프라이즈의 구성원만 로그인할 수 있습니다.\n\n자세한 내용은 [고유한 GitHub 앱 설치](/ko/apps/using-github-apps/installing-your-own-github-app) 및 [GitHub 앱 공유](/ko/apps/sharing-github-apps/sharing-your-github-app)을(를) 참조하세요.\n\n## 빌드할 GitHub App의 유형 이해하기\n\n앱에 갖추고자 하는 기능에 따라 고려해야 할 GitHub App를 설계하는 방법은 여러 가지가 있습니다.\n\n### GitHub Apps 사용자를 대신하여 작동하는\n\n앱이 사용자를 대신하여 작업을 수행하도록 하려면 인증에 사용자 액세스 토큰을 사용해야 합니다. 이 유형의 요청은 \"사용자-서버\"라고도 하며, 이는 앱에 부여된 권한과 사용자의 권한에 따라 앱이 제한된다는 의미합니다. 이 패턴을 사용하면 먼저 앱에 권한을 부여해야 앱이 작업을 수행할 수 있습니다. 자세한 내용은 [사용자를 대신하여 GitHub 앱으로 인증](/ko/apps/creating-github-apps/authenticating-with-a-github-app/authenticating-with-a-github-app-on-behalf-of-a-user)을(를) 참조하세요.\n\n앱이 사용자를 대신하여 작동할 때 만들 GitHub App수 있는 자동화의 몇 가지 예는 다음과 같습니다.\n\n* GitHub App는 에코시스템에 대한 ID 공급자로 GitHub를 사용합니다.\n* GitHub App 위에 서비스를 추가하는 GitHub로, GitHub 사용자에게 유용할 수 있습니다.\n  GitHub Marketplace을 통해 또는 앱을 공개하여 다른 개발자와 앱을 공유할 수 있습니다.\n\n### GitHub Apps 독자적으로 행동하는\n\n앱이 사용자 대신이 아닌 자체적으로 작업을 수행하도록 하려면 인증에 설치 액세스 토큰을 사용해야 합니다. 이 유형의 요청은 \"서버 간\"이라고도 하며 앱에 부여된 권한에 따라 앱이 제한된다는 의미합니다. 자세한 내용은 [GitHub 앱 설치로 인증](/ko/apps/creating-github-apps/authenticating-with-a-github-app/authenticating-as-a-github-app-installation)을(를) 참조하세요.\n\nGitHub App로 만들 수 있는 자동화의 몇 가지 예로는 앱이 자체적으로 작동하는 경우가 있으며, 다음과 같습니다.\n\n* 특정 조건 집합이 주어졌을 때 웹후크를 사용해 이벤트에 반응하는 GitHub App 예를 들어 특정 정책에 따라 요청을 승인하는 [요청을 검토하기 위해 fine-grained personal access token](/ko/rest/orgs/personal-access-tokens?apiVersion=2022-11-28#review-requests-to-access-organization-resources-with-fine-grained-personal-access-tokens) REST API 엔드포인트를 중심으로 자동화를 만들 수 있습니다.\n* 리포지토리 기여자에게 도움이 되는 GitHub App. 예를 들어 앱은 기여자 끌어오기 요청을 만들거나 주석을 만든 후 유용한 리소스를 게시할 수 있습니다.\n* 다른 CI/CD 도구에 제공하거나 리포지토리에서 정보를 가져오는 데 사용할 수명이 짧은 토큰을 생성하는 GitHub App\n\n### GitHub Apps 웹후크에 응답하는\n\n앱이 이벤트에 GitHub응답하도록 하려면 앱이 웹후크를 구독해야 합니다. 예를 들어 끌어오기 요청이 열릴 때 앱이 주석을 남기도록 할 수 있습니다. 자세한 내용은 [GitHub 앱에서 웹후크 사용](/ko/apps/creating-github-apps/registering-a-github-app/using-webhooks-with-github-apps)을(를) 참조하세요.\n\n### GitHub Apps 특정 작업을 수행할 수 있는\n\nGitHub App를 설정할 때 앱의 특정 권한을 선택할 수 있습니다. 이러한 권한은 앱이 API를 통해 GitHub 수행할 수 있는 작업, 로그인한 사용자를 대신하여 수행할 수 있는 작업 및 앱이 받을 수 있는 웹후크를 결정합니다. 자세한 내용은 [GitHub 앱에 대한 권한 선택](/ko/apps/creating-github-apps/registering-a-github-app/choosing-permissions-for-a-github-app)을(를) 참조하세요."}