설정 - AWS IoT Core

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

설정

Device Advisor를 처음 사용하는 경우, 먼저 다음 작업을 완료해야 합니다.

IoT 사물 생성

먼저 IoT 사물을 생성하고 이 사물에 인증서를 첨부합니다. 사물을 생성하는 방법에 대한 자습서는 사물 객체 생성을 참조하세요.

디바이스 역할로 사용할 IAM 역할 생성

참고

Device Advisor 콘솔을 사용하여 디바이스 역할을 빠르게 생성할 수 있습니다. Device Advisor 콘솔을 사용하여 디바이스 역할을 설정하는 방법은 콘솔에서 Device Advisor 시작하기를 참조하세요.

  1. AWS Identity and Access Management 콘솔로 이동하여 디바이스 어드바이저 테스트에 사용하는 서버에 로그인합니다. AWS 계정

  2. 왼쪽 탐색 창에서 정책(Policies)을 선택합니다.

  3. 정책 생성(Create policy)을 선택합니다.

  4. 정책 생성(Create policy)에서 다음을 수행합니다.

    1. 서비스(Service)에서 IoT를 선택합니다.

    2. 작업에서 다음 작업 중 하나를 수행합니다.

      • (권장) 이전 섹션에서 생성한 IoT 사물 또는 인증서에 첨부된 정책을 기반으로 작업을 선택합니다.

      • 필터 작업 상자에서 다음 작업을 검색하고 선택합니다.

        • Connect

        • Publish

        • Subscribe

        • Receive

        • RetainPublish

    3. 리소스에서 클라이언트, 주제 및 주제 리소스를 제한합니다. 이러한 리소스를 제한하는 것은 보안 모범 사례입니다. 리소스를 제한하려면 다음 작업을 수행하세요.

      1. CONNECT 작업에 대한 클라이언트 리소스 ARN 지정(Specify client resource ARN for the Connect action)을 선택합니다.

      2. ARN 추가를 선택하고 다음 중 하나를 수행합니다.

        참고

        clientId는 디바이스가 Device Advisor와 상호 작용하기 위해 사용하는 MQTT 클라이언트 ID입니다.

        • 시각적 ARN 편집기에서 리전, accountID, clientID를 지정합니다.

        • 테스트 케이스를 실행하려는 IoT 주제의 Amazon 리소스 이름(ARN)을 수동으로 입력합니다.

      3. 추가를 선택합니다.

      4. 수신 및 1개 추가 작업에 대한 주제 리소스 ARN 지정을 선택합니다.

      5. ARN 추가를 선택하고 다음 중 하나를 수행합니다.

        참고

        주제 이름은 디바이스가 메시지를 게시하는 대상 MQTT 주제입니다.

        • 시각적 ARN 편집기에서 리전, accountID, 주제 이름을 지정합니다.

        • 테스트 케이스를 실행하려는 IoT 주제의 ARN을 수동으로 입력합니다.

      6. 추가(Add)를 선택합니다.

      7. 구독 작업에 대한 topicFilter 리소스 ARN 지정을 선택합니다.

      8. ARN 추가를 선택하고 다음 중 하나를 수행합니다.

        참고

        주제 이름은 디바이스가 구독하는 MQTT 주제입니다.

        • 시각적 ARN 편집기에서 리전, accountID, 주제 이름을 지정합니다.

        • 테스트 케이스를 실행하려는 IoT 주제의 ARN을 수동으로 입력합니다.

      9. 추가를 선택합니다.

  5. 다음: 태그를 선택합니다.

  6. 다음: 검토를 선택합니다.

  7. 정책 검토에 정책의 이름을 입력합니다.

  8. 정책 생성을 선택합니다.

  9. 왼쪽 탐색 창에서 역할을 선택합니다.

  10. 역할 생성을 선택합니다.

  11. 신뢰할 수 있는 엔터티 선택에서 사용자 지정 신뢰 정책을 선택합니다.

  12. 사용자 지정 신뢰 정책 상자에 다음 신뢰 정책을 입력합니다. 혼동된 대리자 문제를 방지하기 위하여 전역 조건 컨텍스트 키 aws:SourceArnaws:SourceAccount를 정책에 추가합니다.

    중요

    aws:SourceArnformat: arn:aws:iotdeviceadvisor:region:account-id:*.를 준수해야 합니다. region이 AWS IoT 리전과 일치하고 account-id가 고객 계정 ID와 일치해야 합니다. 자세한 설명은 교차 서비스 혼동된 대리자 예방을 참조하세요.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAwsIoTCoreDeviceAdvisor", "Effect": "Allow", "Principal": { "Service": "iotdeviceadvisor.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333" }, "ArnLike": { "aws:SourceArn": "arn:aws:iotdeviceadvisor:*:111122223333:suitedefinition/*" } } } ] }
  13. 다음을 선택합니다.

  14. 4단계에서 생성한 정책을 선택합니다.

  15. (선택 사항) 권한 경계 설정에서 권한 경계를 사용하여 최대 역할 권한 제어를 선택한 후 방금 생성한 정책을 선택합니다.

  16. 다음을 선택합니다.

  17. 역할 이름역할 설명을 입력합니다.

  18. 역할 생성을 선택합니다.

IAM 사용자가 Device Advisor를 사용할 수 있도록 사용자 정의 관리형 정책 생성

  1. https://console.aws.amazon.com/iam/에서 IAM 콘솔로 이동합니다. 메시지가 표시되면 AWS 자격 증명을 입력하여 로그인합니다.

  2. 왼쪽 탐색 창에서 정책을 선택합니다.

  3. 정책 생성을 선택한 후 JSON 탭을 선택합니다.

  4. Device Advisor를 사용하는 데 필요한 권한을 추가합니다. 정책 문서는 보안 모범 사례 주제에서 찾을 수 있습니다.

  5. 정책 검토를 선택합니다.

  6. 이름설명을 입력합니다.

  7. 정책 생성을 선택하세요.

Device Advisor를 사용할 IAM 사용자 생성

참고

Device Advisor 테스트를 실행할 때 사용할 IAM 사용자를 생성하는 것이 좋습니다. 관리자 사용자로부터 Device Advisor 테스트를 실행하면 보안 위험이 발생할 수 있으므로 권장하지 않습니다.

  1. IAM 콘솔(https://console.aws.amazon.com/iam/)로 이동합니다. 메시지가 표시되면 AWS 자격 증명을 입력하여 로그인합니다.

  2. 왼쪽 탐색 창에서 사용자를 선택합니다.

  3. 사용자 추가를 선택합니다.

  4. 사용자 이름을 입력합니다.

  5. AWS 외부 사용자와 상호 작용하려는 사용자는 프로그래밍 방식의 액세스가 필요합니다. AWS Management Console프로그래밍 방식의 액세스 권한을 부여하는 방법은 액세스하는 사용자 유형에 따라 다릅니다. AWS

    사용자에게 프로그래밍 방식 액세스 권한을 부여하려면 다음 옵션 중 하나를 선택합니다.

    프로그래밍 방식 액세스가 필요한 사용자는 누구인가요? 액세스 권한을 부여 받을 사용자 액세스 권한을 부여하는 사용자

    작업 인력 ID

    (IAM 자격 증명 센터에서 관리되는 사용자)

    임시 자격 증명을 사용하여 AWS CLI, AWS SDK 또는 API에 대한 프로그래밍 요청에 서명할 수 있습니다. AWS

    사용하고자 하는 인터페이스에 대한 지침을 따릅니다.

    IAM 임시 자격 증명을 사용하여 AWS CLI, AWS SDK 또는 API에 대한 프로그래밍 방식 요청에 서명할 수 있습니다. AWS IAM 사용 설명서의 AWS 리소스와 함께 임시 자격 증명 사용의 지침을 따르십시오.
    IAM

    (권장되지 않음)

    장기 자격 증명을 사용하여 AWS CLI, AWS SDK 또는 API에 대한 프로그래밍 요청에 서명할 수 있습니다. AWS

    사용하고자 하는 인터페이스에 대한 지침을 따릅니다.

  6. 다음: 권한을 선택합니다.

  7. 액세스 권한을 제공하려면 사용자, 그룹 또는 역할에 권한을 추가하세요:

    • 내 사용자 및 그룹: AWS IAM Identity Center

      권한 세트를 생성합니다. AWS IAM Identity Center 사용자 가이드권한 세트 생성의 지침을 따르십시오.

    • ID 제공자를 통해 IAM에서 관리되는 사용자:

      ID 연합을 위한 역할을 생성합니다. IAM 사용자 가이드제3자 ID 제공자를 위한 역할 만들기(연합)의 지침을 따르십시오.

    • IAM 사용자:

      • 사용자가 맡을 수 있는 역할을 생성합니다. IAM 사용자 가이드에서 IAM 사용자의 역할 생성의 지침을 따르십시오.

      • (권장되지 않음)정책을 사용자에게 직접 연결하거나 사용자를 사용자 그룹에 추가합니다. IAM 사용자 가이드에서 사용자(콘솔)에 권한 추가의 지침을 따르십시오.

  8. 생성한 사용자 지정 관리형 정책의 이름을 검색 상자에 입력합니다. 그런 다음 정책 이름 확인란을 선택합니다.

  9. 다음: 태그를 선택합니다.

  10. 다음: 검토를 선택합니다.

  11. 사용자 생성을 선택합니다.

  12. 닫기를 선택합니다.

Device Advisor를 사용하려면 사용자를 대신하여 AWS 리소스 (사물, 인증서 및 엔드포인트) 에 액세스할 수 있어야 합니다. IAM 사용자에게 필요한 권한이 있어야 합니다. 또한 Device Advisor는 필요한 권한 정책을 IAM 사용자에게 연결하는 CloudWatch 경우 Amazon에 로그를 게시합니다.

디바이스 구성

Device Advisor에서는 SNI(서버 이름 표시) TLS 확장을 사용하여 TLS 구성을 적용합니다. 디바이스는 Device Advisor 테스트 엔드포인트와 동일한 서버 이름을 연결하고 전달할 때 이 확장을 사용해야 합니다.

Device Advisor는 테스트가 Running 상태일 때 TLS 연결을 허용합니다. 각 테스트 실행 전후에는 TLS 연결을 거부합니다. 이러한 이유로 Device Advisor에서 완전히 자동화된 테스트 경험을 위해 디바이스 연결 재시도 메커니즘을 사용할 것을 권장합니다. TLS 연결, MQTT 연결 및 MQTT 게시와 같이 둘 이상의 테스트 케이스가 포함된 테스트 제품군을 실행할 수 있습니다. 테스트 케이스 여러 개를 실행하는 경우 디바이스가 5초마다 테스트 엔드포인트에 연결을 시도하도록 하는 것이 좋습니다. 그런 다음 여러 테스트 케이스를 순서대로 실행하도록 자동화할 수 있습니다.

참고

디바이스 소프트웨어를 테스트할 수 있도록 준비하려면 AWS IoT Core에 연결할 수 있는 SDK를 사용하는 것이 좋습니다. 그런 다음 AWS 계정에 제공된 Device Advisor 테스트 엔드포인트로 SDK를 업데이트해야 합니다.

Device Advisor는 계정 수준 엔드포인트와 디바이스 수준 엔드포인트라는 두 가지 유형의 엔드포인트를 지원합니다. 사용 사례에 가장 적합한 엔드포인트를 선택합니다. 서로 다른 디바이스에 대해 여러 테스트 제품군을 동시에 실행하려면 디바이스 수준 엔드포인트를 사용합니다.

다음 명령을 실행하여 디바이스 수준 엔드포인트를 가져옵니다.

X.509 클라이언트 인증서를 사용하는 MQTT 고객의 경우:

aws iotdeviceadvisor get-endpoint --thing-arn your-thing-arn

또는

aws iotdeviceadvisor get-endpoint --certificate-arn your-certificate-arn

서명 버전 4를 사용하는 MQTT 이상의 WebSocket 고객의 경우:

aws iotdeviceadvisor get-endpoint --device-role-arn your-device-role-arn --authentication-method SignatureVersion4

한 번에 하나의 테스트 제품군을 실행하려면 계정 수준 엔드포인트를 선택합니다. 다음 명령을 실행하여 계정 수준 엔드포인트를 가져옵니다.

aws iotdeviceadvisor get-endpoint