This product is not supported for your selected Datadog site. ().
이 페이지는 아직 영어로 제공되지 않습니다. 번역 작업 중입니다.
현재 번역 프로젝트에 대한 질문이나 피드백이 있으신 경우 언제든지 연락주시기 바랍니다.

You can enable App and API Protection for Java services with the following setup options:

  1. If your Java service already has APM tracing set up and running, then skip to service configuration
  2. If your Java service doesn't have APM tracing set up, you can easily enable App and API Protection with Datadog's Automatic Installation
  3. Otherwise, keep reading the following manual setup instructions

Overview

App and API Protection works by leveraging the Datadog Java library to monitor and secure your Java service. The library integrates seamlessly with your existing application without requiring code changes.

For detailed compatibility information, including supported Java versions, frameworks, and deployment environments, see Java Compatibility Requirements.

This guide explains how to set up App and API Protection (AAP) for Java applications. The setup involves:

  1. Installing the Datadog Agent
  2. Enabling App and API Protection monitoring
  3. Running your Java application with the Datadog Agent
  4. Verifying the setup

Prerequisites

  • Docker installed on your host
  • Java application containerized with Docker
  • Your Datadog API key
  • Datadog Java tracing library (see version requirements here)

1. Installing the Datadog Agent

Install the Datadog Agent by following the setup instructions for Docker.

2. Enabling App and API Protection monitoring

Automatically enabling App and API Protection through Remote Configuration

APM Tracing cannot be disabled for the time being with remote config.

You can enable remote configuration on your services dashboard. Simply check the box for the service you want to enable App and API Protection for under "Activate on your APM services".

Manually enabling App and API Protection monitoring

Start your Java application with the Datadog agent and App and API Protection enabled using the ENTRYPOINT instruction:

# Download the Datadog Java tracer
ADD 'https://dtdg.co/latest-java-tracer' /dd-java-agent.jar
ENTRYPOINT ["java", "-javaagent:/dd-java-agent.jar", "-Ddd.appsec.enabled=true", "-Ddd.service=<MY_SERVICE>", "-Ddd.env=<MY_ENV>", "-jar", "/app.jar"]

Add the following environment variables to your Dockerfile:

# Download the Datadog Java tracer
ADD 'https://dtdg.co/latest-java-tracer' /dd-java-agent.jar

# Set environment variables
ENV DD_APPSEC_ENABLED=true
ENV DD_SERVICE=<YOUR_SERVICE_NAME>
ENV DD_ENV=<YOUR_ENVIRONMENT>

# Add the Java agent to your application's startup command
ENTRYPOINT ["java", "-javaagent:/dd-java-agent.jar", "-jar", "/app.jar"]

To disable APM tracing while keeping App and API Protection enabled, you must set the APM tracing variable to false.

Start your Java application with the Datadog agent and App and API Protection enabled using the ENTRYPOINT instruction:

# Download the Datadog Java tracer
ADD 'https://dtdg.co/latest-java-tracer' /dd-java-agent.jar
ENTRYPOINT ["java", "-javaagent:/dd-java-agent.jar", "-Ddd.appsec.enabled=true", "-Ddd.apm.tracing.enabled=false", "-Ddd.service=<MY_SERVICE>", "-Ddd.env=<MY_ENV>", "-jar", "/app.jar"]

Add the following environment variables to your Dockerfile:

# Download the Datadog Java tracer
ADD 'https://dtdg.co/latest-java-tracer' /dd-java-agent.jar

# Set environment variables
ENV DD_APPSEC_ENABLED=true
ENV DD_APM_TRACING_ENABLED=false
ENV DD_SERVICE=<YOUR_SERVICE_NAME>
ENV DD_ENV=<YOUR_ENVIRONMENT>

# Add the Java agent to your application's startup command
ENTRYPOINT ["java", "-javaagent:/dd-java-agent.jar", "-jar", "/app.jar"]

3. Run your application

Build your image and then run your container.

When running your container, make sure to:

  1. Connect it to the same Docker network as the Datadog Agent
  2. Set the required environment variables
docker run -d \
  --name your-java-app \
  your-java-app-image

4. Verify setup

To verify that App and API Protection is working correctly:

  1. Send some traffic to your application
  2. Check the Application Signals Explorer in Datadog
  3. Look for security signals and vulnerabilities

Troubleshooting

If you encounter issues while setting up App and API Protection for your Java application, see the Java App and API Protection troubleshooting guide.

Further Reading

PREVIEWING: eliottness/exhaustive-doc