모니터 경보를 외부 시스템으로 보내기
규칙이 발동하거나 해결되면 Foundry 구독자 외에 PagerDuty, Slack 또는 웹훅으로 알림을 보낼 수 있습니다. 각 연동은 특정 심각도에 연결합니다. MEDIUM 연동은 LOW나 HIGH 경보를 받지 않으므로 필요한 심각도마다 구성을 추가합니다.
이 전송 조건은 지표 값이 임계값 이상인지 비교하는 규칙 평가와 별개입니다.
PagerDuty
PagerDuty Events API V2를 사용합니다. 일반적으로 별도 서비스 사용자, 이메일 연결이나 사용자 정의 허용 목록 및 외부 통신 정책은 필요하지 않습니다. 한 연동은 뷰의 특정 심각도 경보를 PagerDuty 서비스의 Events V2 연동에 연결하며, 여러 심각도 연동에서 같은 Integration Key를 사용할 수 있습니다.
PagerDuty 서비스 준비
서비스의 에스컬레이션 정책, 긴급도와 지원 시간을 구성합니다. 서비스의 Integrations 탭에서 새 연동을 추가하고 Events API V2를 선택합니다. 생성한 연동의 설정 상세에서 Integration Key를 확인합니다. 이 키는 경보 전송에 사용하는 인증 정보이므로 비공개로 관리합니다.
모니터링 뷰 연결
Manage subscriptions의 PagerDuty Notifications에서 +를 선택합니다. 연동 이름, Integration Key와 심각도를 지정하고 필요한 수준별로 반복합니다.
기본적으로 규칙 경보와 연결된 기존 검사 그룹의 상태 검사 경보를 전송합니다. v1.860.0(2024년 2월) 이전에 만든 뷰에서 상태 검사 경보를 사용하려면 Enable PagerDuty for health checks를 수동으로 켭니다.
| 상태 검사의 심각도 | 사용하는 연동 수준 |
|---|---|
| Info / low | LOW |
| Moderate / medium | MEDIUM |
| Critical / high | HIGH |
Slack
소스와 봇 토큰
Data Connection에 Slack 소스를 만들고 bearer token을 구성합니다. 필요한 Bot Token Scopes는 다음과 같습니다.
| 범위 | 용도 |
|---|---|
channels:join | 요청한 공개 채널에 앱이 자동 참여 |
channels:read | 사용 가능한 공개 채널 목록 조회 |
chat:write | 선택한 채널에 메시지 전송 |
groups:read | 비공개 채널에 보내려는 경우 필요 |
Slack 작업 공간에 앱을 만들고 OAuth & Permissions의 Bot Token Scopes에 범위를 추가합니다. 앱을 설치한 뒤 Bot User OAuth Token을 소스의 비공개 인증 설정에 제공합니다.
비공개 채널은 groups:read만으로 참여하지 않습니다. Slack 앱을 해당 비공개 채널에 초대해야 합니다.
채널 연결
모니터링 뷰의 Manage subscriptions에서 Slack 영역의 +를 선택합니다. 구성한 Slack 소스를 선택하면 Slack Channels에 전송할 수 있는 채널 목록이 표시됩니다. 채널과 심각도를 지정하고 필요한 수준별로 반복합니다.
리소스 이름 공개
Slack에 사람이 읽을 수 있는 리소스 이름을 표시하려면 그 리소스의 모든 보안 표지와 조직 표지가 Slack 소스의 반출 허용 목록에 있어야 합니다. 하나라도 빠지면 이름 대신 RID를 표시합니다.
예를 들어 Sales 조직의 Customer Revenue Data 데이터셋에 Confidential 표지가 있다면 Sales와 Confidential을 모두 반출 허용 대상으로 지정해야 이름이 표시됩니다. 하나만 허용하면 RID를 사용합니다.
리소스 이름을 포함하는 알림 형식에 따라 봇이나 자동 파서도 새 형식을 처리해야 할 수 있습니다.
반출 설정의 권한과 절차
기본적으로 반출을 처음 켤 때는 Slack 소스의 Owner 역할과 플랫폼 인스턴스의 Information Security Officer 역할이 모두 필요합니다. 이미 반출이 활성화된 소스에서는 Owner가 Information Security Officer 역할 없이도 허용 표지와 조직을 추가할 수 있습니다.
- Data Connection에서 사용하는 Slack 소스를 선택합니다.
- Connection settings의 Export configuration을 엽니다.
- Enable exports to this source를 켭니다.
- 메시지에 나타날 수 있는 보안 표지와 조직 표지를 추가합니다.
- Save로 적용합니다.
보안 표지를 추가하려면 그 표지의 Apply marking과 Remove marking 권한이 필요합니다. 자기 조직이 아닌 조직을 추가하려면 해당 조직의 Expand access가 필요합니다.
감시하는 데이터셋과 스트림, 프로젝트의 조직 표지 및 이름을 공개할 다른 리소스의 표지를 함께 검토합니다. 제약이 적은 표지부터 허용하고 필요에 따라 더 엄격한 표지를 추가할 수 있습니다. 리소스의 표지나 조직 중 하나라도 허용 목록에 없으면 이름 대신 RID를 표시합니다. 자세한 설정은 소스 내보내기를 따릅니다.
웹훅
Data Connection에서 구성한 웹훅을 호출할 수 있습니다. 웹훅에 문자열 입력을 준비하고, 연동의 Message parameter로 사용할 입력을 지정합니다. 이 입력에는 알림 본문을 채우며 현재 그 내용을 사용자 정의할 수 없습니다.
Manage subscriptions의 Webhooks에서 +를 선택하고 웹훅, Message parameter와 심각도를 순서대로 지정합니다. 다른 심각도도 받아야 하면 해당 수준의 연동을 추가합니다.