Notice
Recent Posts
Recent Comments
Link
투케이2K
340. (TWOK/ERROR) [AWS] InvalidClientTokenId : The security token included in the request is invalid 본문
투케이2K 에러관리
340. (TWOK/ERROR) [AWS] InvalidClientTokenId : The security token included in the request is invalid
투케이2K 2025. 12. 10. 20:20728x90
[환경 설정 및 설명]
프로그램 : AWS
설 명 : [AWS] InvalidClientTokenId : The security token included in the request is invalid
[설 명]
--------------------------------------------------------------------------
[개발 및 테스트 환경]
--------------------------------------------------------------------------
- 제목 : [AWS] InvalidClientTokenId : The security token included in the request is invalid
- 테스트 환경 : AWS / Auth / STS
- 사전) AWS STS 임시 자격 증명 간단 설명 :
>> Aws STS 는 AWS 리소스에 대한 액세스를 제어할 수 있는 임시 보안 자격 증명입니다 (신뢰받는 사용자에게 제공)
>> Aws STS 는 단기적 임시 보안 자격 증명이며, 몇 분에서 몇 시간 동안 해당 자격 증명을 사용해 AWS 리소스를 액세스할 수 있습니다
>> Aws STS 는 임시 보안 자격 증명이 만료 된 경우 AWS는 더는 그 자격 증명을 인식하지 못하거나 그 자격 증명을 사용한 API 요청으로부터 이루어지는 어떤 종류의 액세스도 허용하지 않습니다
--------------------------------------------------------------------------
--------------------------------------------------------------------------
[에러 원인]
--------------------------------------------------------------------------
1. AWS STS 임시 자격 증명 요청 시 AWS.config.update 에 지정한 AccessKey, SecretKey 정보가 올바르지 않아서 발생하는 이슈
>> AWS Iam 계정에 할당 된 AccessKey, SecretKey 정보가 올바르지 않음
2. 에러 발생 로그 전문 :
>> InvalidClientTokenId : The security token included in the request is invalid
3. 자바스크립트 AWS STS 임시 자격 증명 조회 간단 예시 코드 :
# 웹 CDN 라이브러리 선언
<script src="https://code.jquery.com/jquery-latest.min.js"></script>
<script src="https://sdk.amazonaws.com/js/aws-sdk-2.1416.0.min.js"></script>
# 웹 스크립트 소스 코드
var accessKeyId = "";
var secretAccessKey = "";
var region = "";
AWS.config.update({
region: region,
accessKeyId: accessKeyId,
secretAccessKey: secretAccessKey
});
const sts = new AWS.STS();
// -----------------------------------------
// [STS getSessionToken 호출 수행]
// -----------------------------------------
// DurationSeconds : Expiration 시간 3600 은 (1시간) / 10800 은 (3시간) / 세션 지속 시간 (최대 129600초 = 36시간)
// -----------------------------------------
var resMessage = "";
sts.getSessionToken({ DurationSeconds: 10800 }, function(err, data) {
if (err) {
console.error("[getSessionToken] : [Error] : ", err);
}
else {
console.error("[getSessionToken] : [Result] : ", JSON.stringify(data));
console.log("AccessKeyId :: " + data.Credentials.AccessKeyId); // [STS > AccessKeyId]
console.log("SecretAccessKey :: " + data.Credentials.SecretAccessKey); // [STS > SecretAccessKey]
console.log("SessionToken :: " + data.Credentials.SessionToken); // [STS > SessionToken]
console.log("Expiration :: " + data.Credentials.Expiration); // [STS > Expiration]
}
});
--------------------------------------------------------------------------
--------------------------------------------------------------------------
[해결 방법]
--------------------------------------------------------------------------
1. AWS STS 임시 자격 증명 조회 getSessionToken API 호출 후 err 발생 시 err.name 값 체크 후
InvalidClientTokenId : The security token included in the request is invalid 인 경우
AWS 계정 Key 정보를 확인해 주세요. 에러 팝업 메시지 추가
2. err.name 값 및 err.message 값 체크 예시 코드 :
if (err.name == "InvalidClientTokenId"){
resMessage += "<pre></pre>"
resMessage += "\n" + "[Output] ErrorReason : AWS 리전 리소스에 접근하기 위한 AccessKey , SecretKey 정보가 올바르지 않습니다 (AWS 리소스 접근 정보를 다시 확인해주세요.)" + "\n";
}
--------------------------------------------------------------------------
--------------------------------------------------------------------------
[참고 사이트]
--------------------------------------------------------------------------
[Aws Auth] AWS Cognito 와 STS ( Security Token Service ) 인증 비교 정리
https://kkh0977.tistory.com/8399
https://blog.naver.com/kkh0977/224073942712?trackingCode=blog_bloghome_searchlist
[자바스크립트 AWS STS 임시 자격 증명 조회 방법 - AccessKeyId, SecretAccessKey, SessionToken]
https://blog.naver.com/kkh0977/223901300334?trackingCode=blog_bloghome_searchlist
[자바스크립트 AWS STS 임시 자격 증명 사용해 S3 Get PreSignedUrl 프리 사인 URL 주소 생성]
https://blog.naver.com/kkh0977/223938740405?trackingCode=blog_bloghome_searchlist
[자바스크립트 AWS Iot Core Credential Endpoint 정보 조회 - STS 임시 AWS 자격 증명 호출 URL 정보]
https://blog.naver.com/kkh0977/224060418734?trackingCode=blog_bloghome_searchlist
--------------------------------------------------------------------------
728x90
반응형
'투케이2K 에러관리' 카테고리의 다른 글
Comments
