Application Integration에 지원되는 커넥터를 참조하세요.
액세스 제어 개요
Google Cloud 프로젝트를 만들면 만든 사람이 프로젝트의 유일한 주 구성원이 됩니다. 기본적으로 다른 주 구성원(사용자, 그룹 또는 서비스 계정)은 프로젝트나 해당 리소스에 액세스할 수 없습니다. 프로젝트에서 Application Integration을 성공적으로 프로비저닝한 후 새 주 구성원을 추가하고 Application Integration 리소스에 대한 액세스 제어를 설정할 수 있습니다.
Application Integration은 Identity and Access Management(IAM)를 사용하여 프로젝트 내에서 액세스 제어를 관리합니다. IAM을 사용하여 프로젝트 수준 또는 리소스 수준에서 액세스를 관리할 수 있습니다.
- 프로젝트 수준에서 리소스에 대한 액세스 권한을 부여하려면 주 구성원에게 하나 이상의 역할을 할당합니다.
- 특정 리소스에 대해 액세스 권한을 부여하려면 해당 리소스에 대해 IAM 정책을 설정합니다. 리소스는 리소스 수준 정책을 지원해야 합니다. 정책은 어떤 역할이 어떤 주 구성원에 할당되는지 정의합니다.
IAM 역할
Google Cloud 프로젝트의 모든 주 구성원에게 특정 권한이 있는 역할이 부여됩니다. 주 구성원을 프로젝트나 리소스에 추가할 때 구성원에게 부여할 역할을 지정합니다. 각 IAM 역할에는 주 구성원이 리소스에 대한 특정 작업을 수행할 수 있게 해주는 권한 집합이 포함되어 있습니다.
IAM의 여러 역할 유형에 대한 자세한 내용은 역할 이해를 참조하세요.
주 구성원에게 역할을 부여하는 방법은 액세스 권한 부여, 변경, 취소를 참조하세요.
Application Integration은 사전 정의된 IAM 역할의 특정 집합을 제공합니다. 이러한 역할을 사용하여 특정 Application Integration 리소스에 대한 액세스 권한을 제공하고 다른 Google Cloud 리소스에 대한 무단 액세스를 방지할 수 있습니다.
서비스 계정
서비스 계정은 사용자 대신 태스크 또는 작업을 수행할 수 있는 프로젝트와 연결된 Google Cloud 계정입니다. 서비스 계정에는 IAM을 사용하여 주 구성원과 동일한 방식으로 역할과 권한이 할당됩니다. 서비스 계정 및 다양한 유형의 서비스 계정에 대한 자세한 내용은 IAM 서비스 계정을 참조하세요.
서비스 계정에서 관련 API 메서드에 액세스하려면 서비스 계정에 적절한 IAM 역할을 부여해야 합니다. 서비스 계정에 IAM 역할을 부여하면 해당 서비스 계정이 연결된 모든 통합은 해당 역할로 승인을 부여합니다. 원하는 액세스 수준에 대해 사전 정의된 역할이 없으면 커스텀 역할을 만들고 부여할 수 있습니다.
Application Integration은 두 가지 유형의 서비스 계정을 사용합니다.
사용자 관리형 서비스 계정
사용자 관리형 서비스 계정을 통합에 연결하여 태스크를 실행할 사용자 인증 정보를 제공할 수 있습니다. 자세한 내용은 사용자 관리 서비스 계정을 참조하세요.
통합에 제공된 승인은 두 가지 별도 구성(연결된 서비스 계정에 부여된 역할과 액세스 범위)으로 제한됩니다. 두 가지 구성 모두 액세스를 허용해야 통합이 태스크를 실행할 수 있습니다.
사용자 관리형 서비스 계정의 이메일 주소는 다음과 같습니다.
service-account-name@PROJECT_ID.iam.gserviceaccount.com
기본 서비스 계정
Application Integration을 프로비저닝하는 새 Google Cloud 프로젝트에는 다음 이메일 주소가 있는 Application Integration 기본 서비스 계정이 있습니다.
service-PROJECT_NUMBER@gcp-sa-integrations.iam.gserviceaccount.com
Application Integration 기본 서비스 계정은 프로비저닝 중에 생성되며 기본 IAM 역할 및 권한이 있는 프로젝트에 자동으로 추가됩니다. 자세한 내용은 기본 서비스 계정을 참조하세요.
기본 서비스 계정에 추가 역할 또는 권한을 부여하는 방법에 대한 자세한 내용은 액세스 권한 부여, 변경, 취소를 참조하세요.
서비스 계정 추가
Application Integration은 통합에 서비스 계정을 추가하는 두 가지 방법을 제공합니다.- 리전에 거버넌스를 사용 설정한 경우 새 통합을 만드는 동안 서비스 계정을 추가해야 합니다.
- 거버넌스를 사용 설정하지 않은 경우 통합에 서비스 계정을 선택적으로 추가할 수 있습니다. 기존 통합에 서비스 계정을 추가하려면 통합 수정 및 보기를 참조하세요.
인증 규칙
통합에 OAuth 2.0 프로필과 사용자 관리형 서비스 계정이 모두 구성된 경우 기본적으로 OAuth 2.0 프로필이 인증에 사용됩니다. OAuth 2.0 프로필 또는 사용자 관리형 서비스 계정이 구성되어 있지 않으면 기본 서비스 계정(service-PROJECT_NUMBER@gcp-sa-integrations.iam.gserviceaccount.com
)이 사용됩니다. 태스크에서 기본 서비스 계정을 사용하지 않으면 실행이 실패합니다.
승인 규칙
서비스 계정을 통합에 연결하는 경우 서비스 계정에 부여한 IAM 역할에 따라 서비스 계정의 액세스 수준을 결정해야 합니다. IAM 역할이 없는 서비스 계정은 서비스 계정을 사용하여 리소스에 액세스할 수 없습니다.
액세스 범위는 OAuth를 통해 인증할 때 API 메서드에 대한 액세스 권한을 잠재적으로 더 제한합니다. 하지만 gRPC와 같은 다른 인증 프로토콜로 확장되지는 않습니다.
IAM 역할
서비스 계정에서 관련 API 메서드에 액세스하려면 서비스 계정에 적절한 IAM 역할을 부여해야 합니다.
서비스 계정에 IAM 역할을 부여하면 해당 서비스 계정이 연결된 모든 통합은 해당 역할로 승인을 부여합니다.
액세스 범위
액세스 범위는 통합에 승인을 지정하는 기존 방법입니다. gcloud CLI 또는 클라이언트 라이브러리의 요청에 사용되는 기본 OAuth 범위를 정의합니다. 범위를 사용하면 사용자에 대한 액세스 권한을 지정할 수 있습니다. 단일 공백(' ')으로 구분된 여러 범위를 지정할 수 있습니다. 자세한 내용은 Google API용 OAuth 2.0 범위를 참조하세요. 사용자 관리 서비스 계정의 경우 범위는 다음 범위로 사전 정의됩니다.
https://www.googleapis.com/auth/cloud-platform