빅퀴리 관련 강의를 듣고 작업을 하는 과정에서 다음과 같이 접근 오류가 발생하였다.
I AM 에서 서비스 계정을 생성하고 서비스 계정에서 key를 생성하여 json 파일을 다운 받아서 파이썬 api 연결을 시도했는데 다음과 같은 오류가 발생했다.
from google.cloud import bigquery
from google.oauth2 import service_account
credentials = service_account.Credentials.from_service_account_file('json 파일 경로')
# GCP 클라이언트 객체 생성
client = bigquery.Client(credentials = credentials,
project = credentials.project_id)
dataset_name = '데이터세트 이름'
table_name = '테이블 이름'
# 데이터 조회 쿼리
sql = """
SELECT
*
FROM
{}.{}
""".format(dataset_name, table_name)
# 데이터 조회 쿼리 실행 결과
query_job = client.query(sql)
# 데이터프레임 변환
df = query_job.to_dataframe()
print(df)
문제는 생성한 서비스 계정에 권한을 안 줘서였다.
권한을 주는 방법

I AM 에 엑세스 권한 부여를 한다.

새 주 구성원에 생성한 서비스 계정을 입력하면 된다.(이걸 몰라서 왜 메일 주소를 입력하는거지 했다...)
역할 지정은 'Bigquery 관리자'로 지정하고 저장하면 끝!
참고로 이메일 주소는 서비스 계정 탭에서 확인 가능합니다.

'DevLog > 오류 해결 (Troubleshooting)' 카테고리의 다른 글
| [Python] AttributeError: 'OptionEngine' object has no attribute 'execute' (1) | 2024.05.29 |
|---|---|
| [Python] TypeError: 'type' object is not subscriptable (1) | 2023.09.12 |
| [Python] ModuleNotFoundError: No module named 'dotenv' (0) | 2023.08.18 |
| [Python] File "<fstring>", line 1 SyntaxError: invalid syntax (0) | 2023.08.18 |
| ERROR: failed to solve: failed to push failed to authorize: (0) | 2023.07.25 |