웹훅 클라이언트가 커스텀 헤더를 지원하지 않는 경우 쿼리 파라미터를 다음 형식으로 사용하여 API 키와 보안 비밀 키를 지정할 수 있습니다.
ENDPOINT_URL?key=API_KEY&secret=SECRET
다음을 바꿉니다.
ENDPOINT_URL: 피드 엔드포인트 URL입니다.
API_KEY: Google Security Operations에 인증하기 위한 API 키입니다.
SECRET: 피드를 인증하기 위해 생성한 보안 비밀 키입니다.
Google SecOps용 Synology에서 웹훅 만들기
Synology NAS에서 DiskStation Manager (DSM)에 로그인합니다.
제어판>알림>웹훅으로 이동합니다.
추가를 클릭합니다.
다음 매개변수의 값을 지정합니다.
제공업체: 맞춤을 선택합니다.
규칙: 웹훅에서 보낼 메시지 유형을 선택합니다.
다음을 클릭합니다.
공급업체 이름: 웹훅에 고유한 이름을 지정합니다 (예: Google SecOps).
제목: 알림 메시지의 접두사로 추가됩니다.
Webhook URL: ENDPOINT_URL을 입력합니다.
알림 메시지를 영어로 보내기를 선택합니다.
다음을 클릭합니다.
HTTP 메서드: POST를 선택합니다.
SECRET 값을 사용하여 X-Webhook-Access-Key 헤더를 추가합니다.
API_KEY 값을 사용하여 헤더 X-goog-api-key를 추가합니다.
적용을 클릭합니다.
적용을 클릭하여 웹훅을 저장합니다.
UDM 매핑 테이블
로그 필드
UDM 매핑
논리
app
target.application
grok 필터로 추출된 app 필드 값이 target.application에 할당됩니다.
desc
metadata.description
grok 필터로 추출된 desc 필드 값이 metadata.description에 할당됩니다.
desc
target.file.names
desc 필드에 'Closed)'가 포함된 경우 괄호 안의 파일 경로가 추출되어 target.file.names에 할당됩니다. desc 필드에 'accessed shared folder'가 포함된 경우 괄호 안의 폴더 경로가 추출되어 target.file.names에 할당됩니다.
host
principal.hostname
host_and_ip 필드에서 grok 필터로 추출된 host 필드의 값이 principal.hostname에 할당됩니다.
host_and_ip
principal.ip
host_and_ip 필드가 파싱됩니다. IP 주소 (ip1)가 발견되면 principal.ip에 할당됩니다. 두 번째 IP 주소 (ip2)가 발견되면 principal.ip에도 추가됩니다.
intermediary_host
intermediary.hostname
grok 필터로 추출된 intermediary_host 필드 값이 intermediary.hostname에 할당됩니다. 메일에 '로그인' 또는 '로그인'이 포함된 경우 extensions 내에 빈 auth 객체가 생성됩니다. 원시 로그의 collection_time 필드의 타임스탬프가 사용됩니다. 메시지에 '로그인'이 포함된 경우 값이 USER_LOGIN로 설정됩니다. 메시지에 'accessed shared folder'가 포함된 경우 값은 USER_RESOURCE_ACCESS로 설정됩니다. 그렇지 않으면 기본값은 GENERIC_EVENT입니다. grok 필터로 추출된 type 필드 값이 metadata.product_event_type에 할당됩니다. 값은 'SYNOLOGY'로 정적으로 설정됩니다. 값은 'SYNOLOGY'로 정적으로 설정됩니다. 메시지에 '서명 실패'가 포함된 경우 값은 BLOCK로 설정됩니다. 메시지에 'success'가 포함된 경우 값이 ALLOW로 설정됩니다. severity 필드 (grok으로 추출됨)가 'INFO'이면 값이 INFORMATIONAL로 설정됩니다.
severity
security_result.severity
grok 필터로 추출된 severity 필드 값은 security_result.severity를 결정하는 데 사용됩니다. 값이 'INFO'이면 'INFORMATIONAL'에 매핑됩니다.
time
metadata.event_timestamp
grok 필터로 추출된 time 필드가 파싱되어 타임스탬프로 변환됩니다. 이 타임스탬프는 metadata.event_timestamp에 할당됩니다.
type
metadata.product_event_type
grok 필터로 추출된 type 필드 값이 metadata.product_event_type에 할당됩니다.
user
target.administrative_domain
user 필드에서 도메인이 추출되면 target.administrative_domain에 할당됩니다.
user
target.user.userid
user 필드의 사용자 이름 부분('\'가 있는 경우 그 앞)이 추출되어 target.user.userid에 할당됩니다. 원시 로그의 collection_time 필드의 타임스탬프가 사용됩니다.
[[["이해하기 쉬움","easyToUnderstand","thumb-up"],["문제가 해결됨","solvedMyProblem","thumb-up"],["기타","otherUp","thumb-up"]],[["이해하기 어려움","hardToUnderstand","thumb-down"],["잘못된 정보 또는 샘플 코드","incorrectInformationOrSampleCode","thumb-down"],["필요한 정보/샘플이 없음","missingTheInformationSamplesINeed","thumb-down"],["번역 문제","translationIssue","thumb-down"],["기타","otherDown","thumb-down"]],["최종 업데이트: 2025-09-10(UTC)"],[[["\u003cp\u003eThis document provides instructions on how to collect and parse Synology SYSLOG messages within Google SecOps (Security Operations), enriching the data and mapping it to the Unified Data Model (UDM).\u003c/p\u003e\n"],["\u003cp\u003eSetting up a webhook feed in Google SecOps involves configuring a new feed, specifying "Webhook" as the source type and "Synology" as the log type, and obtaining a unique secret key and endpoint URL for authentication.\u003c/p\u003e\n"],["\u003cp\u003eCreating an API key through Google Cloud Console and restricting it to the Google Security Operations API is necessary to authenticate the webhook feed for secure data transfer.\u003c/p\u003e\n"],["\u003cp\u003eConfiguring Synology DSM to send logs via webhook requires defining a custom provider with the Google SecOps endpoint URL and including specific header values containing the API key and secret key for authentication.\u003c/p\u003e\n"],["\u003cp\u003eThe UDM mapping table details how fields from Synology logs, such as \u003ccode\u003eapp\u003c/code\u003e, \u003ccode\u003edesc\u003c/code\u003e, \u003ccode\u003ehost\u003c/code\u003e, and \u003ccode\u003euser\u003c/code\u003e, are translated and assigned to corresponding UDM fields to categorize and structure event data.\u003c/p\u003e\n"]]],[],null,["# Collect Synology logs\n=====================\n\nSupported in: \nGoogle secops [SIEM](/chronicle/docs/secops/google-secops-siem-toc)\n| **Note:** This feature is covered by [Pre-GA Offerings Terms](https://chronicle.security/legal/service-terms/) of the Google Security Operations Service Specific Terms. Pre-GA features might have limited support, and changes to pre-GA features might not be compatible with other pre-GA versions. For more information, see the [Google SecOps Technical Support Service guidelines](https://chronicle.security/legal/technical-support-services-guidelines/) and the [Google SecOps Service Specific Terms](https://chronicle.security/legal/service-terms/).\n\nOverview\n--------\n\nThis parser extracts fields from Synology SYSLOG messages using grok patterns, mapping them to the UDM. It handles various log formats, identifies user logins and resource access, and categorizes events based on keywords, enriching the data with vendor and product information.\n\nBefore you begin\n----------------\n\nEnsure that you have the following prerequisites:\n\n- Google SecOps instance.\n- Privileged access to Synology DSM.\n\nSet up feeds\n------------\n\nTo configure a feed, follow these steps:\n\n1. Go to **SIEM Settings** \\\u003e **Feeds**.\n2. Click **Add New Feed**.\n3. On the next page, click **Configure a single feed**.\n4. In the **Feed name** field, enter a name for the feed; for example, **Synology Logs**.\n5. Select **Webhook** as the **Source type**.\n6. Select **Synology** as the **Log type**.\n7. Click **Next**.\n8. Optional: Specify values for the following input parameters:\n - **Split delimiter** : the delimiter that is used to separate log lines, such as `\\n`.\n - **Asset namespace** : the [asset namespace](/chronicle/docs/investigation/asset-namespaces).\n - **Ingestion labels**: the label applied to the events from this feed.\n9. Click **Next**.\n10. Review the feed configuration in the **Finalize** screen, and then click **Submit**.\n11. Click **Generate Secret Key** to generate a secret key to authenticate this feed.\n12. Copy and store the secret key. You cannot view this secret key again. If needed, you can regenerate a new secret key, but this action makes the previous secret key obsolete.\n13. From the **Details** tab, copy the feed endpoint URL from the **Endpoint Information** field. You need to specify this endpoint URL in your client application.\n14. Click **Done**.\n\nCreate an API key for the webhook feed\n--------------------------------------\n\n1. Go to **Google Cloud console \\\u003e Credentials**.\n\n [Go to Credentials](https://console.cloud.google.com/apis/credentials)\n2. Click **Create credentials** , and then select **API key**.\n\n3. Restrict the API key access to the **Google Security Operations API**.\n\nSpecify the endpoint URL\n------------------------\n\n1. In your client application, specify the HTTPS endpoint URL provided in the webhook feed.\n2. Enable authentication by specifying the API key and secret key as part of the custom header in the following format:\n\n X-goog-api-key = \u003cvar class=\"readonly\" translate=\"no\"\u003eAPI_KEY\u003c/var\u003e\n X-Webhook-Access-Key = \u003cvar class=\"readonly\" translate=\"no\"\u003eSECRET\u003c/var\u003e\n\n **Recommendation**: Specify the API key as a header instead of specifying it in the URL.\n3. If your webhook client doesn't support custom headers, you can specify the API key and secret key using query parameters in the following format:\n\n \u003cvar translate=\"no\"\u003eENDPOINT_URL\u003c/var\u003e?key=\u003cvar translate=\"no\"\u003eAPI_KEY\u003c/var\u003e&secret=\u003cvar translate=\"no\"\u003eSECRET\u003c/var\u003e\n\n Replace the following:\n - \u003cvar translate=\"no\"\u003eENDPOINT_URL\u003c/var\u003e: the feed endpoint URL.\n - \u003cvar translate=\"no\"\u003eAPI_KEY\u003c/var\u003e: the API key to authenticate to Google Security Operations.\n - \u003cvar translate=\"no\"\u003eSECRET\u003c/var\u003e: the secret key that you generated to authenticate the feed.\n\nCreating a Webhook in Synology for Google SecOps\n------------------------------------------------\n\n1. Sign in to DiskStation Manager (DSM) on your Synology NAS.\n2. Go to **Control Panel** \\\u003e **Notification** \\\u003e **Webhook**.\n3. Click **Add**.\n4. Specify values for the following parameters:\n\n - **Provider** : Select **Custom**.\n - **Rule**: Select what kind of messages you want to send in your webhook.\n\n | **Note:** You can a create custom rule by selecting **Create**.\n - Click **Next**.\n\n - **Provider name** : Give the webhook a distinctive name (for example, **Google SecOps**).\n\n - **Subject**: Will be added as a prefix of the notification message.\n\n - **Webhook URL** : Enter **ENDPOINT_URL**.\n\n - Select **Send notification messages in English**.\n\n - Click **Next**.\n\n - **HTTP Method** : Select **POST**.\n\n - Add Header **X-Webhook-Access-Key** , with **SECRET** value.\n\n - Add Header **X-goog-api-key** , with **API_KEY** value.\n\n - Click **Apply**.\n\n5. Click **Apply** to save the webhook.\n\nUDM Mapping Table\n-----------------\n\n**Need more help?** [Get answers from Community members and Google SecOps professionals.](https://security.googlecloudcommunity.com/google-security-operations-2)"]]