Notice
Recent Posts
Recent Comments
Link
투케이2K
349. (TWOK/ERROR) [AWS] aws 플릿 프로비저닝 템플릿 등록 요청에서 403 AccessDenied 에러 발생 이슈 - 템플릿 포맷 형식 , 람다 실행 권한 본문
투케이2K 에러관리
349. (TWOK/ERROR) [AWS] aws 플릿 프로비저닝 템플릿 등록 요청에서 403 AccessDenied 에러 발생 이슈 - 템플릿 포맷 형식 , 람다 실행 권한
투케이2K 2026. 5. 29. 20:00728x90
반응형
[환경 설정 및 설명]
프로그램 : AWS / IoT Core
설 명 : [AWS] aws 플릿 프로비저닝 템플릿 등록 요청에서 403 AccessDenied 에러 발생 이슈 - 템플릿 포맷 형식 , 람다 실행 권한

[설 명]
--------------------------------------------------------------------------
[개발 및 테스트 환경]
--------------------------------------------------------------------------
- 제목 : [AWS] aws 플릿 프로비저닝 템플릿 등록 요청에서 403 AccessDenied 에러 발생 이슈 - 템플릿 포맷 형식 , 람다 실행 권한
- 테스트 환경 : AWS / Provisioning / Templates
- 사전) 👉 Fleet provisioning 플릿 프로비저닝 수행 방법 간략 설명 :
>> 클레임에 의한 프로비저닝 :
- 디바이스는 프로비저닝 클레임 인증서 및 프라이빗 키 (특수 용도의 자격 증명) 가 내장된 상태로 제조될 수 있습니다
- 디바이스에 내장 된 인증서가 AWS IoT에 등록된 경우, 이 서비스에서 해당 인증서를 디바이스가 일반 작업에 사용할 수 있는 고유한 디바이스 인증서와 교환할 수 있습니다
>> 신뢰할 수 있는 사용자에 의한 프로비저닝 :
- 클레임 프로비저닝과 가장 큰 차이로는 클레임 프로비저닝는 초기 프로비저닝 수행에 필요한 인증서를 기기에 내장하지만,
신뢰할 수 있는 사용자에 의한 프로비저닝은 CSR (Certificate Signing Request) 인증서 신청 요청 후 응답 받은 인증서를 기기에 전달해 프로비저닝을
수행하는 방식입니다.
- 신뢰할 수 있는 사용자에 의한 프로비저닝을 수행하기 위해서는 신뢰할 수 있는 사용자의 액세스 및 권한을 관리해야 합니다.
신뢰할 수 있는 사용자를 인증하고 이 절차를 수행하는 데 필요한 AWS IoT 기능 및 API 작업에 대한 액세스 권한을 부여하는 신뢰할 수 있는 사용자에 대한 계정을 제공 및 유지 관리
--------------------------------------------------------------------------
--------------------------------------------------------------------------
[에러 원인]
--------------------------------------------------------------------------
1. 🟥 AWS 프로비저닝 수행 시 템플릿 등록 요청 부분에서 프로비저닝 함수에 연결 된 람다 함수 실행 및 로직 처리에 필요한 일부 권한이 누락 되어 403 AccessDenied 에러 발생 이슈
2. 🟥 403 AccessDenied 에러가 발생할 수 있는 원인으로 template 템플릿 등록 시 parameter 내에 인증에 필요한 필수 key , value 값이 누락 되는 증상도 있지만, 로그 확인 시 파라미터는 정상 확인
3. 🟥 AWS Cloud Watch Logs 확인 시 람다 함수가 실행 된 적이 없는 것으로 보여, IAM 역할에서 role 정보 확인 시 람다 함수에서 로직 처리에 필요한 일부 권한이 누락 된 것 확인
--------------------------------------------------------------------------
--------------------------------------------------------------------------
[해결 방법]
--------------------------------------------------------------------------
1. 🟦 AWS 프로비저닝 수행 및 템플릿 등록 요청 부분 람다 함수 실행 및 로직 처리에 필요한 일부 권한 추가 반영 실시
2. 🟦 AWS IAM 역할에서 role 정보 확인 방법 :
>> AWS 콘솔 대시보드에서 IAM 검색
>> IAM 메뉴 > 액세스 관리 > 정책 메뉴 진입
>> IoT Core 프로비저닝 템플릿 등록에 연결 된 람다 함수 정책 명칭 찾기
>> 정책 정보에서 > 권한 메뉴 클릭
>> 정책에 정의 된 권한 정보 확인 및 수정
- [수정 예시] AWS_PROV_TEMPLATE_HOOK-lamda-control-policy
3. 🟦 전체 기능 동작에 필요한 권한 정리 :
{
"Version": "2026-05-29",
"Statement": [
{
"Action": [
"iam:CreateRole",
"iam:AttachRolePolicy",
"iam:CreatePolicy",
"iam:PassRole",
"iot:CreatePolicy",
"iot:GetPolicy",
"iot:AttachPolicy",
"iot:CreatePolicyVersion",
"iot:GetPolicyVersion",
"iot:CreateThing",
"iot:DeleteThing",
"iot:RegisterThing",
"iot:CreateKeysAndCertificate",
"iot:GetThingShadow",
"iot:DeleteThingShadow",
"iot:UpdateThingShadow",
"iotjobsdata:*",
"iot:CreateJob",
"iot:DeleteJob",
"iot:ListJobs",
"iot:UpdateJob",
"iot:DescribeJob",
"lambda:CreateFunction",
"lambda:InvokeFunction",
"s3:*",
"s3-object-lambda:*"
],
"Effect": "Allow",
"Resource": "*",
"Sid": "Statement1"
},
{
"Action": "iam:PassRole",
"Condition": {
"StringEquals": {
"iam:PassedToService": "lambda.amazonaws.com"
}
},
"Effect": "Allow",
"Resource": "*"
}
]
}
--------------------------------------------------------------------------
--------------------------------------------------------------------------
[참고 사이트]
--------------------------------------------------------------------------
▶️ [Web] 자바스크립트 paho-mqtt 라이브러리 사용해 AWS Iot Core Fleet Provisioning 프로비저닝 동작 로직 정리
https://kkh0977.tistory.com/8623
https://blog.naver.com/kkh0977/224179137373?trackingCode=blog_bloghome_searchlist
▶️ [Android] aws 프로비저닝 템플릿 등록 시 statusCode 403 AccessDenied 에러 발생 - 액세스가 거부되었습니다.
https://kkh0977.tistory.com/7581
https://blog.naver.com/kkh0977/223721911160?trackingCode=blog_bloghome_searchlist
▶️ [Android] aws 플릿 프로비저닝 템플릿 Rejected , Accepted 구독 에러 - 연결 유실 , template name error
https://kkh0977.tistory.com/6894
https://blog.naver.com/kkh0977/223561187456?trackingCode=blog_bloghome_searchlist
▶️ [Android] aws 프로비저닝 템플릿 등록 statusCode 400 InvalidPayload Message cannot be parsed
https://kkh0977.tistory.com/7580
https://blog.naver.com/kkh0977/223720523889?trackingCode=blog_bloghome_searchlist
▶️ [Android] 안드로이드 Aws Iot Core 특정 thing 사물 삭제 수행 시 403 Access Denied 에러 발생
https://kkh0977.tistory.com/7922
https://blog.naver.com/kkh0977/223834339241?trackingCode=blog_bloghome_searchlist
--------------------------------------------------------------------------
728x90
반응형
'투케이2K 에러관리' 카테고리의 다른 글
Comments
