에 디바이스 연결 AWS IoT - AWS IoT Core

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

에 디바이스 연결 AWS IoT

디바이스는 를 통해 AWS IoT 및 기타 서비스에 연결합니다 AWS IoT Core. AWS IoT Core를 통해 디바이스는 계정과 관련된 디바이스 엔드포인트를 사용하여 메시지를 보내고 받습니다. 는 MQTT 및 WSS 프로토콜을 사용한 디바이스 통신을 AWS IoT 디바이스 SDKs 지원합니다. 디바이스가 사용할 수 있는 프로토콜에 대한 자세한 내용은 디바이스 통신 프로토콜 단원을 참조하세요.

메시지 브로커

AWS IoT 는 메시지 브로커를 통해 디바이스 통신을 관리합니다. 디바이스 및 클라이언트는 메시지 브로커에 메시지를 게시하고 메시지 브로커가 게시하는 메시지를 구독합니다. 메시지는 애플리케이션이 정의한 주제로 식별됩니다. 메시지 브로커는 디바이스 또는 클라이언트에서 게시한 메시지를 수신하면 해당 메시지를 메시지 주제를 구독한 디바이스 및 클라이언트에 다시 게시합니다. 메시지 브로커는 메시지의 내용에 따라 작동할 수 있는 AWS IoT 규칙 엔진에도 메시지를 전달합니다.

AWS IoT 메시지 보안

인증을 위해 X.509 클라이언트 인증서AWS 서명 V4를 AWS IoT 사용할 디바이스 연결입니다. 디바이스 통신은 TLS 버전 1.3으로 보호되며 디바이스가 연결할 때 서버 이름 표시(SNI) 확장을 전송 AWS IoT 해야 합니다. 자세한 내용은 의 전송 보안을 AWS IoT 참조하세요.

AWS IoT 디바이스 데이터 및 서비스 엔드포인트

중요

엔드포인트를 디바이스에 캐시하거나 저장할 수 있습니다. 즉, 새 디바이스가 연결될 DescribeEndpoint API 때마다 를 쿼리할 필요가 없습니다. 가 계정에 엔드포인트를 AWS IoT Core 생성한 후에는 엔드포인트가 변경되지 않습니다.

각 계정에는 계정에 고유한 여러 디바이스 엔드포인트가 있으며 특정 IoT 기능을 지원합니다. AWS IoT 디바이스 데이터 엔드포인트는 IoT 디바이스의 통신 요구 사항에 맞게 설계된 게시/구독 프로토콜을 지원하지만 앱 및 서비스와 같은 다른 클라이언트가 애플리케이션에 이러한 엔드포인트가 제공하는 특수 기능이 필요한 경우 이 인터페이스를 사용할 수도 있습니다. AWS IoT 디바이스 서비스 엔드포인트는 보안 및 관리 서비스에 대한 디바이스 중심 액세스를 지원합니다.

계정의 디바이스 데이터 엔드포인트를 알아보려면 AWS IoT Core 콘솔의 설정 페이지에서 찾을 수 있습니다.

디바이스 데이터 엔드포인트를 포함하여 특정 목적으로 계정의 디바이스 엔드포인트를 학습하려면 여기에 표시된 describe-endpoint CLI 명령 또는 DescribeEndpoint REST 를 사용하고 다음 표의 endpointType 파라미터 값을 API제공합니다.

aws iot describe-endpoint --endpoint-type endpointType

이 명령은 iot-endpoint 형식: account-specific-prefix.iot.aws-region.amazonaws.com.

모든 고객에게는 iot:Data-ATSiot:Data 엔드포인트가 있습니다. 각 엔드포인트는 X.509 인증서를 사용하여 클라이언트를 인증합니다. Symantec 인증 기관에 대해 만연해 있는 불신과 관련된 문제를 피하려면 iot:Data-ATS 엔드포인트 유형을 사용하는 것이 좋습니다. 이전 버전과의 호환성을 위해 VeriSign 인증서를 사용하는 이전 iot:Data 엔드포인트에서 데이터를 검색할 수 있는 엔드포인트를 디바이스에 제공합니다. 자세한 내용은 서버 인증을 참조하세요.

AWS IoT 디바이스용 엔드포인트

엔드포인트 용도

endpointType

설명

AWS IoT Core - 데이터 영역 작업

iot:Data-ATS

메시지 브로커, 디바이스 섀도우 및 AWS IoT의 규칙 엔진 구성 요소와 데이터를 주고받는 데 사용됩니다.

iot:Data-ATS 는 ATS 서명된 데이터 엔드포인트를 반환합니다.

AWS IoT Core - 데이터 영역 작업(레거시)

iot:Data

iot:Data 는 역호환성을 위해 제공된 VeriSign 서명된 데이터 엔드포인트를 반환합니다. MQTT 5는 Symantec(iot:Data) 엔드포인트에서 지원되지 않습니다.

AWS IoT Core 보안 인증 액세스

iot:CredentialProvider

다른 AWS 서비스와 직접 연결하기 위해 디바이스의 기본 제공 X.509 인증서를 임시 자격 증명과 교환하는 데 사용됩니다. 다른 AWS 서비스에 연결하는 방법에 대한 자세한 내용은 AWS 서비스에 대한 직접 호출 권한 부여를 참조하세요.

AWS IoT Device Management - 작업 데이터 작업

iot:Jobs

AWS IoT 작업 디바이스 를 사용하여 디바이스가 작업 서비스와 상호 작용할 수 있도록 하는 데 사용됩니다HTTPSAPIs.

AWS IoT Device Advisor 작업

iot:DeviceAdvisor

Device Advisor를 사용하여 디바이스를 테스트하는 데 사용되는 테스트 엔드포인트 유형입니다. 자세한 내용은 Device Advisor 단원을 참조하십시오.

AWS IoT Core 데이터 베타(미리 보기)

iot:Data-Beta

베타 릴리스용으로 예약된 엔드포인트 유형입니다. 현재 사용에 대한 자세한 내용은 도메인 구성 섹션을 참조하세요.

다음과 같이 정규화된 자체 도메인 이름(FQDN)을 사용할 수도 있습니다.example.com, 및 를 사용하여 디바이스를 AWS IoT 에 연결할 연결된 서버 인증서도메인 구성.

AWS IoT 디바이스 SDKs

이 AWS IoT 디바이스는 IoT 디바이스를 에 SDKs 연결하고 AWS IoT Core 개 MQTT MQTT 이상의 WSS 프로토콜을 지원합니다.

AWS IoT 디바이스는 IoT AWS IoT 디바이스의 특수 통신 요구 사항을 SDKs 지원하지만 에서 지원하는 모든 서비스를 지원하지는 않는다는 점에서 와 SDKs 다릅니다 AWS SDKs AWS SDKs. 이 AWS IoT 디바이스는 모든 AWS 서비스를 지원하는 AWS SDKs와 호환SDKs됩니다. 하지만 서로 다른 인증 방법을 사용하고 서로 다른 엔드포인트에 연결하여 IoT 디바이스에서 를 AWS SDKs 비현실적으로 사용할 수 있습니다.

모바일 디바이스

는 MQTT 디바이스 통신, 일부 AWS IoT 서비스 APIs및 APIs 다른 AWS 서비스의 를 모두 AWS 모바일 SDKs 지원합니다. 지원되는 모바일 디바이스에서 개발하는 경우 SDK를 검토하여 IoT 솔루션 개발에 가장 적합한 옵션인지 확인하세요.

C++

AWS IoT C++ 디바이스 SDK

AWS IoT C++ 디바이스를 SDK 사용하면 개발자가 AWS IoT Core 서비스의 AWS 및 를 사용하여 연결된 애플리케이션을 구축할 APIs 수 있습니다. 특히 리소스가 제한되지 않고 메시지 대기열, 멀티스레딩 지원 및 최신 언어 기능과 같은 고급 기능이 필요한 디바이스를 위해 SDK 설계되었습니다. 자세한 내용은 다음 자료를 참조하세요.

Python

AWS IoT PythonSDK용 디바이스

AWS IoT Device SDK for Python을 사용하면 개발자가 Python 스크립트를 작성하여 디바이스를 사용하여 WebSocket 보안(WSS) 프로토콜을 통해 MQTT 또는 이를 MQTT 통해 AWS IoT 플랫폼에 액세스할 수 있습니다. 디바이스를 APIs AWS IoT Core 서비스의 에 연결하면 사용자는 , AWS Lambda Amazon Kinesis 및 Amazon S3 등과 같은 다른 서비스와 함께 및 를 AWS IoT Core 제공하는 메시지 브로커, 규칙 및 Device Shadow AWS 서비스와 안전하게 작업할 수 있습니다.

JavaScript

AWS IoT SDK용 디바이스 JavaScript

SDK 용 AWS IoT 디바이스를 JavaScript 사용하면 개발자가 AWS IoT Core MQTT 또는 WebSocket 프로토콜을 MQTT 통해 APIs에 액세스하는 JavaScript 애플리케이션을 작성할 수 있습니다. 이 패키지는 Node.js 환경 및 브라우저 애플리케이션에서 사용할 수 있습니다. 자세한 내용은 다음 자료를 참조하세요.

Java

AWS IoT JavaSDK용 디바이스

AWS IoT Device SDK for Java를 사용하면 Java 개발자가 프로토콜을 AWS IoT Core 통해 MQTT 또는 프로토콜을 MQTT 통해 APIs의 에 액세스할 수 WebSocket 있습니다. 는 Device Shadow 서비스를 SDK 지원합니다. GET, UPDATE및 를 포함한 HTTP 메서드를 사용하여 섀도우에 액세스할 수 있습니다DELETE. SDK 또한 는 개발자가 JSON 문서를 직렬화하거나 역직렬화할 필요 없이 getter 및 setter 메서드를 사용하여 섀도우와 데이터를 교환할 수 있는 단순화된 섀도우 액세스 모델을 지원합니다. 자세한 내용은 다음 자료를 참조하세요.

Embedded C

AWS IoT 임베디드 CSDK용 디바이스

중요

이는 숙련된 임베디드 소프트웨어 개발자가 사용하기 위한 SDK 것입니다.

AWS IoT Device SDK for Embedded C (C-SDK)는 임베디드 애플리케이션에서 IoT 디바이스를 IoT AWS IoT Core에 안전하게 연결하는 데 사용할 수 있는 MIT 오픈 소스 라이선스에 따른 C 소스 파일 모음입니다. 여기에는 MQTT, JSON Parser, AWS IoT Device Shadow 라이브러리 등이 포함됩니다. 소스 형태로 배포되며 애플리케이션 코드, 기타 라이브러리 및 선택적으로 RTOS (실시간 운영 체제)와 함께 고객 펌웨어에 내장되도록 설계되었습니다.

AWS IoT Device SDK for Embedded C 는 일반적으로 최적화된 C 언어 런타임이 필요한 리소스 제한 디바이스를 대상으로 합니다. 모든 운영 체제SDK에서 를 사용하고 모든 프로세서 유형(예: MCUs 및 )에서 호스팅할 수 있습니다MPUs. 디바이스에 사용 가능한 메모리 및 처리 리소스가 충분한 경우 C++SDKs, Java JavaScript또는 PythonSDK용 AWS IoT 디바이스와 같은 다른 AWS IoT 디바이스 및 모바일 중 하나를 사용하는 것이 좋습니다.

자세한 내용은 다음 자료를 참조하세요.