이 문서에서는 Pub/Sub 주제를 나열하는 방법을 설명합니다. 주제를 나열하려면 Google Cloud 콘솔, gcloud CLI, 클라이언트 라이브러리, Pub/Sub API를 사용할 수 있습니다.
시작하기 전에
필수 역할 및 권한
주제를 나열하고 관리하는 데 필요한 권한을 얻으려면 관리자에게 주제 또는 프로젝트에 대한 Pub/Sub 편집자(roles/pubsub.editor
) IAM 역할을 부여해 달라고 요청하세요.
역할 부여에 대한 상세 설명은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.
이 사전 정의된 역할에는 주제를 나열하고 관리하는 데 필요한 권한이 포함되어 있습니다. 필요한 정확한 권한을 보려면 필수 권한 섹션을 펼치세요.
필수 권한
주제를 나열하고 관리하려면 다음 권한이 필요합니다.
-
주제 만들기:
pubsub.topics.create
-
주제 삭제:
pubsub.topics.delete
-
주제에서 구독 분리:
pubsub.topics.detachSubscription
-
주제 가져오기:
pubsub.topics.get
-
주제 나열:
pubsub.topics.list
-
주제에 게시:
pubsub.topics.publish
-
주제 업데이트:
pubsub.topics.update
-
주제의 IAM 정책 가져오기:
pubsub.topics.getIamPolicy
-
주제의 IAM 정책 구성:
pubsub.topics.setIamPolicy
커스텀 역할이나 다른 사전 정의된 역할을 사용하여 이 권한을 부여받을 수도 있습니다.
프로젝트 수준 및 개별 리소스 수준에서 액세스 제어를 구성할 수 있습니다. 한 프로젝트에서 구독을 만들고 이를 다른 프로젝트에 있는 주제에 연결할 수 있습니다. 각 프로젝트에 필요한 권한이 있는지 확인합니다.
주제 나열
콘솔
Google Cloud 콘솔에서 Pub/Sub 주제 페이지로 이동합니다.
주제 페이지에는 사용 가능한 모든 주제가 나열됩니다.
기본적으로 콘솔에서는 50개의 주제가 반환됩니다. 페이지당 행 수 드롭다운 전환 버튼을 사용하여 이 값을 늘려 최대 200개의 주제를 반환할 수 있습니다. 이 전환 버튼은 프로젝트의 주제가 20개를 초과하는 경우에만 콘솔에 표시됩니다.
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
주제를 나열하려면
gcloud pubsub topics list
명령어를 사용합니다.gcloud pubsub topics list
- PROJECT_ID는 프로젝트 ID입니다.
기본적으로 쿼리당 최대 100개의 결과가 반환됩니다.
페이지 크기 매개변수를 사용하여 최대 1,000개의 대체 값을 지정할 수 있습니다.
예를 들어 Google Cloud CLI를 사용하는 경우 --page-size=1000
을 지정합니다.
REST
주제를 나열하려면 projects.topics.list
메서드를 사용합니다.
요청:
요청은 Authorization
헤더의 액세스 토큰으로 인증해야 합니다. 현재 애플리케이션 기본 사용자 인증 정보의 액세스 토큰을 얻으려면 gcloud auth application-default print-access-token
을 실행합니다.
GET https://pubsub.googleapis.com/v1/projects/PROJECT_ID/topics Authorization: Bearer ACCESS_TOKEN
각 항목의 의미는 다음과 같습니다.
응답:
{ "topics": [ { "name": "projects/PROJECT_ID/topics/mytopic1", ... }, { "name": "projects/PROJECT_ID/topics/mytopic2", ... } ] }
C++
이 샘플을 시도하기 전에 빠른 시작: 클라이언트 라이브러리 사용의 C++ 설정 안내를 따르세요. 자세한 내용은 Pub/Sub C++ API 참고 문서를 확인하세요.
C#
이 샘플을 시도하기 전에 빠른 시작: 클라이언트 라이브러리 사용의 C# 설정 안내를 따르세요. 자세한 내용은 Pub/Sub C# API 참조 문서를 확인하세요.
Go
다음 샘플에서는 Go Pub/Sub 클라이언트 라이브러리의 주요 버전 (v2)을 사용합니다. 아직 v1 라이브러리를 사용하고 있다면 v2로의 마이그레이션 가이드를 참고하세요. v1 코드 샘플 목록을 보려면 지원 중단된 코드 샘플을 참고하세요.
이 샘플을 시도하기 전에 빠른 시작: 클라이언트 라이브러리 사용의 Go 설정 안내를 따르세요. 자세한 내용은 Pub/Sub Go API 참고 문서를 참조하세요.
자바
이 샘플을 시도하기 전에 빠른 시작: 클라이언트 라이브러리 사용의 Java 설정 안내를 따르세요. 자세한 내용은 Pub/Sub 자바 API 참조 문서를 참조하세요.
Node.js
이 샘플을 시도하기 전에 빠른 시작: 클라이언트 라이브러리 사용의 Node.js 설정 안내를 따르세요. 자세한 내용은 Pub/Sub Node.js API 참조 문서를 참조하세요.
Node.ts
이 샘플을 시도하기 전에 빠른 시작: 클라이언트 라이브러리 사용의 Node.js 설정 안내를 따르세요. 자세한 내용은 Pub/Sub Node.js API 참조 문서를 참조하세요.
PHP
이 샘플을 시도하기 전에 빠른 시작: 클라이언트 라이브러리 사용의 PHP 설정 안내를 따르세요. 자세한 내용은 Pub/Sub PHP API 참조 문서를 참조하세요.
Python
이 샘플을 시도하기 전에 빠른 시작: 클라이언트 라이브러리 사용의 Python 설정 안내를 따르세요. 자세한 내용은 Pub/Sub Python API 참조 문서를 참조하세요.
Ruby
다음 샘플에서는 Ruby Pub/Sub 클라이언트 라이브러리 v3을 사용합니다. 아직 v2 라이브러리를 사용하고 있다면 v3로의 마이그레이션 가이드를 참고하세요. Ruby v2 코드 샘플 목록을 보려면 지원 중단된 코드 샘플을 참고하세요.
이 샘플을 시도하기 전에 빠른 시작: 클라이언트 라이브러리 사용의 Ruby 설정 안내를 따르세요. 자세한 내용은 Pub/Sub Ruby API 참고 문서를 참조하세요.
다음 단계
주제의 구독 유형을 선택합니다.
gcloud CLI를 사용하여 주제를 만들거나 수정합니다.
REST API로 주제를 만들거나 수정하세요.