계정 커넥터 구성

이 문서에서는 Developer Connect 계정 커넥터의 고급 구성 옵션을 사용하는 방법을 설명합니다.

계정 커넥터는 Google Cloud 계정을 Google 이외의 개발자 도구 제공업체의 개별 계정에 연결하는 데 도움이 되는 Developer Connect 기능입니다. 사용자는 커넥터에 적합한 범위를 선택하여 계정 커넥터가 액세스할 데이터 유형을 지정할 수 있습니다. 조직에 계정 커넥터 연결이 생성되면 해당 조직 내의 사용자는 해당 연결을 사용하여 개별 계정이 해당 연결과 함께 사용되도록 승인할 수 있습니다.

Developer Connect 사전 구성된 OAuth 클라이언트(예: GitHub 또는 GitLab)를 사용하여 계정 커넥터를 구성하거나 자체 커스텀 OAuth 클라이언트 (예: 온프레미스 GitHub Enterprise 인스턴스)를 사용할 수 있습니다.

시작하기 전에

  1. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  2. Verify that billing is enabled for your Google Cloud project.

  3. Enable the Developer Connect API.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the API

  4. Developer Connect를 사용 설정하면 Secret Manager API도 사용 설정됩니다.

  5. (선택사항) Developer Connect에서 만드는 인증 보안 비밀번호를 암호화하기 위한 고객 관리 암호화 키(CMEK)를 만듭니다.

필요한 역할

계정 커넥터를 만드는 데 필요한 권한을 얻으려면 관리자에게 프로젝트에 대한 Developer Connect OAuth 관리자 (roles/developerconnect.oauthAdmin) IAM 역할을 부여해 달라고 요청하세요. 역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.

커스텀 역할이나 다른 사전 정의된 역할을 통해 필요한 권한을 얻을 수도 있습니다.

사용 가능한 제공업체를 사용하여 계정 커넥터 만들기

다음 단계에서는 기본 제공 제공업체의 계정 커넥터를 만드는 방법을 설명합니다. 계정 커넥터를 만들고 커스텀 OAuth 클라이언트를 지정하려면 커스텀 OAuth 클라이언트를 사용하여 계정 커넥터 만들기를 참조하세요.

Google Cloud 콘솔

  1. 콘솔 Google Cloud 에서 Developer Connect 를 엽니다.

    Developer Connect로 이동

  2. 계정 커넥터 를 선택합니다.

  3. 커넥터 만들기 를 클릭합니다.

  4. 이 계정 커넥터를 만들 리전 을 선택합니다.

  5. 계정 커넥터에 이름 을 지정합니다.

  6. 구성 유형 에서 사전 구성된 OAuth 클라이언트 를 선택합니다.

  7. OAuth 제공업체를 선택합니다.

  8. Developer Connect 프록시 를 사용 설정할지 여부를 선택합니다.

    프록시가 사용 설정된 경우 Developer Connect는 사용자를 대신하여 제공업체에 Git 명령어를 전송하거나 HTTP 호출을 실행합니다 (또는 둘 다 실행). 자세히 알아보기.

  9. 이 계정 커넥터에 대해 Developer Connect에 부여할 범위를 선택합니다.

    범위는 Developer Connect가 선택한 제공업체의 서비스에서 수행할 수 있는 작업을 결정합니다. 범위는 제공업체마다 다릅니다. 제공업체에 범위가 없는 경우를 제외하고 하나 이상의 범위를 선택해야 합니다.

    제공업체에 따라 선택할 수 있는 범위가 없을 수도 있습니다. 범위를 직접 추가할 수도 있습니다. 범위가 필요할 수도 있습니다.

  10. 만들기 를 클릭하여 이 계정 커넥터 만들기를 마칩니다.

Google Cloud CLI

계정 커넥터를 만들려면 다음 명령어를 실행하세요.

   gcloud alpha developer-connect account-connectors create my-ac \
       --location=LOCATION \
       --provider-oauth-config-system-id=PROVIDER \
       --provider-oauth-config-scopes=SCOPES \
       --project=PROJECT_ID

이 명령어에서 다음 항목을 바꿉니다.

  • LOCATION : 이 계정 커넥터를 만들려는 리전

  • PROVIDER: 연결할 SCM 제공업체

    GITHUB, GITLAB, BITBUCKET_CLOUD

  • PROJECT_ID : 이 계정 커넥터를 만들려는 프로젝트의 프로젝트 ID (프로젝트 번호가 아님)

커스텀 OAuth 클라이언트를 사용하여 계정 커넥터 만들기

다음 단계에서는 지정한 OAuth 클라이언트를 사용하도록 계정 커넥터를 구성하는 방법을 설명합니다. 기본 제공 제공업체로 계정 커넥터를 만들려면 사용 가능한 제공업체를 사용하여 계정 커넥터 만들기를 참조하세요.

Google Cloud 콘솔

  1. 콘솔 Google Cloud 에서 Developer Connect 를 엽니다.

    Developer Connect로 이동

  2. 계정 커넥터 를 선택합니다.

  3. 커넥터 만들기 를 클릭합니다.

  4. 이 계정 커넥터를 만들 리전 을 선택합니다.

  5. 계정 커넥터에 이름 을 지정합니다.

  6. 구성 유형 에서 커스텀 OAuth 클라이언트 를 선택합니다.

    계정 커넥터 만들기 화면에 리디렉션 URI가 표시됩니다.

  7. 리디렉션 URI 를 복사합니다.

    URI의 형식은 다음과 같습니다.

    https://developerconnect.google.com/redirect/custom/projects/<project_number>/locations/<location>/accountConnectors/<account_connector_id>

    이 URI에서 <project_number>는 프로젝트 ID가 아닌 프로젝트 번호입니다.

  8. 복사한 리디렉션 URI를 사용하여 선택한 SCM의 커스텀 앱을 만든 후 이 양식으로 돌아와 OAuth 클라이언트의 세부정보를 제공합니다.

    1. 제공업체를 선택합니다.

    2. 호스트 URI 필드에 소스 코드 관리 시스템의 URI를 제공합니다.

    3. 승인 URI 필드에 승인 서버의 주소를 입력합니다. 이 주소의 형식은 다음과 같습니다.

      GitHub Enterprise: https://<host_name>/login/oauth/authorize GitLab Enterprise: https://<host_name>/oauth/authorize BitBucket 데이터 센터: https://<host_name>/rest/oauth2/latest/authorize

    4. 토큰 URI 필드에 승인 코드를 액세스 토큰으로 교환하는 데 사용할 URI를 제공합니다. 이 주소의 형식은 다음과 같습니다.

      GitHub Enterprise: https://<host_name>/login/oauth/access_token GitLab Enterprise: https://<host_name>/oauth/access_token BitBucket 데이터 센터: https://<host_name>/rest/oauth2/latest/token

    5. 클라이언트 ID에 OAuth 앱의 클라이언트 ID를 제공합니다.

    6. 클라이언트 보안 비밀번호 를 제공하여 승인 서버로 앱을 인증합니다.

    7. 계정 커넥터가 Git 명령어를 실행하는 데 Developer Connect 프록시를 사용하는 경우 Developer Connect 프록시 사용 설정 을 선택합니다.

    8. 범위에서 사용 가능한 범위 목록을 선택합니다.

    9. (선택사항) 네트워킹 및 보안을 구성합니다.

      1. 이 계정 커넥터가 공개 인터넷을 사용할지 비공개 네트워크를 사용할지 선택합니다.

        비공개 네트워크인 경우 다음을 제공합니다.

        • 사용할 CA 인증서

        • 서비스 디렉터리 서비스의 정보

        서비스 디렉터리 서비스의 프로젝트를 식별하거나 리전, 네임스페이스, 서비스 이름을 지정할 수 있습니다.

      2. 이 앱의 PKCE를 사용 설정하거나 사용 중지합니다.

        OAuth 서비스는 PKCE를 지원해야 합니다.

    10. 만들기 를 클릭하여 이 계정 커넥터 만들기를 마칩니다.

Google Cloud CLI

  ```sh
  gcloud alpha developer-connect account-connectors create my-ac \
    --location=LOCATION \
    --project=PROJECT_ID \
    --custom-provider-oauth-config-system-id=PROVIDER \
    --custom-oauth-config-host-uri= HOST_URI \
    --custom-oauth-config-auth-uri=AUTH_URI \
    --custom-provider-oauth-config-scopes=SCOPES \
    --custom-oauth-config-token-uri=TOKEN_URI \
    --custom-oauth-config-client-id=CLIENT_ID \
    --custom-oauth-config-client-secret=SECRET

  ```

이 명령어에서 다음 항목을 바꿉니다.

  • LOCATION : 이 계정 커넥터를 만들려는 리전

  • PROJECT_ID : 이 계정 커넥터를 만들려는 프로젝트의 프로젝트 ID (프로젝트 번호가 아님)

  • PROVIDER: 연결할 SCM 제공업체

    GITHUB_ENTERPRISE, GITLAB_ENTERPRISE, BITBUCKET_DATA_CENTER

  • HOST_URI: 소스 코드 관리 시스템의 URL

  • AUTH_URI : 선택한 SCM 프로바이더에 인증하는 데 사용되는 URL

    예를 들면 다음과 같습니다.

    • GitHub Enterprise: https://<host_name>/login/oauth/authorize

    • GitLab 자체 호스팅: https://<host_name>/oauth/authorize

    • BitBucket 데이터 센터: https://<host_name>/rest/oauth2/latest/authorize

  • SCOPES : 이 계정 커넥터에 포함할 모든 제공업체 OAuth 범위를 쉼표로 구분된 목록

  • TOKEN_URI : 승인 코드를 액세스 토큰으로 교환하는 데 사용할 URI

  • CLIENT_ID: OAuth 앱의 클라이언트 ID

  • SECRET: 연결할 SCMS에서 제공하는 보안 비밀번호

내 계정 연결

계정 커넥터를 만든 후에도 계정 커넥터를 사용하려면 먼저 Developer Connect를 프로바이더의 계정에 연결해야 합니다.

  1. 콘솔 Google Cloud 에서 Developer Connect 를 엽니다.

    Developer Connect로 이동

  2. 계정 커넥터 를 선택합니다.

    계정 커넥터 페이지에는 프로젝트에 있는 모든 계정 커넥터가 나열됩니다.

  3. 제공업체 계정을 연결할 계정 커넥터의 이름을 클릭합니다.

    커넥터 세부정보 페이지가 표시됩니다.

  4. 내 계정 연결 을 클릭합니다.

    OAuth 인증 대화상자가 표시됩니다.

  5. 대화상자에 정보를 제공하여 제공업체에 인증합니다.

  6. 승인 을 클릭합니다.

계정 커넥터 업데이트

기존 계정 커넥터를 업데이트할 수 있지만 해당 커넥터의 범위만 업데이트하거나 프록시 설정을 전환하거나 둘 다 수행할 수 있습니다. 특정 계정 커넥터의 범위를 업데이트하면 해당 커넥터의 기존 사용자가 모두 삭제됩니다.

  1. 콘솔 Google Cloud 에서 Developer Connect 를 엽니다.

    Developer Connect로 이동

    Developer Connect에 Git 저장소 페이지가 표시됩니다.

  2. 계정 커넥터 를 선택합니다.

    계정 커넥터 페이지에는 프로젝트에 있는 모든 계정 커넥터가 나열됩니다.

  3. 업데이트할 계정 커넥터의 이름을 클릭합니다.

    커넥터 세부정보 페이지가 표시됩니다.

  4. 수정 을 클릭합니다.

  5. 범위 목록에서 이 계정 커넥터에 허용할 범위를 선택합니다.

  6. 저장 을 클릭합니다.

계정 커넥터 삭제

  1. 콘솔 Google Cloud 에서 Developer Connect 를 엽니다.

    Developer Connect로 이동

    Developer Connect에 Git 저장소 페이지가 표시됩니다.

  2. 계정 커넥터 를 선택합니다.

    계정 커넥터 페이지에는 프로젝트에 있는 모든 계정 커넥터가 나열됩니다.

  3. 더보기 메뉴에서 삭제 를 선택합니다.

    커넥터 세부정보 페이지가 표시됩니다.

  4. 수정 을 클릭합니다.

다음 단계