Splunk Native Embedder 소개: 보안 대시보드 임베딩, 제대로 구현

발행: (2026년 2월 4일 오후 09:06 GMT+9)
5 분 소요
원문: Dev.to

Source: Dev.to

Splunk Native Embedder가 승인되었으며 이제 Splunkbase에서 사용할 수 있습니다.

Splunk Native Embedder는 Splunk의 기본 기능을 기반으로 구축된 경량 구성 관리자입니다. 이 게시물에서는 앱이 보안 교차‑출처 대시보드 임베딩을 가능하게 하는 기술적 세부 사항을 살펴보며, 개발자가 세밀한 제어를 통해 Splunk 시각화를 외부 포털에 통합할 수 있도록 합니다.

Splunk Native Embedder on Splunkbase

기술적 과제: X-Frame-Options 및 쿠키 보안

클릭재킹 방지

Splunk는 기본적으로 X-Frame-Options: SAMEORIGIN HTTP 헤더를 설정합니다. 브라우저는 부모 페이지가 다른 도메인에 있을 경우 렌더링을 차단하여 클릭재킹을 방지하지만, 정당한 교차‑출처 임베딩도 차단됩니다.

쿠키 정책

현대 브라우저(Chrome, Safari, Edge)는 기본적으로 SameSite=Lax를 적용합니다. 이는 iframe과 같은 교차 사이트 컨텍스트에서 세션 쿠키가 전송되지 않게 하여, 사용자는 로그인에 성공하지만 브라우저가 쿠키 전송을 거부함으로써 세션이 끊기는 인증 루프가 발생합니다.

해결책: 네이티브 구성 관리

프레임 보안 관리

앱 대시보드에서 임베딩을 활성화하면 JavaScript 컨트롤러(embedder_config.js)가 configs/conf-web 엔드포인트에 REST 호출을 수행합니다. 이를 통해 local/web.conf가 업데이트되고 필요한 보안 플래그가 전환됩니다:

[settings]
# 교차‑출처 프레이밍을 차단하는 헤더를 비활성화
x_frame_options_sameorigin = false

# HTML 대시보드가 프레임 내에서 작동하도록 명시적으로 허용
dashboard_html_allow_iframes = true
dashboard_html_allow_embeddable_content = true

이 값을 플랫폼 수준에서 직접 관리함으로써 앱은 네이티브 동작을 유지하면서 최적의 성능을 보장합니다.

SameSite 쿠키 문제 해결

iframe 내부에서 인증을 유지하려면 세션 쿠키를 SameSite=None; Secure로 표시해야 합니다. 앱은 이를 전역적으로 적용할 수 있는 간단한 토글을 제공합니다:

[settings]
# HTTPS 환경에서 교차‑사이트 임베딩에 필수
cookieSameSite = none

중요: cookieSameSite = none을 설정하려면 HTTPS가 필요합니다. Splunk에 HTTP로 접근하면 현대 브라우저가 현재 보안 표준에 따라 쿠키를 완전히 거부합니다.

리버스 프록시 및 TLS 종료 처리

많은 배포 환경에서 SSL/TLS는 로드 밸런서(NGINX, F5)에서 종료되고, Splunk는 내부적으로 HTTP를 사용합니다. 이 경우 Splunk는 트래픽이 보안된 것인지 감지하지 못해 쿠키를 Secure로 표시하지 않을 수 있습니다. 앱은 보안 쿠키를 강제로 설정할 수 있는 추가 옵션을 제공합니다:

[settings]
# Splunk가 HTTP 트래픽을 보더라도 쿠키를 'Secure'로 강제 지정
tools.sessions.secure = true

이를 통해 리버스 프록시 시나리오에서도 브라우저가 쿠키를 받아들일 수 있습니다.

앱은 사용 및 피드백을 위해 공개되었습니다. 네이티브 구성을 완전히 활용함으로써 외부에 대시보드를 공유하는 가장 안정적이고 Splunk와 정렬된 방법을 제공하는 것이 목표입니다.

Sanjeev

Back to Blog

관련 글

더 보기 »

Claude Code에서 빠른 쉘 접근

단일 명령 실행 빠른 명령을 실행해야 할 때—예를 들어 git status 확인, 브랜치 전환, 테스트 실행 등—! 접두사를 사용할 수 있습니다.