이 페이지에서는 다음 예시를 포함하여 Security Command Center API 알림 기능을 사용하는 방법을 설명합니다.
NotificationConfig
만들기NotificationConfig
받기NotificationConfig
업데이트NotificationConfig
삭제NotificationConfig
나열- Pub/Sub 알림 수신
또는 Security Command Center 프리미엄 고객은 Security Command Center에서 Pub/Sub의 지속적 내보내기를 설정할 수도 있습니다.
시작하기 전에
이 페이지의 예시를 사용하려면 발견 항목 알림 설정 가이드를 완료해야 합니다.
다음 예시를 실행하려면 적절한 권한이 있는 Identity and Access Management(IAM) 역할이 필요합니다.
NotificationConfig
만들기: 보안 센터 알림 구성 편집자(roles/securitycenter.notificationConfigEditor
)NotificationConfig
가져오기 및 나열: 보안 센터 알림 구성 뷰어(roles/securitycenter.notificationConfigViewer
) 또는 보안 센터 알림 구성 편집자(roles/securitycenter.notificationConfigEditor
)NotificationConfig
업데이트 및 삭제: 보안 센터 알림 편집자(roles/securitycenter.notificationConfigEditor
)
notificationConfig
에 액세스하는 주 구성원에게 적절한 역할을 부여하려면 다음 IAM 역할 중 하나가 있어야 합니다.
- 조직 관리자(
roles/resourcemanager.organizationAdmin
) - 폴더 IAM 관리자(
roles/resourcemanager.folderIamAdmin
) - 프로젝트 IAM 관리자(
roles/resourcemanager.projectIamAdmin
)
Security Command Center의 IAM 역할은 조직, 폴더, 프로젝트 수준에서 부여할 수 있습니다. 발견 항목, 애셋, 보안 소스를 보거나 수정하거나 만들거나 업데이트할 수 있는 기능은 액세스 권한이 부여된 수준에 따라 다릅니다. Security Command Center 역할에 대해 자세히 알아보려면 액세스 제어를 참조하세요.
데이터 상주 및 알림
Security Command Center에 데이터 상주가 사용 설정된 경우 Pub/Sub(notificationConfig
리소스)에 대한 지속적인 내보내기를 정의하는 구성은 데이터 상주 제어의 대상이 되며 Security Command Center 위치에 저장됩니다.
Security Command Center 위치의 발견 항목을 Pub/Sub로 내보내려면 발견 항목과 동일한 Security Command Center 위치에 지속적 내보내기를 구성해야 합니다.
지속적 내보내기에 사용된 필터는 상주 제어가 적용되는 데이터를 포함할 수 있기 때문에 이를 만들기 전에 올바른 위치를 지정해야 합니다. Security Command Center는 내보내기를 만드는 위치를 제한하지 않습니다.
지속적 내보내기는 생성되는 위치에만 저장되며 다른 위치에서 보거나 수정할 수 없습니다.
지속적 내보내기를 만든 후에는 해당 위치를 변경할 수 없습니다. 위치를 변경하려면 지속적 내보내기를 삭제하고 새 위치에 다시 만들어야 합니다.
API 호출을 사용해서 지속적 내보내기를 검색하려면 notificationConfig
의 전체 리소스 이름에 위치를 지정해야 합니다. 예를 들면 다음과 같습니다.
GET https://securitycenter.googleapis.com/v2/{name=organizations/123/locations/eu/notificationConfigs/my-pubsub-export-01}
마찬가지로 gcloud CLI를 사용하여 지속적 내보내기를 가져오려면 구성의 전체 리소스 이름 또는 --locations
플래그를 사용하여 위치를 지정해야 합니다. 예를 들면 다음과 같습니다.
gcloud scc notifications describe myContinuousExport organizations/123 \ --location=locations/us
NotificationConfig 만들기
NotificationConfig
를 만들려면 다음이 필요합니다.
- 알림을 보낼 기존 Pub/Sub 주제
notificationConfig
를 만드는 주 구성원에 필요한 IAM 역할
자세한 내용은 발견 항목 알림 설정 가이드의 Pub/Sub 주제 설정 단계를 참조하세요.
NotificationConfig
를 만들기 전에 각 조직에는 제한된 수의 NotificationConfig
파일이 있을 수 있습니다. 자세한 내용은 할당량 및 제한을 참조하세요.
NotificationConfig
에는 알림을 유용한 이벤트로 제한하는 filter
필드가 포함되어 있습니다. 이 필드는 Security Command Center API findings.list
메서드에서 사용할 수 있는 모든 필터를 허용합니다.
NotificationConfig
를 만들 때 Google Cloud 리소스 계층 구조(조직, 폴더 또는 프로젝트)에서 NotificationConfig
의 상위 요소를 지정합니다. NotificationConfig
를 검색, 업데이트 또는 삭제해야 하는 경우 참조할 때 상위 조직, 폴더 또는 프로젝트의 숫자 ID를 포함해야 합니다.
원하는 언어 또는 플랫폼을 사용하여 NotificationConfig
를 만들려면 다음 안내를 따르세요.
gcloud
gcloud scc notifications create NOTIFICATION_NAME \ --PARENT=PARENT_ID \ --location=LOCATION --description="NOTIFICATION_DESCRIPTION" \ --pubsub-topic=PUBSUB_TOPIC \ --filter="FILTER"
다음을 바꿉니다.
NOTIFICATION_NAME
: 알림의 이름입니다. 이름은 1~128자(영문 기준) 사이여야 하며 영숫자 문자, 밑줄, 하이픈만 포함해야 합니다.PARENT
: 알림이 적용되는 리소스 계층 구조의 범위입니다(organization
,folder
,project
).PARENT_ID
:organizations/123
,folders/456
또는projects/789
형식으로 지정된 상위 조직, 폴더 또는 프로젝트의 ID입니다.LOCATION
: 데이터 상주가 사용 설정된 경우 알림을 만들려는 Security Command Center 위치를 지정합니다. 결과notificationConfig
리소스는 이 위치에만 저장됩니다. 이 위치에서 발급된 발견 항목만 Pub/Sub로 전송됩니다.
데이터 상주가 사용 설정되지 않은 경우 --location
플래그를 지정하면 Security Command Center API v2를 사용하여 알림이 생성되고 플래그에 대한 유효한 유일한 값은 global
입니다.
NOTIFICATION_DESCRIPTION
: 알림에 대한 설명입니다(1,024자 이내).
.
PUBSUB_TOPIC
: 알림을 수신할 Pub/Sub 주제입니다. 형식은 projects/PROJECT_ID/topics/TOPIC
입니다.
FILTER
: Pub/Sub에 전송되는 발견 항목을 선택하기 위해 정의하는 표현식입니다. 예를 들면 state=\"ACTIVE\"
입니다.
Python
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
자바
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
Go
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
Node.js
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
PHP
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
Ruby
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
C#
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
이제 알림이 지정된 Pub/Sub 주제에 게시됩니다.
알림을 게시하려면 service-org-ORGANIZATION_ID@gcp-sa-scc-notification.iam.gserviceaccount.com
형식으로 서비스 계정이 생성됩니다.
이 서비스 계정은 첫 번째 NotificationConfig
를 만들 때 생성되며 알림 구성을 만들 때 PUBSUB_TOPIC에 대한 IAM 정책에 securitycenter.notificationServiceAgent
역할이 자동으로 부여됩니다. 알림이 작동하려면 서비스 계정 역할이 필요합니다.
NotificationConfig 가져오기
NotificationConfig
를 가져오려면 securitycenter.notification.get
권한이 포함된 IAM 역할이 있어야 합니다.
gcloud
gcloud scc notifications describe PARENT_TYPE/PARENT_ID/locations/LOCATION/notificationConfigs/NOTIFICATION_NAME
다음을 바꿉니다.
- 알림 구성에 지정된 리소스 계층 구조의 수준에 따라
PARENT_TYPE
을organizations
,folders
또는projects
로 바꿉니다. PARENT_ID
를 상위 리소스의 숫자 ID로 바꿉니다.LOCATION
: 데이터 상주가 사용 설정되었거나 API v2를 사용하여notificationConfig
리소스가 생성된 경우에 필요합니다.데이터 상주가 사용 설정된 경우 알림이 저장되는 Security Command Center 위치를 지정합니다.
데이터 상주가 사용 설정되지 않은 경우 Security Command Center API v2를 사용하여
notificationConfig
리소스가 생성된 경우에만/locations/LOCATION
을 포함합니다. 이 경우 유효한 유일한 위치는global
입니다.NOTIFICATION_NAME
: 알림의 이름입니다.
Python
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
자바
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
Go
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
Node.js
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
PHP
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
Ruby
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
C#
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
NotificationConfig 업데이트
NotificationConfig
를 업데이트하려면 securitycenter.notification.update
권한이 포함된 IAM 역할이 있어야 합니다.
필드 마스크를 사용하여 업데이트할 때 지정한 필드만 업데이트됩니다. 필드 마스크를 사용하지 않으면 NotificationConfig
의 모든 변경 가능한 필드가 새 값으로 바뀝니다. 필드 마스크를 사용하여 Pub/Sub 주제 및 설명을 업데이트할 수 있습니다.
이 예시를 완료하려면 새 주제를 구독해야 하고 알림 서비스 계정에 해당 주제에 대한 pubsub.topics.setIamPolicy
권한이 있어야 합니다.
필요한 권한을 부여한 후 원하는 언어를 사용하여 NotificationConfig
설명, Pub/Sub 주제, 필터를 업데이트합니다.
gcloud
gcloud scc notifications update PARENT_TYPE/PARENT_ID/locations/LOCATION/notificationConfigs/NOTIFICATION_NAME
--description="NOTIFICATION_DESCRIPTION" \
--pubsub-topic=PUBSUB_TOPIC \
--filter="FILTER"
다음을 바꿉니다.
- 알림 구성에 지정된 리소스 계층 구조의 수준에 따라
PARENT_TYPE
을organizations
,folders
또는projects
로 바꿉니다. PARENT_ID
를 상위 리소스의 숫자 ID로 바꿉니다.LOCATION
: 데이터 상주가 사용 설정되었거나 API v2를 사용하여notificationConfig
가 생성된 경우에 필요합니다.데이터 상주가 사용 설정된 경우 알림이 저장되는 Security Command Center 위치를 지정합니다.
데이터 상주가 사용 설정되지 않은 경우 Security Command Center API v2를 사용하여
notificationConfig
리소스를 만든 경우에만 전체 이름에/locations/LOCATION
을 포함하거나--location
플래그를 지정합니다. 이 경우 유효한 유일한 위치는global
입니다.NOTIFICATION_NAME
: 알림의 이름입니다.NOTIFICATION_DESCRIPTION
: 알림에 대한 설명입니다(1,024자 이내). .PUBSUB_TOPIC
: 알림을 수신할 Pub/Sub 주제입니다. 형식은projects/PROJECT_ID/topics/TOPIC
입니다.FILTER
: Pub/Sub에 전송되는 발견 항목을 선택하기 위해 정의하는 표현식입니다. 예를 들면state="ACTIVE"
입니다.
Python
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
자바
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
Go
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
Node.js
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
PHP
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
Ruby
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
C#
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
NotificationConfig 삭제
NotificationConfig
을 삭제하려면 securitycenter.notification.delete
권한이 포함된 IAM 역할이 있어야 합니다.
NotificationConfig
를 삭제해도 securitycenter.notificationServiceAgent
역할은 Pub/Sub 주제에 유지됩니다. 다른 NotificationConfig
에서 Pub/Sub 주제를 사용하지 않는 경우 주제에서 역할을 삭제합니다. 자세한 내용은 액세스 제어를 참조하세요.
선택한 언어를 사용하여 NotificationConfig
를 삭제합니다.
gcloud
gcloud scc notifications delete PARENT_TYPE/PARENT_ID/locations/LOCATION/notificationConfigs/NOTIFICATION_NAME
다음을 바꿉니다.
- 알림 구성에 지정된 리소스 계층 구조의 수준에 따라
PARENT_TYPE
을organizations
,folders
또는projects
로 바꿉니다. PARENT_ID
를 상위 리소스의 숫자 ID로 바꿉니다.LOCATION
: 데이터 상주가 사용 설정되었거나 API v2를 사용하여notificationConfig
가 생성된 경우에 필요합니다.데이터 상주가 사용 설정된 경우 알림이 저장되는 Security Command Center 위치를 지정합니다.
데이터 상주가 사용 설정되지 않은 경우 Security Command Center API v2를 사용하여
notificationConfig
를 만든 경우에만 전체 이름에/locations/LOCATION
을 포함하거나--location
플래그를 지정합니다. 이 경우 유효한 유일한 위치는global
입니다.NOTIFICATION_NAME
: 알림의 이름입니다.
Python
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
자바
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
Go
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
Node.js
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
PHP
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
Ruby
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
C#
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
NotificationConfig 나열
NotificationConfigs
를 나열하려면 securitycenter.notification.list
권한이 포함된 IAM 역할이 있어야 합니다.
모든 Security Command Center API 목록은 페이지로 나눠집니다. 각 응답은 결과 페이지와 다음 페이지를 반환하는 토큰을 반환합니다. pageSize
의 기본값은 10입니다. 페이지 크기는 최소 1에서 최대 1,000으로 구성할 수 있습니다.
원하는 언어를 사용하여 NotificationConfigs
을 나열합니다.
gcloud
gcloud scc notifications list PARENT_TYPE/PARENT_ID/locations/LOCATION
다음을 바꿉니다.
PARENT_TYPE
을 알림을 나열해야 하는 범위에 따라organizations
,folders
또는projects
로 바꿉니다.PARENT_ID
를 상위 리소스의 숫자 ID로 바꿉니다.LOCATION
: 데이터 상주가 사용 설정되었거나 API v2를 사용하여notificationConfig
리소스가 생성된 경우에 필요합니다.데이터 상주가 사용 설정된 경우 알림이 저장되는 Security Command Center 위치를 지정합니다.
데이터 상주가 사용 설정되지 않은 경우 Security Command Center API v2를 사용하여 만든
notificationConfig
리소스를 만든 경우에만 이름에/locations/LOCATION
을 포함하거나 명령어에--location
플래그를 포함하며, 유효한 유일한 위치는global
입니다.
Python
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
자바
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
Go
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
Node.js
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
PHP
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
Ruby
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
C#
다음 샘플은 v1 API를 사용합니다. v2의 샘플을 수정하려면 v1
을 v2
로 바꾸고 /locations/LOCATION
을 리소스 이름에 추가합니다.
대부분의 리소스의 경우 /PARENT/PARENT_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 PARENT
는 organizations
, folders
또는 projects
입니다.
발견 항목의 경우 /sources/SOURCE_ID
뒤에 /locations/LOCATION
을 리소스 이름에 추가합니다. 여기서 SOURCE_ID
는 발견 항목을 실행한 Security Command Center 서비스의 ID입니다.
Pub/Sub 알림 수신
이 섹션에서는 Pub/Sub 메시지를 발견 항목이 포함된 NotificationMessage
로 변환하는 방법을 보여주는 샘플 알림 메시지 및 예시를 제공합니다.
알림은 JSON
형식으로 Pub/Sub에 게시됩니다.
다음은 알림 메시지의 예시입니다.
{
"notificationConfigName": "organizations/ORGANIZATION_ID/notificationConfigs/CONFIG_ID",
"finding": {
"name": "organizations/ORGANIZATION_ID/sources/SOURCE_ID/findings/FINDING_ID",
"parent": "organizations/ORGANIZATION_ID/sources/SOURCE_ID",
"state": "ACTIVE",
"category": "TEST-CATEGORY",
"securityMarks": {
"name": "organizations/ORGANIZATION_ID/sources/SOURCE_ID/findings/FINDING_ID/securityMarks"
},
"eventTime": "2019-07-26T07:32:37Z",
"createTime": "2019-07-29T18:45:27.243Z"
}
}
원하는 언어를 사용하여 Pub/Sub 메시지를 NotificationMessage
로 변환합니다.
gcloud
gcloud CLI는 Pub/Sub 메시지를 NotificationMessage
로 변환할 수 없습니다. gcloud CLI를 사용하여 NotificationMessage
를 가져오고 터미널에서 직접 JSON
을 출력할 수 있습니다.
# The subscription used to receive published messages from a topic
PUBSUB_SUBSCRIPTION="projects/PROJECT_ID/subscriptions/SUBSCRIPTION_ID"
gcloud pubsub subscriptions pull $PUBSUB_SUBSCRIPTION
다음을 바꿉니다.
- PROJECT_ID: 프로젝트 ID
- SUBSCRIPTION_ID: 구독 ID
Python
자바
Go
Node.js
PHP
다음 단계
- 알림 필터링 자세히 알아보기