BigQuery의 보안 및 액세스 제어 소개

이 문서에서는 Identity and Access Management (IAM)를 사용하여 BigQuery에서 액세스 제어를 간략하게 설명합니다. IAM을 사용하면 특정 BigQuery 리소스에 대한 세분화된 액세스 권한을 부여하고 다른 리소스에 대한 액세스를 방지할 수 있습니다. IAM은 실제로 필요한 것보다 더 많은 권한을 갖지 않도록 지정하는 최소 권한의 보안 원칙을 적용하는 데 도움이 됩니다.

사용자, 그룹 또는 서비스 계정과 같은 IAM 주 구성원이 Google Cloud API를 호출하는 경우 해당 주 구성원에게 리소스를 사용하는 데 필요한 최소 IAM 권한이 있어야 합니다. 주 구성원에게 필수 권한을 부여하려면 주 구성원에게 IAM 역할을 부여합니다.

이 문서에서는 사전 정의된 커스텀 IAM 역할을 사용하여 주 구성원이 BigQuery 리소스에 액세스하도록 허용하는 방법을 설명합니다.

Google Cloud에서 액세스가 관리되는 방식을 알아보려면 IAM 개요를 참고하세요.

IAM 역할 유형

역할은 IAM 보안 주체에 부여할 수 있는 권한 모음입니다. IAM에서 다음 유형의 역할을 사용하여 BigQuery 리소스에 대한 액세스 권한을 부여할 수 있습니다.

사전 정의된 IAM 역할에 하나 이상의 권한이 포함되어 있는지 확인하려면 다음 방법 중 하나를 사용하면 됩니다.

BigQuery의 IAM 역할

권한이 사용자, 그룹, 서비스 계정에 직접 할당되지 않습니다. 대신 사용자, 그룹 또는 서비스 계정에 리소스에 대해 작업을 수행할 수 있는 권한을 부여하는 하나 이상의 사전 정의된 역할 또는 커스텀 역할이 부여됩니다. 이러한 역할은 특정 리소스에서 부여하지만 리소스 계층 구조에 있는 해당 리소스의 모든 하위 요소에도 적용됩니다.

사용자에게 여러 역할 유형을 할당할 때 부여되는 권한은 각 역할의 권한의 합집합입니다.

다음 BigQuery 리소스에 대한 액세스 권한을 부여할 수 있습니다.

  • 데이터 세트 및 데이터 세트 내의 리소스:
    • 테이블 및 뷰
    • 루틴
  • 연결
  • 저장된 쿼리
  • 데이터 캔버스
  • 데이터 준비
  • 파이프라인
  • 저장소

Resource Manager 리소스에 대한 액세스 권한 부여

주 구성원에게 BigQuery 역할을 부여한 다음 조직, 폴더 또는 프로젝트에 해당 역할을 부여하여 리소스 관리자를 통해 BigQuery 리소스에 대한 액세스 권한을 구성할 수 있습니다.

조직 및 프로젝트와 같은 Resource Manager 리소스에 역할을 부여하면 조직 또는 프로젝트의 모든 BigQuery 리소스에 대한 권한이 부여됩니다.

IAM을 사용하여 Resource Manager 리소스에 대한 액세스를 관리하는 방법에 대한 자세한 내용은 IAM 문서의 프로젝트, 폴더, 조직에 대한 액세스 관리를 참고하세요.

데이터 세트에 대한 액세스 권한 부여

프로젝트의 다른 리소스에 대한 전체 액세스 권한을 제공하지 않고 데이터 세트 수준에서 역할을 할당하여 특정 데이터 세트에 대한 액세스 권한을 제공할 수 있습니다. IAM 리소스 계층 구조에서 BigQuery 데이터 세트는 프로젝트의 하위 리소스입니다. 데이터 세트 수준에서 역할을 할당하는 방법에 대한 자세한 내용은 IAM으로 리소스 액세스 제어를 참고하세요.

데이터 세트 내의 개별 리소스에 대한 액세스 권한 부여

데이터 세트의 리소스에 대해 전체 액세스 권한을 제공하지 않고 데이터 세트 내의 특정 리소스 유형에 대한 액세스 권한을 역할에 부여할 수 있습니다.

데이터 세트 내의 다음 리소스에 역할을 적용할 수 있습니다.

  • 테이블 및 뷰
  • 루틴

테이블, 뷰 또는 루틴 수준에서 역할을 할당하는 방법에 대한 자세한 내용은 IAM으로 리소스 액세스 제어를 참고하세요.

다음 단계