AWS Secrets Manager 에이전트 사용 - AWS Secrets Manager

AWS Secrets Manager 에이전트 사용

Secrets Manager Agent 작동 방식

AWS Secrets Manager Agent는 클라이언트 측 HTTP 서비스로, 여러 컴퓨팅 환경에서 Secrets Manager의 보안 암호를 사용하는 방식을 표준화하는 데 도움을 줍니다. 다음 서비스와 함께 사용할 수 있습니다.

  • AWS Lambda

  • Amazon Elastic Container Service

  • Amazon Elastic Kubernetes 서비스

  • Amazon Elastic Compute Cloud

Secrets Manager Agent는 보안 암호를 메모리에 가져와 캐싱하므로, 애플리케이션은 Secrets Manager에 직접 호출하지 않고도 localhost에서 보안 암호를 가져올 수 있습니다. Secrets Manager Agent는 보안 암호를 읽기만 할 수 있으며, 수정은 불가능합니다.

중요

Secrets Manager Agent는 사용자 환경에 설정된 AWS 자격 증명을 사용하여 Secrets Manager를 호출합니다. 또한 서버 측 요청 위조(SSRF)로부터 보호 기능을 제공하여 보안 암호의 안전성을 높입니다. Secrets Manager Agent는 기본적으로 에이전트는 포스트 양자 ML-KEM 키 교환을 최우선 키 교환 방식으로 사용합니다.

Secrets Manager Agent 캐싱 이해

Secrets Manager Agent는 인 메모리 캐시를 사용하며, Secrets Manager Agent가 재시작되면 캐시가 초기화됩니다. 캐시된 보안 암호 값은 다음 기준으로 주기적으로 갱신됩니다.

  • 기본 갱신 주기(TTL)는 300초

  • 구성 파일을 통해 TTL을 수정할 수 있음

  • TTL이 만료된 후 보안 암호를 요청하면 갱신이 발생

참고

Secrets Manager Agent에는 캐시 무효화 기능이 없습니다. 만약 캐시 항목이 만료되기 전에 보안 암호가 교체되면, Secrets Manager Agent는 오래된 보안 암호 값을 반환할 수도 있습니다.

Secrets Manager Agent는 GetSecretValue의 응답과 동일한 형식으로 보안 암호 값을 반환합니다. 보안 암호 값은 캐시에서 암호화되지 않습니다.

Secrets Manager Agent 빌드

시작하기 전에 플랫폼에 맞는 표준 개발 도구 및 Rust 도구가 설치되어 있는지 확인합니다.

참고

macOS에서 fips 기능을 활성화하여 에이전트를 빌드하려면 현재 다음 해결 방법이 필요합니다.

  • xcrun --show-sdk-path 실행의 결과로 설정된 SDKROOT라는 환경 변수를 생성합니다.

RPM-based systems
RPM 기반 시스템에서 빌드하는 방법
  1. 리포지토리에 제공된 install 스크립트를 실행합니다.

    스크립트는 시작 시 무작위 SSRF 토큰을 생성한 후 이를 /var/run/awssmatoken 파일에 저장합니다. 설치 스크립트가 생성하는 awssmatokenreader 그룹에서 토큰을 읽을 수 있습니다.

  2. 애플리케이션이 토큰 파일을 읽을 수 있도록 하려면 애플리케이션을 실행하는 사용자 계정을 awssmatokenreader 그룹에 추가해야 합니다. 예를 들어 다음 usermod 명령을 사용하여 토큰 파일을 읽을 수 있는 권한을 애플리케이션에 부여할 수 있습니다. 여기서 <APP_USER>는 애플리케이션을 실행하는 사용자 ID입니다.

    sudo usermod -aG awssmatokenreader <APP_USER>
    개발 도구 설치

    AL2023과 같은 RPM 기반 시스템에서는 개발 도구 그룹을 설치합니다.

    sudo yum -y groupinstall "Development Tools"
  3. Rust 설치

    Rust 설명서Rust 설치 지침에 따라 설치합니다.

    curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh # Follow the on-screen instructions . "$HOME/.cargo/env"
  4. 에이전트 빌드

    cargo build 명령을 사용해 Secrets Manager Agent를 빌드합니다.

    cargo build --release

    target/release/aws_secretsmanager_agent에서 실행 파일을 찾을 수 있습니다.

Debian-based systems
Debian 기반 시스템에서 빌드하는 방법
  1. 개발 도구 설치

    Ubuntu와 같은 Debian 기반 시스템에서는 build-essential 패키지를 설치합니다.

    sudo apt install build-essential
  2. Rust 설치

    Rust 설명서Rust 설치 지침에 따라 설치합니다.

    curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh # Follow the on-screen instructions . "$HOME/.cargo/env"
  3. 에이전트 빌드

    cargo build 명령을 사용해 Secrets Manager Agent를 빌드합니다.

    cargo build --release

    target/release/aws_secretsmanager_agent에서 실행 파일을 찾을 수 있습니다.

Windows
Windows에서 빌드하는 방법
  1. 개발 환경 설정

    Microsoft Windows 설명서Windows용 Rust 개발 환경 설정 지침에 따라 개발 환경을 설정합니다.

  2. 에이전트 빌드

    cargo build 명령을 사용해 Secrets Manager Agent를 빌드합니다.

    cargo build --release

    target/release/aws_secretsmanager_agent.exe에서 실행 파일을 찾을 수 있습니다.

Cross-compile natively
기본적으로 교차 컴파일하는 방법
  1. 교차 컴파일 도구 설치

    Ubuntu와 같이 mingw-w64 패키지를 사용할 수 있는 배포판에서는 다음과 같이 교차 컴파일 도구 체인을 설치합니다.

    # Install the cross compile tool chain sudo add-apt-repository universe sudo apt install -y mingw-w64
  2. Rust 빌드 대상 추가

    Windows GNU 빌드 대상을 설치합니다.

    rustup target add x86_64-pc-windows-gnu
  3. Windows용으로 빌드

    Windows용으로 에이전트를 교차 컴파일합니다.

    cargo build --release --target x86_64-pc-windows-gnu

    target/x86_64-pc-windows-gnu/release/aws_secretsmanager_agent.exe에서 실행 파일을 찾을 수 있습니다.

Cross compile with Rust cross
Rust cross를 사용하여 교차 컴파일하는 방법

시스템에서 교차 컴파일 도구가 기본적으로 제공되지 않는 경우 Rust 크로스 프로젝트를 사용할 수 있습니다. 자세한 내용은 https://github.com/cross-rs/cross를 참조하세요.

중요

빌드 환경에는 32GB 디스크 공간을 권장합니다.

  1. Docker 설정

    Docker를 설치 및 구성합니다.

    # Install and start docker sudo yum -y install docker sudo systemctl start docker sudo systemctl enable docker # Make docker start after reboot
  2. Docker 권한 구성

    Docker 그룹에 사용자를 추가합니다.

    # Give ourselves permission to run the docker images without sudo sudo usermod -aG docker $USER newgrp docker
  3. Windows용으로 빌드

    cross를 설치하고 실행 파일을 빌드합니다.

    # Install cross and cross compile the executable cargo install cross cross build --release --target x86_64-pc-windows-gnu

Secrets Manager Agent 설치

다음 설치 옵션 중에서 사용할 컴퓨팅 환경을 선택합니다.

Amazon EC2
Amazon EC2에 Secrets Manager Agent를 설치하는 방법
  1. 구성 디렉터리로 이동

    구성 디렉터리로 변경합니다.

    cd aws_secretsmanager_agent/configuration
  2. 설치 스크립트 실행

    리포지토리에 제공된 install 스크립트를 실행합니다.

    스크립트는 시작 시 무작위 SSRF 토큰을 생성한 후 이를 /var/run/awssmatoken 파일에 저장합니다. 설치 스크립트가 생성하는 awssmatokenreader 그룹에서 토큰을 읽을 수 있습니다.

  3. 애플리케이션 권한 구성

    애플리케이션이 실행되는 사용자 계정을 awssmatokenreader 그룹에 추가합니다.

    sudo usermod -aG awssmatokenreader APP_USER

    APP_USER를 애플리케이션이 실행되는 사용자 ID로 바꿔 입력합니다.

Container Sidecar

Docker를 사용하여 Secrets Manager Agent를 애플리케이션과 함께 사이드카 컨테이너로 실행할 수 있습니다. 이렇게 하면 애플리케이션은 Secrets Manager Agent가 제공하는 로컬 HTTP 서버에서 보안 암호를 검색할 수 있습니다. Docker에 대한 자세한 내용은 Docker 설명서를 참조하세요.

Secrets Manager Agent의 사이드카 컨테이너를 생성하는 방법
  1. 에이전트 Dockerfile 생성

    Secrets Manager Agent 사이드카 컨테이너용 Dockerfile을 생성합니다.

    # Use the latest Debian image as the base FROM debian:latest # Set the working directory inside the container WORKDIR /app # Copy the Secrets Manager Agent binary to the container COPY secrets-manager-agent . # Install any necessary dependencies RUN apt-get update && apt-get install -y ca-certificates # Set the entry point to run the Secrets Manager Agent binary ENTRYPOINT ["./secrets-manager-agent"]
  2. 애플리케이션 Dockerfile 생성

    클라이언트 애플리케이션용 Dockerfile을 생성합니다.

  3. Docker Compose 파일 생성

    두 컨테이너를 공유 네트워크 인터페이스로 실행하기 위한 Docker Compose 파일을 생성합니다.

    중요

    Secrets Manager Agent를 사용하려면 애플리케이션에 대한 AWS 자격 증명과 SSRF 토큰을 로드해야 합니다. Amazon EKS 및 Amazon ECS의 경우 다음 문서를 참조하세요.

    version: '3' services: client-application: container_name: client-application build: context: . dockerfile: Dockerfile.client command: tail -f /dev/null # Keep the container running secrets-manager-agent: container_name: secrets-manager-agent build: context: . dockerfile: Dockerfile.agent network_mode: "container:client-application" # Attach to the client-application container's network depends_on: - client-application
  4. 에이전트 바이너리 복사

    Dockerfiles 및 Docker Compose 파일이 포함된 동일한 디렉터리에 secrets-manager-agent 바이너리를 복사합니다.

  5. 컨테이너 빌드 및 실행

    Docker Compose를 사용하여 컨테이너를 빌드하고 실행합니다.

    docker-compose up --build
  6. 다음 단계

    이제 Secrets Manager Agent를 사용하여 클라이언트 컨테이너에서 보안 암호를 가져올 수 있습니다. 자세한 내용은 Secrets Manager Agent를 사용하여 보안 암호 검색 섹션을 참조하세요.

Lambda

Secrets Manager Agent를 Lambda 확장으로 패키징할 수 있습니다. 그런 다음, Lambda 함수에 계층으로 추가한 후 Lambda 함수에서 Secrets Manager Agent를 직접적으로 호출하여 보안 암호를 가져올 수 있습니다.

다음 지침에서는 https://github.com/aws/aws-secretsmanager-agent의 예제 스크립트 secrets-manager-agent-extension.sh를 사용하여 Secrets Manager Agent를 Lambda 확장으로 설치함으로써 MyTest라는 보안 암호를 가져오는 방법을 보여줍니다.

Secrets Manager Agent용 Lambda 확장을 생성하는 방법
  1. 에이전트 계층 패키징

    Secrets Manager Agent 코드 패키지의 루트에서 다음 명령을 실행합니다.

    AWS_ACCOUNT_ID=AWS_ACCOUNT_ID LAMBDA_ARN=LAMBDA_ARN # Build the release binary cargo build --release --target=x86_64-unknown-linux-gnu # Copy the release binary into the `bin` folder mkdir -p ./bin cp ./target/x86_64-unknown-linux-gnu/release/aws_secretsmanager_agent ./bin/secrets-manager-agent # Copy the `secrets-manager-agent-extension.sh` example script into the `extensions` folder. mkdir -p ./extensions cp aws_secretsmanager_agent/examples/example-lambda-extension/secrets-manager-agent-extension.sh ./extensions # Zip the extension shell script and the binary zip secrets-manager-agent-extension.zip bin/* extensions/* # Publish the layer version LAYER_VERSION_ARN=$(aws lambda publish-layer-version \ --layer-name secrets-manager-agent-extension \ --zip-file "fileb://secrets-manager-agent-extension.zip" | jq -r '.LayerVersionArn')
  2. SSRF 토큰 구성

    에이전트의 기본 구성에서는 SSRF 토큰을 미리 설정된 AWS_SESSION_TOKEN 또는 AWS_CONTAINER_AUTHORIZATION_TOKEN 환경 변수에 설정된 값(후자는 SnapStart가 활성화된 Lambda 함수에 사용됨)으로 자동 설정합니다. 또는 Lambda 함수에서 임의 값으로 AWS_TOKEN 환경 변수를 정의할 수 있으며, 이 경우 위 두 변수보다 우선 적용됩니다. AWS_TOKEN 환경 변수를 사용하기로 선택하면, 반드시 lambda:UpdateFunctionConfiguration 호출을 통해 해당 환경 변수를 설정해야 합니다.

  3. 계층을 함수에 연결

    계층을 Lambda 함수에 연결합니다.

    # Attach the layer version to the Lambda function aws lambda update-function-configuration \ --function-name $LAMBDA_ARN \ --layers "$LAYER_VERSION_ARN"
  4. 함수 코드 업데이트

    Lambda 함수가 http://localhost:2773/secretsmanager/get?secretId=MyTest를 호출하도록 코드를 업데이트하고, 요청 헤더 X-Aws-codes-Secrets-Token에는 위에서 설정한 SSRF 토큰 값을 넣어 보안 암호를 가져옵니다. 애플리케이션 코드에 재시도 로직을 구현하여 Lambda 확장의 초기화 및 등록 지연을 수용할 수 있도록 해야 합니다.

  5. 함수 테스트

    Lambda 함수를 간접적으로 호출하여 보안 암호를 올바르게 가져오는지 확인합니다.

Secrets Manager Agent를 사용하여 보안 암호 검색

보안 암호를 가져오려면, 보안 암호 이름 또는 ARN을 쿼리 파라미터로 사용하여 로컬 Secrets Manager Agnet 엔드포인트를 호출합니다. 기본적으로 Secrets Manager Agent는 보안 암호의 AWSCURRENT 버전을 가져옵니다. 다른 버전을 가져오려면 versionStage 또는 versionId 파라미터를 사용합니다.

중요

Secrets Manager Agent를 보호하려면 각 요청의 일부로 SSRF 토큰 헤더 X-Aws-Parameters-Secrets-Token을 포함해야 합니다. Secrets Manager Agent는 이 헤더가 없거나, 잘못된 SSRF 토큰이 있는 요청을 거부합니다. Secrets Manager Agent 구성에 있는 SSRF 헤더 이름을 사용자 지정할 수 있습니다.

필수 권한

Secrets Manager Agent는 AWS 자격 증명 공급자 체인을 활용하는 AWS SDK for Rust를 사용합니다. 이러한 IAM 자격 증명의 ID는 Secrets Manager Agent가 보안 암호를 검색하는 데 필요한 권한을 결정합니다.

  • secretsmanager:DescribeSecret

  • secretsmanager:GetSecretValue

권한에 대한 자세한 내용은 AWS Secrets Manager에 대한 권한 참조을 참조하세요.

중요

보안 암호 값을 Secrets Manager Agent로 가져오면, 컴퓨팅 환경 및 SSRF 토큰에 액세스할 수 있는 모든 사용자가 Secrets Manager Agent 캐시에서 보안 암호에 액세스할 수 있습니다. 자세한 내용은 보안 고려 사항 섹션을 참조하세요.

요청 예시

curl
예 - curl을 사용하여 보안 암호 가져오기

다음 curl 예제에서는 Secrets Manager Agent에서 보안 암호 값을 가져오는 방법을 보여줍니다. 이 예제는 파일에 있는 SSRF를 기반으로 하며, SSRF는 설치 스크립트에 저장됩니다.

curl -v -H \\ "X-Aws-Parameters-Secrets-Token: $(/var/run/awssmatoken)" \\ 'http://localhost:2773/secretsmanager/get?secretId=YOUR_SECRET_ID' \\ echo
Python
예 - Python을 사용하여 보안 암호 가져오기

다음 Python 예제에서는 Secrets Manager Agent에서 보안 암호 값을 가져오는 방법을 보여줍니다. 이 예제는 파일에 있는 SSRF를 기반으로 하며, SSRF는 설치 스크립트에 저장됩니다.

import requests import json # Function that fetches the secret from Secrets Manager Agent for the provided secret id. def get_secret(): # Construct the URL for the GET request url = f"http://localhost:2773/secretsmanager/get?secretId=YOUR_SECRET_ID" # Get the SSRF token from the token file with open('/var/run/awssmatoken') as fp: token = fp.read() headers = { "X-Aws-Parameters-Secrets-Token": token.strip() } try: # Send the GET request with headers response = requests.get(url, headers=headers) # Check if the request was successful if response.status_code == 200: # Return the secret value return response.text else: # Handle error cases raise Exception(f"Status code {response.status_code} - {response.text}") except Exception as e: # Handle network errors raise Exception(f"Error: {e}")

refreshNow 파라미터 이해

Secrets Manager Agent는 보안 암호 값을 인 메모리 캐시에 저장하고 주기적으로 갱신합니다. 기본적으로 이 갱신은 TTL(Time to Live)이 만료된 후 보안 암호를 요청할 때 발생하며, TTL은 보통 300초입니다. 하지만 이 방식은 보안 암호가 캐시 만료 전에 교체되면 오래된 보안 암호 값을 반환할 수 있다는 한계가 있습니다.

이 한계를 해결하기 위해 Secrets Manager Agent는 URL에 refreshNow라는 파라미터를 지원합니다. 이 파라미터를 사용하면 캐시를 무시하고 즉시 보안 암호 값을 갱신하여 항상 최신 정보를 가져올 수 있습니다.

기본 동작(refreshNow 미사용)
  • TTL이 만료될 때까지 캐시된 값을 사용

  • 보안 암호는 TTL(기본 300초) 이후에만 갱신

  • TTL 만료 전 보안 암호가 교체되면 오래된 값을 반환할 수 있음

refreshNow=true 사용 시 동작
  • 캐시를 완전히 우회

  • Secrets Manager에서 최신 보안 암호 값을 직접 가져옴

  • 캐시를 최신 값으로 업데이트하고 TTL 재설정

  • 항상 가장 최신 보안 암호 값을 확보

보안 암호 값 강제 갱신

중요

refreshNow의 기본값은 false입니다. true로 설정하면 Secrets Manager Agent 구성 파일에 지정된 TTL을 무시하고 Secrets Manager에 API 호출을 수행합니다.

curl
예 - curl을 사용하여 보안 암호 강제 갱신

다음 curl 예제에서는 Secrets Manager Agent에서 보안 암호 값을 강제로 갱신하는 방법을 보여줍니다. 이 예제는 파일에 있는 SSRF를 기반으로 하며, SSRF는 설치 스크립트에 저장됩니다.

curl -v -H \\ "X-Aws-Parameters-Secrets-Token: $(/var/run/awssmatoken)" \\ 'http://localhost:2773/secretsmanager/get?secretId=YOUR_SECRET_ID&refreshNow=true' \\ echo
Python
예 - Python을 사용하여 보안 암호 강제 갱신

다음 Python 예제에서는 Secrets Manager Agent에서 보안 암호 값을 가져오는 방법을 보여줍니다. 이 예제는 파일에 있는 SSRF를 기반으로 하며, SSRF는 설치 스크립트에 저장됩니다.

import requests import json # Function that fetches the secret from Secrets Manager Agent for the provided secret id. def get_secret(): # Construct the URL for the GET request url = f"http://localhost:2773/secretsmanager/get?secretId=YOUR_SECRET_ID&refreshNow=true" # Get the SSRF token from the token file with open('/var/run/awssmatoken') as fp: token = fp.read() headers = { "X-Aws-Parameters-Secrets-Token": token.strip() } try: # Send the GET request with headers response = requests.get(url, headers=headers) # Check if the request was successful if response.status_code == 200: # Return the secret value return response.text else: # Handle error cases raise Exception(f"Status code {response.status_code} - {response.text}") except Exception as e: # Handle network errors raise Exception(f"Error: {e}")

Secrets Manager Agent 구성

Secrets Manager Agent의 구성을 변경하려면 TOML 구성 파일을 생성한 다음 ./aws_secretsmanager_agent --config config.toml을 직접적으로 호출합니다.

구성 옵션
log_level

Secrets Manager Agent: DEBUG, INFO, WARN, ERROR 또는 NONE에 대해 로그에 보고되는 세부 정보의 수준입니다. 기본값은 INFO입니다.

log_to_file

로그를 파일로 기록할지 또는 stdout/stderr로 출력할지 설정합니다. true 또는 false로 지정합니다. 기본값은 true입니다.

http_port

로컬 HTTP 서버의 포트로, 포트 범위는 1024~65535입니다. 기본값은 2773입니다.

region

요청에 사용할 AWS 리전입니다. 리전이 지정되지 않은 경우 Secrets Manager Agent가 SDK에서 리전을 결정합니다. 자세한 내용은 AWS SDK for Rust 개발자 가이드의 Specify your credentials and default Region 섹션을 참조하세요.

ttl_seconds

캐시된 항목의 TTL(초 단위)로, 범위는 0~3600입니다. 기본값은 300입니다. 0은 캐싱이 없음을 나타냅니다.

cache_size

캐시에 저장할 수 있는 보안 암호의 최대 개수로, 범위는 1~1000입니다. 기본값은 1000입니다.

ssrf_headers

Secrets Manager Agent가 SSRF 토큰이 있는지 확인하는 헤더 이름 목록입니다. 기본값은 ‘X-Aws-Parameters-Secrets-Token, X-Vault-Token’입니다.

ssrf_env_variables

Secrets Manager Agent가 순차적으로 확인할 SSRF 토큰 환경 변수 이름 목록입니다. 환경 변수에는 토큰 또는 AWS_TOKEN=file:///var/run/awssmatoken에서와 같이 토큰 파일에 대한 참조가 포함될 수 있습니다. 기본값은 "AWS_TOKEN, AWS_SESSION_TOKEN, AWS_CONTAINER_AUTHORIZATION_TOKEN"입니다.

path_prefix

요청이 경로 기반 요청인지 여부를 결정하는 데 사용되는 URI 접두사입니다. 기본값은 ‘/v1/’입니다.

max_conn

Secrets Manager Agent가 허용하는 HTTP 클라이언트의 최대 연결 수로, 범위는 1~1000입니다. 기본값은 800입니다.

선택적 기능

Secrets Manager Agent는 cargo build--features 플래그를 전달하여 선택적 기능을 포함해 빌드할 수 있습니다. 사용 가능한 기능은 다음과 같습니다.

빌드 기능
prefer-post-quantum

X25519MLKEM768 알고리즘을 가장 우선 순위의 키 교환 알고리즘으로 설정합니다. 기본적으로는 사용 가능하지만 최우선으로 설정되지는 않습니다. X25519MLKEM768은 하이브리드, 포스트 양자 보안 키 교환 알고리즘입니다.

fips

에이전트에서 사용하는 암호 제품군을 FIPS 승인 암호화만 사용하도록 제한합니다.

로깅

로컬 로깅

Secrets Manager Agent는 오류를 로컬 파일(logs/secrets_manager_agent.log)이나 log_to_file 구성 변수에 따라 stdout/stderr로 기록합니다. 애플리케이션이 Secrets Manager Agent를 호출하여 보안 암호를 가져오면 해당 호출이 로컬 로그에 표시됩니다. CloudTrail 로그에는 표시되지 않습니다.

로그 교체

Secrets Manager Agent는 파일이 10MB에 도달하면 새 로그 파일을 생성하고 총 5개의 로그 파일을 저장합니다.

AWS 서비스 로깅

로그는 Secrets Manager, CloudTrail 또는 CloudWatch로 이동하지 않습니다. Secrets Manager Agent에서 보안 암호를 가져오라는 요청은 이러한 로그에 표시되지 않습니다. Secrets Manager Agent가 암호를 가져오기 위해 Secrets Manager를 직접적으로 호출하면 해당 호출은 aws-secrets-manager-agent가 포함된 사용자 에이전트 문자열과 함께 CloudTrail에 기록됩니다.

Secrets Manager Agent 구성에서 로깅 옵션을 구성할 수 있습니다.

보안 고려 사항

신뢰 도메인

에이전트 아키텍처의 경우, 신뢰 도메인은 에이전트 엔드포인트 및 SSRF 토큰이 액세스할 수 있는 곳으로, 대개 전체 호스트입니다. 동일한 보안 태세를 유지하려면 Secrets Manager Agent의 신뢰 도메인은 Secrets Manager 자격 증명이 제공되는 도메인과 일치해야 합니다. 예를 들어 Amazon EC2에서 Secrets Manager Agent의 신뢰 도메인은 Amazon EC2에 대한 역할을 사용할 경우 자격 증명의 도메인과 동일합니다.

중요

Secrets Manager 자격 증명이 애플리케이션에 잠긴 에이전트 솔루션을 사용하지 않는 보안 인식 애플리케이션은 언어별 AWS SDK 또는 캐싱 솔루션을 사용하는 방안을 고려해야 합니다. 자세한 내용은 보안 암호 가져오기를 참조하세요.