기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
사용자 지정 인증 워크플로 이해
사용자 지정 인증은 권한 부여자 리소스를 사용하여 클라이언트를 인증하고 권한을 부여하는 방법을 정의할 수 있도록 합니다. 각 권한 부여자에는 고객 관리형 Lambda 함수에 대한 참조, 디바이스 자격 증명을 검증하기 위한 공개 키 옵션 및 추가 구성 정보가 포함되어 있습니다. 다음 다이어그램은 AWS IoT Core에서 사용자 지정 인증에 대한 권한 부여 워크플로를 보여 줍니다.

AWS IoT Core 사용자 지정 인증 및 권한 부여 워크플로
다음 목록에서는 사용자 지정 인증 및 권한 부여 워크플로의 각 단계를 설명합니다.
-
디바이스는 지원되는 중 하나를 사용하여 고객의 AWS IoT Core 데이터 엔드포인트에 연결합니다디바이스 통신 프로토콜. 디바이스는 요청의 헤더 필드 또는 쿼리 파라미터(HTTP Publish 또는 WebSockets 프로토콜을 통한 MQTT의 경우) 중 하나에서, 또는 MQTT CONNECT 메시지의 사용자 이름 및 암호 필드(MQTT 및 WebSockets 프로토콜을 통한 MQTT의 경우)에서 자격 증명을 전달합니다.
-
AWS IoT Core 는 다음 두 조건 중 하나를 확인합니다.
-
수신되는 요청이 권한 부여자를 지정합니다.
-
요청을 수신하는 AWS IoT Core 데이터 엔드포인트에는 기본 권한 부여자가 구성되어 있습니다.
가 이러한 방법 AWS IoT Core 중 하나로 권한 부여자를 AWS IoT Core 찾으면는 권한 부여자와 연결된 Lambda 함수를 트리거합니다.
-
-
(선택 사항) 토큰 서명을 활성화한 경우는 Lambda 함수를 트리거하기 전에 권한 부여자에 저장된 퍼블릭 키를 사용하여 요청 서명을 AWS IoT Core 확인합니다. 유효성 검사에 실패하면 AWS IoT Core 이(가) Lambda 함수를 호출하지 않고 요청을 중지합니다.
-
Lambda 함수는 요청에서 자격 증명 및 연결 메타데이터를 수신하고 인증 결정을 내립니다.
-
Lambda 함수는 인증 결정의 결과와 연결에서 허용되는 작업을 지정하는 AWS IoT Core 정책 문서를 반환합니다. Lambda 함수는 Lambda 함수를 호출하여가 요청에서 자격 증명을 AWS IoT Core 재검증하는 빈도를 지정하는 정보도 반환합니다.
-
AWS IoT Core 는 Lambda 함수에서 수신한 정책을 기준으로 연결에 대한 활동을 평가합니다.
-
연결이 설정되고 사용자 지정 권한 부여자 Lambda가 처음 호출되면 MQTT 작업 없이 유휴 연결에서 다음 간접 호출을 최대 5분 동안 지연할 수 있습니다. 그런 다음 후속 간접 호출은 사용자 지정 권한 부여자 Lambda의 새로 고침 간격을 따릅니다. 이 접근 방식은의 Lambda 동시성 제한을 초과할 수 있는 과도한 호출을 방지할 수 있습니다 AWS 계정.
스케일 아웃 고려 사항
Lambda 함수는 권한 부여자에 대한 인증 및 권한 부여를 처리하므로 동시 실행 속도와 같은 Lambda 요금 및 서비스 제한이 적용됩니다. Lambda 요금에 대한 자세한 내용은 Lambda 요금refreshAfterInSeconds
및 disconnectAfterInSeconds
파라미터를 조정하여 Lambda 함수의 로드를 관리할 수 있습니다. Lambda 함수 응답의 내용에 대한 자세한 내용은 Lambda 함수 정의 단원을 참조하세요.
참고
서명을 활성화한 상태로 두면 인식할 수 없는 클라이언트가 Lambda를 과도하게 트리거하는 것을 방지할 수 있습니다. 권한 부여자의 로그인을 비활성화하기 전에 이 점을 고려하세요.
참고
사용자 지정 권한 부여자에 대한 Lambda 함수 제한 시간은 5초입니다.