Island Enterprise Browser 로그 수집

다음에서 지원:

이 문서에서는 웹훅을 사용하여 로그를 Google Security Operations로 푸시하도록 Island Enterprise Browser를 구성하는 방법을 설명합니다.

Island Enterprise Browser는 기업 보안 및 IT 거버넌스를 강화하도록 설계된 Chromium 기반 엔터프라이즈 브라우저입니다. 이를 통해 조직은 사용자가 웹 애플리케이션과 상호작용하는 방식을 제어하고 모니터링할 수 있으며, 복사, 붙여넣기, 다운로드, 업로드, 스크린샷 캡처 등 브라우저 활동의 모든 측면에 대한 세부적인 정책 제어를 제공합니다. Island는 중요한 SaaS 및 내부 웹 애플리케이션에 대한 완전한 가시성, 거버넌스, 규정 준수를 제공하는 동시에 기본 제공되는 세이프 브라우징, 웹 필터링, 취약점 공격 방지, 제로 트러스트 네트워크 액세스를 지원합니다.

시작하기 전에

다음 기본 요건이 충족되었는지 확인합니다.

  • Google SecOps 인스턴스
  • Island Enterprise Browser는 HTTPS를 통한 웹훅 기반 SIEM 로그 전송을 지원합니다.
  • Google Cloud 콘솔 액세스 권한 (API 키 생성용)
  • 관리자 권한 (전체 관리자 또는 시스템 관리자 역할)으로 Island 관리 콘솔에 액세스할 수 있어야 합니다.

Google SecOps에서 웹훅 피드 만들기

피드 만들기

  1. SIEM 설정 > 피드로 이동합니다.
  2. 새 피드 추가를 클릭합니다.
  3. 다음 페이지에서 단일 피드 구성을 클릭합니다.
  4. 피드 이름 필드에 피드 이름을 입력합니다(예: Island Enterprise Browser Logs).
  5. 소스 유형으로 Webhook을 선택합니다.
  6. 로그 유형으로 Island Enterprise Browser를 선택합니다.
  7. 다음을 클릭합니다.
  8. 다음 입력 파라미터의 값을 지정합니다.
    • 분할 구분 기호 (선택사항): \n를 입력하여 NDJSON 이벤트를 줄바꿈으로 분할합니다.
    • 애셋 네임스페이스: 애셋 네임스페이스
    • 수집 라벨: 이 피드의 이벤트에 적용할 라벨입니다.
  9. 다음을 클릭합니다.
  10. 확정 화면에서 새 피드 구성을 검토한 다음 제출을 클릭합니다.

보안 비밀 키 생성 및 저장

피드를 만든 후 인증을 위한 보안 비밀 키를 생성해야 합니다.

  1. 피드 세부정보 페이지에서 보안 비밀 키 생성을 클릭합니다.
  2. 대화상자에 보안 비밀 키가 표시됩니다.
  3. 보안 비밀 키를 안전하게 복사하여 저장합니다.

중요: 보안 비밀 키는 한 번만 표시되며 나중에 검색할 수 없습니다. 분실할 경우 새 보안 비밀 키를 생성해야 합니다.

피드 엔드포인트 URL 가져오기

  1. 피드의 세부정보 탭으로 이동합니다.
  2. 엔드포인트 정보 섹션에서 피드 엔드포인트 URL을 복사합니다.
  3. URL 형식은 다음과 같습니다.

    https://{region}-chronicle.googleapis.com/v1/{parent}/logs:import
    

    여기서 {region}는 Google SecOps 인스턴스의 리전 (예: us, europe, asia-southeast1)이고 {parent}는 projects/<PROJECT_ID>/locations/<LOCATION>/instances/<INSTANCE_ID>/logTypes/<LOG_TYPE> 형식의 리소스 경로입니다.

  4. 다음 단계를 위해 이 URL을 저장합니다.

  5. 완료를 클릭합니다.

Google Cloud API 키 만들기

Chronicle에는 인증을 위한 API 키가 필요합니다. Google Cloud 콘솔에서 제한된 API 키를 만듭니다.

API 키 만들기

  1. Google Cloud 콘솔 사용자 인증 정보 페이지로 이동합니다.
  2. 프로젝트 (Chronicle 인스턴스와 연결된 프로젝트)를 선택합니다.
  3. 사용자 인증 정보 만들기 > API 키를 클릭합니다.
  4. API 키가 생성되어 대화상자에 표시됩니다.
  5. API 키 수정을 클릭하여 키를 제한합니다.

API 키 제한

  1. API 키 설정 페이지에서 다음을 수행합니다.
    • 이름: 구체적인 이름을 입력합니다 (예: Chronicle Webhook API Key - Island).
  2. API 제한사항에서 다음을 실행합니다.
    1. 키 제한을 선택합니다.
    2. API 선택 드롭다운에서 Google SecOps API (또는 Chronicle API)를 검색하여 선택합니다.
  3. 저장을 클릭합니다.
  4. 페이지 상단의 API 키 필드에서 API 키 값을 복사합니다.
  5. API 키를 안전하게 저장합니다.

Island Enterprise Browser 웹훅 구성

웹훅 URL 구성

  • Chronicle 엔드포인트 URL과 API 키를 결합합니다.

    <ENDPOINT_URL>?key=<API_KEY>&secret=<SECRET_KEY>
    
  • 예:

    https://{region}-chronicle.googleapis.com/v1/{parent}/logs:import?key=AIzaSyD...&secret=abcd1234...
    

Island Management Console에서 SIEM 통합 만들기

  1. 관리자 (전체 관리자 또는 시스템 관리자)로 Island 관리 콘솔에 로그인합니다.
  2. 모듈 > 플랫폼 설정 > 시스템 설정 > 통합 > SIEM으로 이동합니다.
  3. 일반 SIEM 통합에서 설정을 클릭합니다.
  4. 일반 SIEM 통합 설정 드로어가 표시됩니다.
  5. 인증 유형 필드에서 HTTPS를 선택합니다.
  6. 서버 URL 필드에 이전 단계에서 구성한 전체 웹훅 URL (API 키와 보안 비밀 키가 쿼리 매개변수로 추가된 Chronicle 엔드포인트 URL)을 붙여넣습니다.
  7. 연결 확인을 클릭하여 구성된 엔드포인트에 대한 연결을 확인합니다.
  8. 통합 만들기를 클릭합니다.
  9. 통합이 성공하면 일반 SIEM 통합의 설정 버튼 아래에 실행 중 상태가 표시됩니다.

SIEM API 키 생성 (대체 방법)

일반 SIEM 통합에 HTTPS URL 매개변수 대신 인증을 위한 API 키가 필요한 경우 다음과 같이 생성합니다.

  1. 관리자로 Island 관리 콘솔에 로그인합니다.
  2. 모듈 > 플랫폼 설정 > 시스템 설정 > 통합 > SIEM으로 이동합니다.
  3. 일반 SIEM 통합의 설정을 클릭합니다.
  4. API 키 생성을 클릭하여 새 키를 만듭니다.
  5. 새 API 키 통합 만들기 창이 표시되고 생성된 API 키가 표시됩니다.
  6. API 키를 클립보드에 복사하고 안전하게 저장합니다.
  7. 닫기를 클릭합니다.

중요: API 키는 생성 중에 한 번만 표시됩니다. 즉시 복사하여 저장합니다.

필수 권한

SIEM 통합을 구성하는 데 사용되는 Island Management Console 계정에는 다음 역할 중 하나가 있어야 합니다.

역할 설명
전체 관리자 Island 관리 콘솔에 대한 전체 관리 액세스 권한
시스템 관리자 통합을 관리할 수 있는 권한이 있는 시스템 수준 관리 액세스 권한

인증 방법 참조

Chronicle 웹훅 피드는 여러 인증 방법을 지원합니다. 공급업체에서 지원하는 방법을 선택합니다.

공급업체에서 맞춤 HTTP 헤더를 지원하는 경우 이 방법을 사용하여 보안을 강화하세요.

  • 요청 형식:

    POST <ENDPOINT_URL> HTTP/1.1
    Content-Type: application/json
    x-goog-chronicle-auth: <API_KEY>
    x-chronicle-auth: <SECRET_KEY>
    
    {
            "event": "data",
            "timestamp": "2025-01-15T10:30:00Z"
    }
    

장점:

  • URL에 API 키 및 보안 비밀이 표시되지 않음
  • 더 안전함 (헤더가 웹 서버 액세스 로그에 기록되지 않음)
  • 공급업체에서 지원하는 경우 선호되는 방법

방법 2: 쿼리 매개변수

공급업체가 커스텀 헤더를 지원하지 않는 경우 URL에 사용자 인증 정보를 추가합니다.

  • URL 형식:

    <ENDPOINT_URL>?key=<API_KEY>&secret=<SECRET_KEY>
    
  • 예:

    https://{region}-chronicle.googleapis.com/v1/{parent}/logs:import?key=AIzaSyD...&secret=abcd1234...
    
  • 요청 형식:

    POST <ENDPOINT_URL>?key=<API_KEY>&secret=<SECRET_KEY> HTTP/1.1
    Content-Type: application/json
    
    {
            "event": "data",
            "timestamp": "2025-01-15T10:30:00Z"
    }
    

단점:

  • URL에 사용자 인증 정보가 표시됨
  • 웹 서버 액세스 로그에 기록될 수 있음
  • 헤더보다 보안 수준이 낮음

방법 3: 하이브리드 (URL + 헤더)

일부 구성에서는 URL에 API 키를 사용하고 헤더에 보안 비밀 키를 사용합니다.

  • 요청 형식:

    POST <ENDPOINT_URL>?key=<API_KEY> HTTP/1.1
    Content-Type: application/json
    x-chronicle-auth: <SECRET_KEY>
    
    {
            "event": "data",
            "timestamp": "2025-01-15T10:30:00Z"
    }
    

인증 헤더 이름

Chronicle은 인증을 위해 다음 헤더 이름을 허용합니다.

API 키:

  • x-goog-chronicle-auth(권장)
  • X-Goog-Chronicle-Auth (대소문자를 구분하지 않음)

보안 비밀 키:

  • x-chronicle-auth(권장)
  • X-Chronicle-Auth (대소문자를 구분하지 않음)

웹훅 한도 및 권장사항

요청 한도

한도 값
최대 요청 크기 4MB
최대 QPS (초당 쿼리 수) 15,000
요청 제한 시간 30초
재시도 동작 지수 백오프를 사용한 자동

리전 API 엔드포인트

Island Enterprise Browser는 지역에 따라 다른 관리 콘솔 URL을 사용합니다.

리전 관리 콘솔 URL API 기준 URL
US https://management.island.io https://management.island.io/api/external/v1/
EU https://eu.management.island.io https://eu.management.island.io/api/external/v1/

Island Enterprise Browser 테넌트 리전에 해당하는 관리 콘솔 URL을 사용합니다.

UDM 매핑 테이블

다음 표에는 ISLAND_BROWSER 로그 유형의 로그 필드와 해당 UDM 필드가 나와 있습니다.

로그 필드 UDM 매핑
timestamp metadata.event_timestamp
id metadata.product_log_id
type metadata.product_event_type
email principal.user.email_addresses
user_id principal.user.userid
user_name principal.user.user_display_name
source_ip principal.ip, principal.asset.ip
public_ip principal.ip, principal.asset.ip
machine_name principal.hostname, principal.asset.hostname
machine_id principal.asset.asset_id
os_platform principal.asset.platform_software.platform
country principal.location.country_or_region
region principal.location.state
top_level_url target.url
saas_application_name target.application
saas_application_id target.resource.id
rule_id security_result.rule_id
rule_name security_result.rule_name
verdict security_result.action_details
verdict_reason security_result.description
url_web_reputation security_result.confidence_score
saas_application_category security_result.category_details
client_event_id network.session_id
version metadata.product_version
window_id principal.resource.id
frame_url about.url
device_id principal.asset.attribute.labels
os_user_name principal.asset.attribute.labels
tab_id security_result.detection_fields
signature security_result.detection_fields
compatibility_mode additional.fields
processed_date additional.fields
country_code additional.fields
is_island_private_access additional.fields
url_web_categories additional.fields
origin additional.fields
tenant_id additional.fields
matched_user_group principal.group.group_display_name
matched_device_posture.domain principal.domain.name
details.application_parameters_details_list.parameters.parameter_value event.idm.read_only_udm.target.resource_ancestors.name
details.application_parameters_details_list.parameters.parameter_value event.idm.read_only_udm.target.administrative_domain
details.application_parameters_details_list.parameters.parameter_name event.idm.read_only_udm.additional.fields
matchedDevicePosture.azure_ad event.idm.read_only_udm.additional.fields
matchedDevicePosture.registry_keys event.idm.read_only_udm.additional.fields
matchedDevicePosture.client_certificates event.idm.read_only_udm.security_result.detection_fields
logMessage.userId event.idm.read_only_udm.principal.user.userid
logMessage.email event.idm.read_only_udm.principal.user.email_addresses
logMessage.userName event.idm.read_only_udm.principal.user.user_display_name
logMessage.type event.idm.read_only_udm.metadata.product_event_type
logMessage.verdict event.idm.read_only_udm.security_result.action_details
logMessage.topLevelUrl event.idm.read_only_udm.network.http.referral_url
logMessage.sourceIp event.idm.read_only_udm.principal.ip
logMessage.publicIp event.idm.read_only_udm.principal.ip
logMessage.sourceIp event.idm.read_only_udm.principal.asset.ip
logMessage.publicIp event.idm.read_only_udm.principal.asset.ip
logMessage.saasApplicationName event.idm.read_only_udm.target.application
logMessage.saasApplicationCategory event.idm.read_only_udm.security_result.category_details
logMessage.country event.idm.read_only_udm.principal.location.country_or_region
logMessage.region event.idm.read_only_udm.principal.location.state
logMessage.osUserName event.idm.read_only_udm.principal.administrative_domain
logMessage.machineId event.idm.read_only_udm.principal.asset.asset_id
logMessage.saasApplicationId event.idm.read_only_udm.target.resource.product_object_id
logMessage.timestamp event.idm.read_only_udm.metadata.event_timestamp
logMessage.tenantId event.idm.read_only_udm.metadata.product_deployment_id
logMessage.id event.idm.read_only_udm.metadata.product_log_id
logMessage.createdDate event.idm.read_only_udm.target.resource.attribute.creation_time
logMessage.updatedDate event.idm.read_only_udm.target.resource.attribute.last_update_time
logMessage.frameUrl event.idm.read_only_udm.additional.fields
logMessage.urlWebCategories event.idm.read_only_udm.additional.fields
logMessage.urlWebReputation event.idm.read_only_udm.additional.fields
logMessage.countryCode event.idm.read_only_udm.additional.fields
logMessage.origin event.idm.read_only_udm.additional.fields
logMessage.tabId event.idm.read_only_udm.additional.fields
, event.idm.read_only_udm.additional.fields
and event.idm.read_only_udm.additional.fields
logMessage.details.navigation_details.is_fail_open_close_active event.idm.read_only_udm.security_result.detection_fields
logMessage.details.navigation_details.is_iframe event.idm.read_only_udm.security_result.detection_fields
logMessage.details.policy_version_details.application_access_policy_version event.idm.read_only_udm.security_result.detection_fields
logMessage.details.policy_version_details.browser_access_policy_version event.idm.read_only_udm.security_result.detection_fields
logMessage.details.policy_version_details.browser_policy_version event.idm.read_only_udm.security_result.detection_fields
logMessage.details.policy_version_details.dlp_policy_version event.idm.read_only_udm.security_result.detection_fields
logMessage.details.policy_version_details.pam_policy_version event.idm.read_only_udm.security_result.detection_fields
logMessage.isIslandPrivateAccess event.idm.read_only_udm.security_result.detection_fields
logMessage.compatibilityMode event.idm.read_only_udm.security_result.detection_fields
logMessage.matchedDevicePosture.client_certificates.issuer event.idm.read_only_udm.security_result.detection_fields
logMessage.matchedDevicePosture.client_certificates.subject event.idm.read_only_udm.security_result.detection_fields
logMessage.matchedDevicePosture.client_certificates.thumbprint event.idm.read_only_udm.security_result.detection_fields
logMessage.machineName event.idm.read_only_udm.security_result.detection_fields
logMessage.deviceId event.idm.read_only_udm.security_result.detection_fields
logMessage.ruleName event.idm.read_only_udm.security_result.rule_name
logMessage.ruleId event.idm.read_only_udm.security_result.rule_id
machineName event.idm.read_only_udm.principal.hostname 및 event.idm.read_only_udm.principal.asset.hostname
region event.idm.read_only_udm.principal.location.state
osUserName event.idm.read_only_udm.principal.administrative_domain
machineId event.idm.read_only_udm.principal.asset.asset_id
saasApplicationId event.idm.read_only_udm.target.resource.product_object_id
matchedDevicePosture.architecture event.idm.read_only_udm.principal.asset.hardware.cpu_platform
matchedDevicePosture.browser_name event.idm.read_only_udm.principal.application
matchedDevicePosture.os_code_name event.idm.read_only_udm.principal.platform_version
matchedDevicePosture.os_version event.idm.read_only_udm.principal.platform_patch_level
matchedDevicePosture.device_type event.idm.read_only_udm.principal.resource.attribute.labels
matchedDevicePosture.disk_encryption event.idm.read_only_udm.principal.resource.attribute.labels
matchedDevicePosture.domain event.idm.read_only_udm.principal.resource.attribute.labels
matchedDevicePosture.is_default_browser event.idm.read_only_udm.principal.resource.attribute.labels
matchedDevicePosture.island_platform event.idm.read_only_udm.principal.resource.attribute.labels
matchedDevicePosture.machine_name event.idm.read_only_udm.additional.fields
matchedDevicePosture.os_firewall_enabled event.idm.read_only_udm.additional.fields
matchedDevicePosture.os_screen_lock_enabled event.idm.read_only_udm.additional.fields
matchedDevicePosture.secure_boot event.idm.read_only_udm.additional.fields
countryCode,details.ipa_details.ipa_forwarding_method event.idm.read_only_udm.additional.fields
details.ipa_details.ipa_rule event.idm.read_only_udm.additional.fields
details.navigation_details.is_fail_open_close_active event.idm.read_only_udm.additional.fields
details.navigation_details.is_iframe event.idm.read_only_udm.additional.fields
details.policy_version_details.application_access_policy_version event.idm.read_only_udm.additional.fields
details.policy_version_details.browser_access_policy_version event.idm.read_only_udm.additional.fields
details.policy_version_details.browser_policy_version event.idm.read_only_udm.additional.fields
details.policy_version_details.dlp_policy_version event.idm.read_only_udm.additional.fields
details.policy_version_details.pam_policy_version,windowId,compatibilityMode event.idm.read_only_udm.additional.fields
createdDate event.idm.read_only_udm.additional.fields
syslogConnectorId event.idm.read_only_udm.additional.fields
product.enabled event.idm.read_only_udm.security_result.detection_fields
product.name event.idm.read_only_udm.security_result.detection_fields
product.signatures_are_up_to_date event.idm.read_only_udm.security_result.detection_fields
art event.idm.read_only_udm.additional.fields
application_access_policy_version event.idm.read_only_udm.additional.fields
sourceDnsDomain event.idm.read_only_udm.additional.fields
av event.idm.read_only_udm.additional.fields
geid event.idm.read_only_udm.additional.fields
policy_version_details.application_access_policy_version event.idm.read_only_udm.additional.fields
policy_version_details.browser_access_policy_version event.idm.read_only_udm.additional.fields
policy_version_details.browser_policy_version event.idm.read_only_udm.additional.fields
policy_version_details.dlp_policy_version event.idm.read_only_udm.additional.fields
policy_version_details.pam_policy_version event.idm.read_only_udm.additional.fields
parent_frame_url event.idm.read_only_udm.additional.fields
aid event.idm.read_only_udm.network.session_id
agentZoneURI event.idm.read_only_udm.network.http.referral_url
at event.idm.read_only_udm.principal.application
ahost event.idm.read_only_udm.principal.hostname
ahost event.idm.read_only_udm.principal.asset.hostname
agt event.idm.read_only_udm.principal.ip
agt event.idm.read_only_udm.principal.asset.ip
amac event.idm.read_only_udm.principal.mac
deviceZoneURI event.idm.read_only_udm.principal.resource.attribute.labels
catdt event.idm.read_only_udm.security_result.category_details
deviceSeverity event.idm.read_only_udm.security_result.severity_details
atz event.idm.read_only_udm.target.location.country_or_region
user_name event.idm.read_only_udm.principal.user.user_display_name
device_id event.idm.read_only_udm.principal.asset.attribute.labels
machine_name event.idm.read_only_udm.principal.hostname 및 event.idm.read_only_udm.principal.asset.hostname
os_platform event.idm.read_only_udm.principal.asset.platform_software.platform
country event.idm.read_only_udm.principal.location.country_or_region
os_user_name event.idm.read_only_udm.principal.user.attribute.labels
top_level_url event.idm.read_only_udm.target.url
rule_id event.idm.read_only_udm.security_result.rule_id
rule_name event.idm.read_only_udm.security_result.rule_name
client_event_id event.idm.read_only_udm.network.session_id
country_code event.idm.read_only_udm.additional.fields
tenant_id event.idm.read_only_udm.additional.fields
tab_id event.idm.read_only_udm.security_result.detection_fields
signature event.idm.read_only_udm.security_result.detection_fields
source event.idm.read_only_udm.additional.fields
public_ip event.idm.read_only_udm.principal.ip 및 event.idm.read_only_udm.principal.asset.ip
source_ip event.idm.read_only_udm.principal.ip 및 event.idm.read_only_udm.principal.asset.ip
processed_date event.idm.read_only_udm.additional.fields
matched_user_group event.idm.read_only_udm.principal.group.group_display_name
frame_url event.idm.read_only_udm.additional.fields
url_web_categories event.idm.read_only_udm.additional.fields
client_sending_date event.idm.read_only_udm.additional.fields
matched_device_posture.anti_malware_product.name event.idm.read_only_udm.additional.fields
matched_device_posture.anti_malware_product.enabled event.idm.read_only_udm.additional.fields
matched_device_posture.anti_malware_product.signatures_are_up_to_date event.idm.read_only_udm.additional.fields
matched_device_posture.anti_malware_product.signatures_last_updated event.idm.read_only_udm.additional.fields
matched_device_posture.client_certificates.issuer event.idm.read_only_udm.additional.fields
matched_device_posture.client_certificates.subject event.idm.read_only_udm.additional.fields
matched_device_posture.client_certificates.thumbprint event.idm.read_only_udm.security_result.detection_fields
matched_device_posture.domain event.idm.read_only_udm.principal.domain.name
matched_device_posture.os_code_name event.idm.read_only_udm.principal.asset.platform_software.platform_version
matched_device_posture.machine_name event.idm.read_only_udm.target.hostname 및 event.idm.read_only_udm.target.asset.hostname
matched_device_posture.disk_encryption event.idm.read_only_udm.additional.fields
matched_device_posture.is_virtual_machine event.idm.read_only_udm.additional.fields
matched_device_posture.processes event.idm.read_only_udm.principal.file.full_path
origin event.idm.read_only_udm.additional.fields
url_web_reputation event.idm.read_only_udm.security_result.confidence_score
is_island_private_access event.idm.read_only_udm.additional.fields
window_id event.idm.read_only_udm.principal.resource.id
compatibility_mode event.idm.read_only_udm.additional.fields
version event.idm.read_only_udm.metadata.product_version
userId principal.user.userid
topLevelUrl network.http.referral_url
ruleId security_result.rule_id
ruleName security_result.rule_name
Verdict" and "verdict security_result.action_details
sourceIp" and "publicIp principal.ip
verdictReason security_result.description
tabId", "urlWebReputation", "updatedDate", "processedDate", "service", "id", "deviceId", "frameUrl", "urlWebCategories", "isIslandPrivateAccess", "tenantId", "saasApplicationCategory", "saasApplicationName", "machineName", "details.navigationDetails.isIframe", "details.navigationDetails.is_iframe", "navigation_details.is_iframe", "matchedDevicePosture.domain", "matchedDevicePosture.workgroup", and "incognito additional.fields

변경 로그

이 파서의 변경 로그 보기

도움이 더 필요하신가요? 커뮤니티 회원 및 Google SecOps 전문가에게 문의하여 답변을 받으세요.