Google Drive 연결 만들기 및 구성

이 페이지에서는 Integration Connectors에서 Google Drive 연결을 만들고 구성하는 방법을 설명합니다. Google Drive 커넥터에 대한 자세한 내용은 Google Drive 커넥터 개요를 참고하세요.

시작하기 전에

Google Cloud 프로젝트에서 다음 작업을 수행합니다.

  • 네트워크 연결이 설정되어 있는지 확인합니다. 네트워크 패턴에 대한 자세한 내용은 네트워크 연결을 참조하세요.
  • 커넥터를 구성하는 사용자에게 roles/connectors.admin IAM 역할을 부여합니다.
  • 커넥터에 사용할 서비스 계정roles/secretmanager.viewerroles/secretmanager.secretAccessor IAM 역할을 부여합니다.
  • 다음 서비스를 사용 설정합니다.
    • secretmanager.googleapis.com(Secret Manager API)
    • connectors.googleapis.com(Connectors API)

    서비스 사용 설정 방법은 서비스 사용 설정을 참조하세요. 이러한 서비스나 권한이 이전 프로젝트에서 사용 설정되지 않았으면 커넥터를 구성할 때 서비스나 권한을 사용 설정하라는 메시지가 표시됩니다.

Google Drive 연결 만들기

Google Drive 연결을 만들려면 다음 단계를 따르세요.

  1. Google Cloud 콘솔에서 Integration Connectors > Connections 페이지로 이동합니다.

    연결로 이동

  2. 연결 만들기를 클릭합니다.

    연결 만들기 페이지가 표시됩니다.

  3. 위치 섹션에서 다음을 수행합니다.
    1. 리전을 클릭한 다음 연결의 위치를 선택합니다.

      지원되는 모든 리전 목록은 위치를 참조하세요.

    2. 다음을 클릭합니다.
  4. 연결 세부정보 섹션에서 다음 세부정보를 제공합니다.
    1. 커넥터: Google Drive를 선택합니다.
    2. 커넥터 버전: 사용할 커넥터 버전을 선택합니다.

      선택하는 커넥터 버전은 사용하려는 Google Drive API 버전에 따라 다릅니다. 자세한 내용은 Google Drive 연결 버전을 참고하세요.

    3. 연결 이름: 연결 이름을 입력합니다.
    4. 설명: (선택사항) 연결에 대한 설명을 입력합니다.
    5. 필요한 경우 Cloud Logging을 사용 설정한 다음 로그 수준을 선택합니다. 기본적으로 로그 수준은 Error로 설정됩니다.
    6. 서비스 계정: 연결에 사용할 서비스 계정을 선택합니다. 서비스 계정에 필요한 관련 IAM 역할과 권한이 있는지 확인합니다.
    7. 모든 드라이브 지원: 공유 드라이브에 대한 액세스를 사용 설정하려면 이 체크박스를 선택합니다. 이 옵션은 Google Drive v2에서만 사용할 수 있습니다.
    8. 연결 노드 설정: (선택사항) 연결 노드 설정을 구성합니다.
      • 최소 노드 수: 최소 연결 노드 수를 입력합니다.
      • 최대 노드 수: 최대 연결 노드 수를 입력합니다.

      노드는 트랜잭션을 처리하는 연결의 단위(또는 복제본)입니다. 연결에 대해 더 많은 트랜잭션을 처리하려면 더 많은 노드가 필요합니다. 이와 반대로 더 적은 트랜잭션을 처리하기 위해서는 더 적은 노드가 필요합니다. 노드가 커넥터 가격 책정에 미치는 영향을 파악하려면 연결 노드 가격 책정을 참고하세요. 값을 입력하지 않으면 기본적으로 최소 노드가 (높은 가용성을 위해) 2로 설정되고 최대 노드는 50으로 설정됩니다.

    9. 다음을 클릭합니다.
  5. 인증 섹션에서 연결의 인증 유형을 선택하고 구성합니다.

    서비스 계정

    애플리케이션이 Google Cloud 가상 머신에서 실행되고 인증에 VM의 연결된 서비스 계정을 사용해야 하는 경우 이 옵션을 선택합니다.

    이 인증 유형을 사용하려면 인증에 필요한 관련 IAM 역할 및 권한이 있는 서비스 계정이 있어야 합니다.

    서비스 계정 만들기에 대한 자세한 내용은 서비스 계정 만들기 및 관리를 참고하세요. 서비스 계정에 역할을 부여하는 방법에 대한 자세한 내용은 리소스에 대한 액세스 권한 부여, 변경, 취소를 참고하세요.

    서비스 계정 인증 유형의 샘플 연결 세부정보

    필드 이름 세부정보
    위치 us-central1
    커넥터 Google Drive
    커넥터 버전 2
    연결 이름 googledrive-ws-gcpaccount
    Cloud Logging 사용 설정
    서비스 계정 123456789012-compute@developer.gserviceaccount.com
    최소 노드 수 2
    최대 노드 수 50
    인증 서비스 계정 인증

    OAuth 2.0 - JWT Bearer

    OAuth 2.0 JWT Bearer 인증 유형을 구성하려면 다음 단계를 따르세요.

    1. 서비스 계정 JSON 키를 만들고 JSON 키 파일을 다운로드합니다. 이 키 파일은 연결의 JWT 인증서로 사용됩니다.
    2. JSON 키 파일 또는 JWT 인증서를 저장할 보안 비밀을 만듭니다.
    3. Integration Connectors에서 연결을 만들 때 보안 비밀 세부정보를 제공합니다.
      • JWT 인증서: JWT 인증서가 포함된 보안 비밀을 선택합니다.
      • 보안 비밀 버전: 선택한 보안 비밀의 보안 비밀 버전을 선택합니다.
      • JWT 주체: (선택사항) 연결에 사용할 JWT 주체를 입력합니다. 이 값은 JWT 토큰의 sub 필드로 사용됩니다.

    OAuth 2.0 - JWT Bearer 인증 유형의 샘플 연결 세부정보

    필드 이름 세부정보
    위치 us-central1
    커넥터 Google Drive
    커넥터 버전 2
    연결 이름 googledrivejwt
    Cloud Logging 사용 설정
    서비스 계정 123456789012-compute@developer.gserviceaccount.com
    최소 노드 수 2
    최대 노드 수 50
    인증 OAuth 2.0 - JWT Bearer
    JWT 인증서
    {
      "type": "service_account",
      "project_id": "sm****-****-******",
      "private_key_id": "0b***************************",
      "private_key": "-----BEGIN PRIVATE KEY-----\nO********************************************=\n-----END PRIVATE KEY-----\n",
      "client_email": "go**********************************8",
      "client_id": "10**********************",
      "auth_uri": "https:***********************",
      "token_uri": "https:************************",
      "auth_provider_x509_cert_url": "https:*********************",
      "client_x509_cert_url": "https:****************************************************",
      "universe_domain": "go********"
    }
    보안 비밀 버전 2

    OAuth 2.0 승인 코드

    애플리케이션에 브라우저 기반 로그인을 통한 최종 사용자 상호작용이 필요한 경우 이 방법을 사용하세요.

    OAuth 2.0 승인 코드 인증 유형을 구성하려면 다음 단계를 따르세요.

    1. 웹 애플리케이션의 OAuth 2.0 사용자 인증 정보 만들기 이 프로세스를 통해 클라이언트 ID와 클라이언트 보안 비밀 JSON 파일이 생성됩니다.
    2. 애플리케이션에 부여할 액세스 범위 확인
    3. OAuth 2.0 사용자 인증 정보 (client_secret.json)를 저장할 보안 비밀번호를 만듭니다.
    4. Integration Connectors에서 연결을 만들 때 클라이언트 ID, 범위, 보안 비밀번호 세부정보를 제공합니다.
      • 클라이언트 ID: 웹 애플리케이션에 대해 생성된 클라이언트 ID를 입력합니다.
      • 범위: 쉼표로 구분된 원하는 범위 목록을 입력합니다.
      • 클라이언트 보안 비밀번호: OAuth 2.0 사용자 인증 정보가 포함된 보안 비밀을 선택합니다.
      • 보안 비밀 버전: 선택한 보안 비밀의 보안 비밀 버전을 선택합니다.

    OAuth 2.0 승인 코드 인증 유형의 샘플 연결 세부정보

    필드 이름 세부정보
    위치 europe-west1
    커넥터 Google Drive
    커넥터 버전 2
    연결 이름 googledrive-wsconn-code
    Cloud Logging 사용 설정
    서비스 계정 123456789012-compute@developer.gserviceaccount.com
    최소 노드 수 2
    최대 노드 수 50
    인증 OAuth 2.0 - 승인 코드
    클라이언트 ID CLIENT_ID
    범위 https://www.googleapis.com/auth/drive, https://www.googleapis.com/auth/drive.readonly, https://www.googleapis.com/auth/drive.file, https://www.googleapis.com/auth/drive.appdata, https://www.googleapis.com/auth/drive.appfolder, https://www.googleapis.com/auth/drive.install, https://www.googleapis.com/auth/drive.metadata, https://www.googleapis.com/auth/drive.metadata.readonly, https://www.googleapis.com/auth/drive.activity, https://www.googleapis.com/auth/drive.activity.readonly, https://www.googleapis.com/auth/drive.apps.readonly, https://www.googleapis.com/auth/drive.scripts, https://www.googleapis.com/auth/drive.meet.readonly
    클라이언트 보안 비밀번호 CLIENT_SECRET
    보안 비밀 버전 2
  6. 인증 재정의 사용 설정: (선택사항) 런타임 중에 연결이 다른 인증을 동적으로 수락하도록 하려면 이 체크박스를 선택합니다.
  7. 다음을 클릭합니다.
  8. 검토 섹션에서 연결 및 인증 세부정보를 검토합니다. 필요한 경우 언제든지 이전 섹션을 클릭하여 변경할 수 있습니다.
  9. 만들기를 클릭합니다.

    Integration Connectors가 제공된 구성에 대한 연결 생성을 시작합니다. 과정을 완료하는 데 몇 분 정도 걸립니다. 연결이 생성되면 연결 페이지로 리디렉션됩니다.

통합에서 Google Drive 연결 사용

연결을 만들면 Apigee Integration 및 Application Integration에서 사용할 수 있게 됩니다. 커넥터 태스크를 통해 통합에서 연결을 사용할 수 있습니다.

  • Apigee Integration에서 커넥터 태스크를 만들고 사용하는 방법을 알아보려면 커넥터 태스크를 참조하세요.
  • Application Integration에서 커넥터 태스크를 만들고 사용하는 방법을 이해하려면 커넥터 태스크를 참조하세요.

지원되는 항목 및 작업 목록은 지원되는 항목 및 작업을 참고하세요. 지원되는 커넥터별 작업에 대한 자세한 내용은 지원되는 작업을 참고하세요.

Application Integration의 사용 사례 예시

다음 예에서는 Application Integration에서 커넥터 작업을 사용하여 구성된 Google Drive 연결을 통해 작업을 실행하는 방법을 보여줍니다.

예 - 모든 파일 나열

  1. Configure connector task 대화상자에서 Entities를 클릭합니다.
  2. Entity 목록에서 Files를 선택합니다.
  3. List 작업을 선택한 후 완료를 클릭합니다.
  4. 커넥터 태스크의 태스크 입력 섹션에서 고객 요구사항에 따라 filterClause를 설정할 수 있습니다.
  5. filterClause 값은 항상 이 형식의 작은따옴표 (') 안에 전달해야 합니다.

    filterClause를 사용하여 열을 기준으로 특정 레코드 집합을 필터링할 수 있습니다.

예 - 파일 세부정보 가져오기

  1. Configure connector task 대화상자에서 Entities를 클릭합니다.
  2. Entity 목록에서 Files를 선택합니다.
  3. Get 작업을 선택한 후 완료를 클릭합니다.
  4. entityId를 전달할 키인 '1wsHFAusizqFe5O2'로 설정합니다. entityId를 설정하려면 데이터 매핑데이터 매퍼 섹션에서 데이터 매핑 편집기 열기를 클릭한 후 입력 값 필드에 "1wsHFAusizqFe5O2"를 입력하고 entityId를 로컬 변수로 선택합니다.
  5. entityId 값은 '1wsHFAusizqFe5O2'와 같이 직접 전달해야 합니다. 여기서 '1wsHFAusizqFe5O2'는 전달되는 고유한 기본 키 값입니다.

예시 - 파일 삭제

  1. Configure connector task 대화상자에서 Entities를 클릭합니다.
  2. Entity 목록에서 Files를 선택합니다.
  3. Delete 작업을 선택한 후 완료를 클릭합니다.
  4. entityId를 전달할 키인 '1nLrFkDM8nOehXwW8XEpc2UZDBrq_ku-L'로 설정합니다. entityId를 설정하려면 데이터 매핑데이터 매퍼 섹션에서 데이터 매핑 편집기 열기를 클릭한 후 입력 값 필드에 "1nLrFkDM8nOehXwW8XEpc2UZDBrq_ku-L"를 입력하고 entityId를 로컬 변수로 선택합니다.
  5. 항목에 복합 비즈니스 또는 기본 키가 2개 있으면 entityId를 지정하는 대신 filterClause를 id='1nLrFkDM8nOehXwW8XEpc2UZDBrq_ku-L'로 설정할 수도 있습니다.

예시 - 파일 만들기

  1. Configure connector task 대화상자에서 Entities를 클릭합니다.
  2. Entity 목록에서 Files를 선택합니다.
  3. Create 작업을 선택한 후 완료를 클릭합니다.
  4. 데이터 매핑 태스크의 데이터 매퍼 섹션에서 Open Data Mapping Editor를 클릭한 후 Input Value 필드에 다음과 유사한 값을 입력하고 entityId/connectorInputPayload를 로컬 변수로 선택합니다.
  5.   { "FileData": " ",
      "Name": "creategcpshareddrivedocxfile.docx", 
      "MIMEType": "application/vnd.google-apps.document",
      "Encoding": "BASE64"}
    

    통합이 성공하면 커넥터 태스크의 connectorOutputPayload 응답 매개변수가 다음과 비슷한 값을 갖습니다.

    { "Id": "1C48uLda6lyeakx2hOUdwnib-qtFOAhlpR_Ja2AmPvTU"}
    

예 - 공유 드라이브 만들기

  1. Configure connector task 대화상자에서 Entities를 클릭합니다.
  2. Entity 목록에서 Drives를 선택합니다.
  3. Create 작업을 선택한 후 완료를 클릭합니다.
  4. 데이터 매핑 태스크의 데이터 매퍼 섹션에서 Open Data Mapping Editor를 클릭한 후 Input Value 필드에 다음과 유사한 값을 입력하고 entityId/connectorInputPayload를 로컬 변수로 선택합니다.
  5.   {"Name": "SharedDrive7"}
    

    통합이 성공하면 커넥터 태스크의 connectorOutputPayload 응답 매개변수가 다음과 비슷한 값을 갖습니다.

      {"Id": "0AN6y5wEvVrmPUk9PVA"}
    

예시 - 파일, 폴더 또는 공유 드라이브의 권한 만들기

  1. Configure connector task 대화상자에서 Entities를 클릭합니다.
  2. Entity 목록에서 Permissions를 선택합니다.
  3. Create 작업을 선택한 후 완료를 클릭합니다.
  4. 데이터 매핑 태스크의 데이터 매퍼 섹션에서 Open Data Mapping Editor를 클릭한 후 Input Value 필드에 다음과 유사한 값을 입력하고 entityId/connectorInputPayload를 로컬 변수로 선택합니다.
  5.   {"ResourceId": "1PErCmc9MmnYzcslo49DeIIN1-ACs3W4L",
      "Role": "COMMENTER",
      "Type": "USER",
      "EmailAddress": "charlie@altostrat.com"}
    

    통합이 성공하면 커넥터 태스크의 connectorOutputPayload 응답 매개변수가 다음과 비슷한 값을 갖습니다.

      { "PermissionId": "10596783046483894074",
      "ResourceId": "1PErCmc9MmnYzcslo49DeIIN1-ACs3W4L"}
    

예시 - 파일 세부정보 업데이트

  1. Configure connector task 대화상자에서 Entities를 클릭합니다.
  2. Entity 목록에서 Files를 선택합니다.
  3. Update 작업을 선택한 후 완료를 클릭합니다.
  4. 데이터 매핑 태스크의 데이터 매퍼 섹션에서 Open Data Mapping Editor를 클릭한 후 Input Value 필드에 다음과 유사한 값을 입력하고 entityId/connectorInputPayload/filterClause를 로컬 변수로 선택합니다.
      {"Name": "New Updated file"}
    
  5. 파일의 entityId를 설정합니다. entityId를 설정하려면 Open Data Mapping Editor를 클릭한 후 Input Value 필드에 다음과 유사한 값을 입력하고 entityId/connectorInputPayload/filterClause를 로컬 변수로 선택합니다.

    entityId를 지정하는 대신 filterClause를 1IY5YhQN-LRgR3IxKlheqXM83sJP3DMFm으로 설정할 수도 있습니다.

  6. 이 예시를 실행하면 커넥터 태스크의 connectorOutputPayload 출력 변수에서 다음과 비슷한 응답이 반환됩니다.

    {"Id": "1IY5YhQN-LRgR3IxKlheqXM83sJP3DMFm">}

예시 - 파일, 폴더 또는 공유 드라이브의 권한 업데이트

  1. Configure connector task 대화상자에서 Entities를 클릭합니다.
  2. Entity 목록에서 Permissions를 선택합니다.
  3. Update 작업을 선택한 후 완료를 클릭합니다.
  4. 데이터 매핑 태스크의 데이터 매퍼 섹션에서 Open Data Mapping Editor를 클릭한 후 Input Value 필드에 다음과 유사한 값을 입력하고 entityId/connectorInputPayload/filterClause를 로컬 변수로 선택합니다.
  5. (PermissionId='10596783046483894074' and ResourceId='0AKfRSSy6kZbfUk9PVA')
    { "Role": "READER"}
    
  6. 권한의 entityId를 설정합니다. entityId를 설정하려면 Open Data Mapping Editor를 클릭한 후 Input Value 필드에 다음과 유사한 값을 입력하고 entityId/connectorInputPayload/filterClause를 로컬 변수로 선택합니다.

    entityId를 지정하는 대신 filterClausePermissionId='10596783046483894074' and ResourceId='0AKfRSSy6kZbfUk9PVA'로 설정할 수도 있습니다.

    이 예시를 실행하면 커넥터 태스크의 connectorOutputPayload 출력 변수에서 다음과 비슷한 응답이 반환됩니다.

      {"PermissionId": "10596783046483894074",
      "ResourceId": "0AKfRSSy6kZbfUk9PVA"}