"The config profile could not be found" — 구성 프로필을 찾을 수 없습니다

TL;DR — 사용 중인 프로필 이름이 프로세스에서 읽고 있는 AWS 구성 파일에 존재하지 않습니다. 세 가지 일반적인 용의자: 오래된 AWS_PROFILE 환경 변수, --profile/profile_name의 오타 또는 잘못된 섹션 헤더에 정의된 프로필 — ~/.aws/config 파일에는 [profile myprofile]가 필요한 반면 ~/.aws/credentials은 일반 [myprofile]을 사용합니다. aws configure list-profiles를 실행하고 비교합니다.

무엇을 의미하는가

botocore.exceptions.ProfileNotFound: The config profile (myprofile) could not be found

DynamoDB 호출에 서명하기 전에 SDK는 자격 증명 프로필을 확인합니다. 프로필이 AWS_PROFILE, --profile 또는 boto3.Session(profile_name=...)를 통해 _명시적으로 요청_되었고 읽고 있는 구성/자격 증명 파일에 해당 이름을 가진 섹션이 없으면 이 오류와 함께 해결이 중지됩니다. AWS에는 아무것도 도달하지 못했습니다. 완전히 로컬 구성 조회가 실패했습니다.

왜 발생하는가

  • AWS_PROFILE은 존재하지 않는 프로필을 가리킵니다 — 오래 전에 셸 rc 파일, 컨테이너 이미지 또는 CI 구성에 설정된 후 프로필 이름이 바뀌거나 제거되었습니다.
  • 오타 또는 대소문자 불일치 — 프로필 이름이 정확히 일치합니다.
  • 잘못된 섹션 헤더 구문~/.aws/config에서 명명된 프로필은 [profile myprofile]로 선언되어야 합니다. 거기에 [myprofile]을 쓰면 CLI/SDK가 이를 찾을 수 없다는 의미입니다(일반 형식은 ~/.aws/credentials에 속함).
  • 파일은 프로세스가 보이는 위치에 없습니다AWS_CONFIG_FILE/AWS_SHARED_CREDENTIALS_FILE 경로 재정의, sudo/a 서비스 사용자 아래의 다른 홈 디렉터리 또는 ~/.aws 마운트가 없는 컨테이너.

어떻게 해결하는가

  1. 환경에 실제로 표시되는 항목을 나열하세요.

    aws configure list-profiles
    env | grep -i '^AWS_'
  2. 포인터 수정 또는 설정 해제unset AWS_PROFILE(또는 나열된 프로필로 설정), --profile/profile_name 철자를 수정합니다.

  3. 섹션 헤더를 확인하세요.

    # ~/.aws/config
    [profile myprofile]
    region = eu-west-1
    
    # ~/.aws/credentials
    [myprofile]
    aws_access_key_id = ...
    aws_secret_access_key = ...
  4. 프로필이 없는 경우 프로필을 생성합니다aws configure --profile myprofile(또는 Identity Center 프로필의 경우 aws configure sso).

  5. 컨테이너/CI에서는 프로필 파일보다 환경 자격 증명이나 역할을 선호하거나 프로필을 실제로 정의하는 파일에 마운트/포인트 AWS_CONFIG_FILE를 선호합니다.

DynoTable에서 보기

DynoTable은 CLI와 동일한 ~/.aws/credentials~/.aws/config 파일을 읽습니다. 설정 → 프로필에서 프로필을 추가하고 드롭다운에서 프로필 이름을 선택한 다음 연결 테스트를 실행하여 SDK보다 먼저 해결되는지 확인하세요. 프로필 전환(⌘P)은 테이블이 사라질 때 오래된 AWS_PROFILE를 분명하게 만듭니다.

로컬의 경우 엔드포인트 http://localhost:8000 및 더미 자격 증명을 사용하여 프로필을 생성합니다. Connect to AWSInstall을 참조하세요. ⌘K이 연결된 테이블을 연 다음 Query Builder에서 연기 테스트 쿼리를 실행합니다.

출처

재현하기

구성에 없는 프로필에서 boto3을 가리키고 AWS 환경을 지워서 조회를 만족하는 다른 항목이 없도록 합니다.

import boto3
boto3.Session(profile_name='no-such-profile-xyz').client('dynamodb').list_tables()

실제 출력:

ProfileNotFound: The config profile (no-such-profile-xyz) could not be found

이는 요청이 AWS에 도달하기 전에 클라이언트의 botocore에 의해 발생합니다. 이것이 바로 HTTP 상태가 없고 재시도가 도움이 되지 않는 이유입니다. 괄호 안의 이름은 검색한 프로필이므로 오타가 코드에 있는지 구성 파일에 있는지 알려줍니다.

관련 오류

참고 자료

위에 링크된 공식 AWS 문서를 기준으로 2026년 7월 13일에 마지막으로 확인되었습니다.

boto3 1.43.56 / botocore 1.43.56에 대해 2026-07-26 재현 — 위 출력은 그대로입니다.

Console 없이 DynamoDB 작업하기

DynamoDB로는 실행할 수 없는 진짜 SQL(JOINs, GROUP BY, 집계)을 실행하는 빠른 DynamoDB 데스크톱 클라이언트. 시각적 편집과 여러분 자신의 Bedrock 키로 동작하는 AI 에이전트를 제공합니다.

30일 무료 체험, 신용카드 불필요 — 이후 기간 제한 없는 무료 요금제.