인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

sunpil86님의 프로필 이미지

작성한 질문수

쉽게 설명하는 AWS 기초 강의

(실습포함)EC2 권한 부여하기

AWS SDK For JavascriptV2 자격 증명 로드 못하는 이슈

작성

·

72

0

안녕하세요.

IAM 역할이 부여된 EC2 환경에서 AWS SDK 사용 시 자격 증명을 로드하지 못하는 이슈가 있어서 도움을 얻고자 질문 드립니다(aws-sdk 버전: 2.1494.0, 빌드 환경: vite)

혹시 추가적으로 설정을 해주어야 하는 부분이 있을까요?

image.pngimage.pngimage.png

답변 2

0

AWS 강의실님의 프로필 이미지
AWS 강의실
지식공유자

안녕하세요. 답변이 늦었습니다. 우선 해당 EC2의 CLI에서 권한과 관련된 동작이 잘 되나요?

sunpil86님의 프로필 이미지
sunpil86
질문자

네 EC2에서 aws cli 명령어는 정상적으로 동작합니다.
원인을 확인해본 결과 자바스크립트 호스트 환경이 브라우저여서 그런거 같은데 제가 파악한 원인이 맞을까요?

AWS 강의실님의 프로필 이미지
AWS 강의실
지식공유자

음 설마 웹페이지인가요?

sunpil86님의 프로필 이미지
sunpil86
질문자

네 SPA(vuejs)입니다!

AWS 강의실님의 프로필 이미지
AWS 강의실
지식공유자

생각하신 내용이 맞습니다. 잘 생각해보면 이 코드가 실제로 수행되는 곳은 브라우저지 EC2가 아니니까요 ㅎ

0

인프런 AI 인턴님의 프로필 이미지

안녕하세요, 인프런 AI 인턴입니다. sunpil86님.

AWS SDK for JavaScript V2를 사용 중 IAM 역할이 부여된 EC2 환경에서 자격 증명 로드 문제가 발생하고 있는 것 같습니다. 이 문제는 보통 아래의 몇 가지 사항으로 인해 발생할 수 있습니다. 각각 해결 방안과 함께 설명드리겠습니다.

  1. 인스턴스 메타데이터 서비스(IMDS) 설정:

    • EC2 인스턴스에서 IAM 역할의 자격 증명을 자동으로 로드하려면 최신 인스턴스 메타데이터 서비스를 사용해야 합니다. IMDSv2를 사용하도록 IAM 역할과 인스턴스 프로파일에 대한 설정이 정확히 되어 있는지 확인하세요. 참고로, IMDSv2는 HTTP로 인증된 요청을 요구하므로 에이전트가 이를 지원해야 합니다.
    • EC2 인스턴스 메타데이터 URL에 직접 액세스하여 자격 증명을 확인할 수 있습니다: http://169.254.169.254/latest/meta-data/iam/security-credentials/.
  2. 환경 변수 설정:

    • AWS SDK에서는 환경 변수를 통해 자격 증명을 로드할 수 있습니다. 환경 변수 AWS_SDK_LOAD_CONFIGtrue로 설정하여 AWS CLI에서 사용하는 자격 증명 파일을 로드하게 하세요.
    • 필요한 경우 AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEYAWS_SESSION_TOKEN 환경 변수를 설정하여 수동으로 자격을 제공할 수 있습니다.
  3. 코드 변경:

    • JavaScript 코드 내에서 자격 증명을 명시적으로 설정하는 방법과 SDK의 자격 증명 소스를 확인하는 코드를 추가하여 디버깅할 수 있습니다.

추가적인 설정과 관련된 논의는 아래 유사한 질문들에서 다루어졌으니 참고하시기 바랍니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

sunpil86님의 프로필 이미지

작성한 질문수

질문하기