AWS IoT MQTT 사용자 지정 인증

· 컴포넌트

sgcWebSockets 4.4.3부터 Amazon AWS IoT MQTT 컴포넌트가 사용자 지정 인증을 지원해요. 이 버전부터 모든 MQTT 프로토콜이 지원돼요.

  1. MQTT over WebSockets
  2. MQTT over TCP
  3. X.509 certificate authentication
  4. Signature V4 authentication
  5. Custom Authentication

지원되는 프로토콜 

 아래 표는 AWS IoT 기기 엔드포인트가 지원하는 프로토콜과 사용하는 인증 방법 및 포트를 나열해요.

사용자 지정 인증 

AWS IoT Core를 사용하면 사용자 지정 인증자를 정의해서 직접 클라이언트 인증 및 권한 부여를 관리할 수 있어요. 이것은 AWS IoT Core가 기본적으로 지원하는 것 이외의 인증 메커니즘을 사용해야 할 때 유용해요. 예를 들어 현장에 있는 기존 기기를 AWS IoT Core로 마이그레이션하고 이 기기들이 사용자 지정 베어러 토큰 또는 MQTT 사용자 이름과 비밀번호로 인증하는 경우, 새 ID를 프로비저닝하지 않고도 AWS IoT Core로 마이그레이션할 수 있어요. AWS IoT Core가 지원하는 모든 통신 프로토콜에서 사용자 지정 인증을 사용할 수 있어요.

예시: MQTT 사용자 이름과 비밀번호로 인증하려는 경우

oIoT := TsgcIoTAmazon_MQTT_Client.Create(nil);
oIoT.MQTTAuthentication.Enabled := True;
oIoT.MQTTAuthentication.Username := 'user';
oIoT.MQTTAuthentication.Password := 'password';
oIoT.CustomAuthentication.Enabled := True;
oIoT.CustomAuthentication.WebSockets := True;
oIoT.CustomAuthentication.Parameters := '/mqtt';
oIoT.Active := True; 

예시: 베어러 토큰을 보내려는 경우

oIoT := TsgcIoTAmazon_MQTT_Client.Create(nil);
oIoT.CustomAuthentication.Enabled := True;
oIoT.CustomAuthentication.WebSockets := True;
oIoT.CustomAuthentication.Parameters := '/mqtt';
oIoT.CustomAuthentication.Headers.Text := 'Authorization: Bearer AbCdEf123456';
oIoT.Active := True; 

Delphi Amazon AWS IoT Client Component

Amazon AWS IoT MQTT 클라이언트 - 문서 확인, 샘플 다운로드 등을 제공해요. https://www.esegece.com/products/websockets/iot/aws-iot