GCP BigQuery 테이블에 사용자 권한 부여 방법 정리
BigQuery에서 특정 사용자에게 테이블 단위로 접근 권한을 부여해야 할 때, GCP에서는 IAM(Identity and Access Management)을 통해 프로젝트, 데이터셋, 테이블 단위로 역할(Role)을 지정할 수 있습니다. 이 글에서는 dslee1371@gmail.com 계정에 BigQuery 권한을 할당한 과정을 단계별로 정리합니다.
✅ 1단계: IAM에서 기본 역할 부여
먼저, 프로젝트 레벨에서 기본 BigQuery 권한을 부여합니다.
-
경로:
IAM & Admin > IAM -
역할 부여 대상:
dslee1371@gmail.com -
부여된 역할:
BigQuery Job User, BigQuery Read Session User, Browser
📌 설명:
BigQuery User 역할은 사용자가 BigQuery에서 쿼리를 실행할 수 있는 기본 권한을 제공합니다. 하지만 이 권한만으로는 특정 Dataset이나 Table에 접근할 수 없으므로, 추가적으로 Dataset 및 Table 권한을 설정해야 합니다.
✅ 2단계: Dataset 수준 권한 설정
다음으로, 특정 데이터셋(Dataset)에 대한 접근 권한을 추가합니다.
-
경로:
BigQuery > [Dataset 이름] > Share > Manage Permissions -
역할 부여 대상:
dslee1371@gmail.com -
부여된 역할:
-
BigQuery User
-
📌 설명:
-
BigQuery User: 쿼리 실행 및 테이블 데이터 조회를 허용합니다. -
BigQuery Metadata Viewer: 테이블의 스키마 구조와 메타데이터를 확인할 수 있습니다.
✅ 3단계: Table 수준 권한 설정
마지막으로, 특정 테이블에 직접 접근할 수 있도록 별도의 권한을 설정합니다.
-
경로:
BigQuery > [Table 이름] > Share > Manage Permissions -
역할 부여 대상:
dslee1371@gmail.com -
부여된 역할:
-
BigQuery Data viewer -
BigQuery Metadata Viewer
-
📌 설명:
Table 단위의 권한은 특정 사용자에게 제한된 테이블만 보여주고 싶을 때 사용됩니다. 일반적으로는 Dataset 단위 권한 설정으로 충분하지만, 세밀한 제어가 필요할 경우 Table 수준에서도 설정 가능합니다.
🔍 참고 사항
-
최소 권한 원칙: 필요한 범위에 따라 프로젝트 전체가 아닌 Dataset 또는 Table 수준에서 권한을 부여하는 것이 보안상 안전합니다.
-
역할 분리: 쿼리 실행 권한(
BigQuery Job User)이 필요한 경우, 추가적인 역할 부여가 필요할 수 있습니다. -
권한 테스트: 권한 부여 후 해당 계정으로 로그인하여 정상적으로 쿼리 실행 및 테이블 접근이 가능한지 반드시 확인하세요.
댓글
댓글 쓰기