Apigee를 SIEM 솔루션과 통합

이 페이지는 ApigeeApigee Hybrid에 적용됩니다.

많은 조직이 보안 정보 및 이벤트 관리(SIEM) 솔루션과 Apigee를 통합하려고 합니다. 이 통합을 통해 Apigee 데이터와 다른 네트워크 및 보안 제품 로그의 중요한 상관관계를 파악하여 고급 위협 감지, 포괄적인 로깅, 규정 준수 보고를 촉진할 수 있습니다. 이 문서에서는 지능화된 API 보안 부가기능의 유무와 상관없이 모든 시나리오를 충족하는 다양한 통합 접근 방식을 살펴봅니다.

대상

이 문서의 대상은 다음과 같습니다.

  • API 보안 보장, 플랫폼 구성 관리, 운영 효율성 지원, 보안 규정 준수 요구사항 준수를 담당하는 API 관리자
  • 위험을 최소화하고 민감한 정보를 보호하기 위해 API 관련 보안 사고를 선제적으로 감지하고 조사하는 데 주력하는 보안 분석가

구성 옵션

Apigee는 로그 정보를 SIEM으로 전송하는 두 가지 기본 메서드를 제공합니다.

옵션 설명
Google Cloud Platform 로그 디버깅 및 문제 해결에 유용한 서비스별 로그를 포함하여 기본적인 수준의 API 로그 데이터를 제공합니다.
Apigee 메시지 로깅 정책 메시지 로깅 정책은 더 큰 유연성과 제어를 제공하므로 특정 흐름 변수를 비롯한 다양한 Apigee 로그 데이터를 SIEM으로 전송할 수 있습니다.

Apigee를 SIEM과 통합

Apigee는 적응력이 높아 사용자가 선택한 SIEM 솔루션과 원활하게 통합할 수 있습니다. 일반적인 통합 단계는 다음과 같습니다.

  1. 통합 방법을 선택합니다. 데이터 요구사항 및 SIEM 기능에 따라 Google Cloud Platform 로그 또는 Apigee 메시지 로깅 정책을 선택합니다.
  2. 데이터 전달을 설정합니다. 데이터 전달을 설정하려면 원하는 로그 데이터를 SIEM으로 전송하도록 Apigee를 구성합니다. 이 구성의 기본 단계는 다음과 같습니다. 정확한 단계는 SIEM 시스템의 설정 및 구성 세부정보에 따라 다릅니다.
    1. Apigee와 SIEM 간의 연결 또는 통합을 설정합니다.
    2. SIEM 구성에서 SIEM으로 전달할 Apigee 로그 또는 이벤트를 지정합니다.
    3. SIEM 내에서 Apigee 데이터를 수신하고 처리하는 데 필요한 권한을 부여합니다.
  3. 데이터 구조를 정렬합니다. Apigee 로그 필드 및 흐름 변수(예: client.ip, request.uri 등)를 SIEM의 데이터 모델에 있는 해당 필드에 매핑합니다. 이러한 정렬을 통해 SIEM은 Apigee 데이터를 올바르게 해석하고 분류하여 효과적으로 분석하고 다른 보안 이벤트와의 상관관계를 파악할 수 있습니다.

지능화된 API 보안 데이터 로깅

지능화된 API 보안 악용 감지에서 식별된 데이터를 로깅하려면 Apigee 메시지 로깅 정책과 함께 작업을 사용하면 됩니다.

다음 단계를 따르세요.

  1. 지능화된 API 보안 작업을 사용하여 로깅할 규칙에 플래그를 지정합니다.
  2. 작업으로 추가한 헤더를 사용하여 메시지 로깅 정책을 트리거하여 플래그 지정된 요청을 로깅합니다. 예를 들어 다음 이미지는 작업 UI에서 abuse 값으로 구성된 헤더 apisec를 보여줍니다.

    API 보안 작업 UI에서 abuse 값으로 구성된 헤더 apisec를 보여주는 스크린샷

    이 예시를 따라 헤더가 표시되면 트리거되도록 메시지 로깅 정책을 구성할 수 있습니다.

    <PostFlow name="PostFlow">
      <Request>
        <Step>
          <Condition>request.header.apisec="abuse"</Condition>
          <Name>LogMessagePolicy</Name>
        </Step>
      </Request>
    </PostFlow>

예: Apigee 메시지 로깅 정책 사용

이 예에서는 Apigee 로그 데이터를 SIEM으로 전송하도록 Apigee 메시지 로깅 정책을 구성하는 방법을 보여줍니다. 이 옵션을 사용하면 SIEM으로 전송할 Apigee 흐름 변수를 메시지 로깅 정책에서 지정합니다. 이 옵션을 사용하면 Cloud 플랫폼 로그 옵션으로 얻을 수 있는 것보다 더 풍부한 로그 세부정보를 SIEM에 전송할 수 있습니다.

  1. SIEM으로의 Apigee 데이터 수집을 사용 설정합니다.
  2. 다음 XML 본문을 사용하여 메시지 로깅 정책을 만듭니다. 자세한 내용은 UI에서 정책 연결 및 구성을 참고하세요.
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <MessageLogging continueOnError="false" enabled="true" name="ML-SIEM-Integration">
          <CloudLogging>		
            <LogName>projects/{organization.name}/logs/Apigee-SIEM-Integration-{environment.name}</LogName>
            <Message contentType="application/json" defaultVariableValue="unknown"> 
            {
              "apigee.metrics.policy.{policy_name}.timeTaken": "{apigee.metrics.policy.{policy_name}.timeTaken}",
              "client.country": "{client.country}", 
              "client.host": "{client.host}",
              "client.ip": "{client.ip}",
              "client.locality": "{client.locality}",
              "client.port": "{client.port}",
             "client.state": "{client.state}",
              "organization.name": "{organization.name}",
            "proxy.client.ip": "{proxy.client.ip}",
            "proxy.name": "{proxy.name}",
            "proxy.pathsuffix": "{proxy.pathsuffix}",
            "proxy.url": "{proxy.url}",
            "request.uri": "{request.uri}",
            "request.verb": "{request.verb}",
            "response.content": "{response.content}",
            "response.reason.phrase": "{response.reason.phrase}",
            "response.status.code": "{response.status.code}",
            "system.region.name": "{system.region.name}",
            "system.timestamp": "{system.timestamp}",
            "system.uuid": "{system.uuid}",
            "target.country": "{target.country}",
            "target.host": "{target.host}",
            "target.ip": "{target.ip}",
            "target.locality": "{target.locality}",
            "target.organization": "{target.organization}",
            "target.port": "{target.port}",
            "target.scheme": "{target.scheme}",
            "target.state": "{target.state}",
            "target.url": "{target.url}"
            }
             </Message>
          </CloudLogging>
        </MessageLogging>
  3. 정책을 프록시 엔드포인트 사후 흐름에 연결합니다. UI에서 정책 연결 및 구성을 참고하세요.

API 프록시가 트래픽을 처리할 때 로깅 정책은 요청 및 응답에서 지정된 필드를 캡처하고 분석 및 디버깅을 위해 로그 파일에 기록합니다.