Pub/Sub를 사용하여 상태 변경사항 모니터링

이 페이지에서는 Pub/Sub를 사용하여 Cloud KMS 리소스의 상태 변경사항 알림을 만드는 방법을 보여줍니다.

시작하기 전에

API를 사용 설정하고, 필요한 권한을 부여하고, Pub/Sub 주제를 만들려면 '애셋 변경사항 모니터링'에서 시작하기 전에 안내를 따르세요.

피드 구성

관심 있는 변경사항 및 리소스 유형을 모니터링하는 피드를 구성합니다.

모든 리소스 변경사항 알림

피드를 만들려면 gcloud asset feeds create 명령어를 사용합니다.

gcloud asset feeds create FEED_NAME \
  --project=PROJECT_ID  \
  --asset-types="RESOURCE_TYPE" \
  --pubsub-topic="PUBSUB_TOPIC"

다음을 바꿉니다.

  • FEED_NAME: Pub/Sub 피드에 사용할 이름입니다.
  • PROJECT_ID: 모니터링하려는 Cloud KMS 프로젝트의 ID입니다.
  • RESOURCE_TYPE: 알림을 수신하려는 리소스 유형입니다. 리소스 유형 사이에 쉼표를 사용합니다(예: cloudkms.googleapis.com/CryptoKey,cloudkms.googleapis.com/CryptoKeyVersion). 다음을 포함하여 모든 지원되는 리소스 유형에 대해 알림을 설정할 수 있습니다.

    • cloudkms.googleapis.com/CryptoKey
    • cloudkms.googleapis.com/CryptoKeyVersion
    • cloudkms.googleapis.com/EkmConnection
    • cloudkms.googleapis.com/ImportJob
    • cloudkms.googleapis.com/KeyRing
  • PUBSUB_TOPIC: 시작하기 전에에서 만든 Pub/Sub 주제의 이름입니다.

그러면 표시된 유형의 리소스가 생성되거나 업데이트될 때 알림이 생성됩니다. 이 알림은 리소스가 업데이트되었음을 나타내지만 업데이트 세부 정보를 포함하지 않습니다. 예를 들어 CryptoKeyVersion의 업데이트 알림은 해당 버전이 기본으로 설정되었거나 버전 폐기가 예약되었음을 나타낼 수 있습니다. 리소스 업데이트 알림이 수신되면 해당 리소스를 검사하여 현재 상태를 확인해야 합니다.

특정 리소스 변경사항 알림

조건이 포함된 피드를 만들려면 --condition-expression 플래그와 함께 gcloud asset feeds create 명령어를 사용합니다.

gcloud asset feeds create FEED_NAME \
  --project=PROJECT_ID  \
  --asset-types="RESOURCE_TYPE" \
  --pubsub-topic="PUBSUB_TOPIC" \
  --condition-expression="CONDITION_EXPRESSION"

다음을 바꿉니다.

  • FEED_NAME: Pub/Sub 피드에 사용할 이름입니다.
  • PROJECT_ID: Cloud KMS 프로젝트의 ID입니다.
  • RESOURCE_TYPE: 알림을 수신하려는 리소스 유형입니다(예: cloudkms.googleapis.com/CryptoKeyVersion). 다음을 포함하여 모든 지원되는 리소스 유형에 대해 알림을 설정할 수 있습니다.

    • cloudkms.googleapis.com/CryptoKey
    • cloudkms.googleapis.com/CryptoKeyVersion
    • cloudkms.googleapis.com/EkmConnection
    • cloudkms.googleapis.com/ImportJob
    • cloudkms.googleapis.com/KeyRing
  • PUBSUB_TOPIC: 시작하기 전에에서 만든 Pub/Sub 주제의 이름입니다.

  • CONDITION_EXPRESSION: Common Expression Language(CEL)의 조건 표현식입니다. 예를 들어 "folders/FOLDER_NUMBER" in temporal_asset.asset.ancestors는 표시된 리소스가 FOLDER_NUMBER 폴더 내에 있을 때만 피드가 알림을 생성하도록 만듭니다.

그러면 지정된 조건 표현식과 일치하는 표시된 유형의 리소스가 생성, 삭제, 업데이트될 때 알림이 생성됩니다.