執行 AWS IoT Greengrass 資格套件的先決條件 - AWS IoT Greengrass

AWS IoT Greengrass Version 1 於 2023 年 6 月 30 日進入延長壽命階段。如需詳細資訊,請參閱 AWS IoT Greengrass V1 維護政策 。在此日期之後, AWS IoT Greengrass V1 不會發佈提供功能、增強功能、錯誤修正或安全修補程式的更新。在 上執行的裝置 AWS IoT Greengrass V1 不會中斷,並會繼續運作和連線至雲端。我們強烈建議您遷移至 AWS IoT Greengrass Version 2,這會新增重要的新功能,並支援其他平台

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

執行 AWS IoT Greengrass 資格套件的先決條件

本節說明使用 AWS IoT 裝置測試儀 (IDT) AWS IoT Greengrass 執行 AWS IoT Greengrass 資格套件的先決條件。

下載適用於 的最新版本 AWS IoT 裝置測試儀 AWS IoT Greengrass

下載最新版本的 ,IDT並將軟體擷取到檔案系統上具有讀取和寫入許可的位置。

注意

IDT 不支援由多個使用者從共用位置執行,例如NFS目錄或 Windows 網路共用資料夾。建議您將IDT套件擷取至本機磁碟機,並在本機工作站上執行IDT二進位檔案。

Windows 的路徑長度限制為 260 個字元。如果您使用的是 Windows,請將 擷取IDT至根目錄,例如 C:\ D:\,將您的路徑保持在 260 個字元的限制以內。

建立和設定 AWS 帳戶

您必須先執行下列步驟 AWS IoT Greengrass,才能IDT將 用於 :

  1. 建立 AWS 帳戶。如果您已有 AWS 帳戶,請跳至步驟 2。

  2. 設定 的許可IDT。

這些帳戶許可IDT允許代表您存取 AWS 服務和建立 AWS 資源,例如 AWS IoT 物件、Greengrass 群組和 Lambda 函數。

若要建立這些資源, IDT 的 AWS IoT Greengrass 會使用config.json檔案中設定的 AWS 憑證代表您API撥打電話。系統會在測試期間的不同時間點內佈建這些資源。

注意

雖然大多數測試都符合 Amazon Web Services 免費方案 的資格,但您必須在註冊 時提供信用卡 AWS 帳戶。如需詳細資訊,請參閱如果我的帳戶適用於免費方案,為何需要付款方式?

步驟 1:建立 AWS 帳戶

在此步驟中,建立和設定 AWS 帳戶。如果您已有 AWS 帳戶,請跳至 步驟 2:設定 的許可 IDT

註冊 AWS 帳戶

如果您沒有 AWS 帳戶,請完成下列步驟以建立 。

若要註冊 AWS 帳戶
  1. 開啟https://portal.aws.amazon.com/billing/註冊

  2. 請遵循線上指示進行。

    部分註冊程序需接收來電,並在電話鍵盤輸入驗證碼。

    當您註冊 時 AWS 帳戶,AWS 帳戶根使用者會建立 。根使用者有權存取該帳戶中的所有 AWS 服務 和資源。作為安全最佳實務,請將管理存取權指派給使用者,並且僅使用根使用者來執行需要根使用者存取權的任務

AWS 會在註冊程序完成後傳送確認電子郵件給您。您可以隨時前往 https://aws.amazon.com/ 並選擇我的帳戶 來檢視目前的帳戶活動和管理帳戶

建立具有管理存取權的使用者

註冊 後 AWS 帳戶,請保護您的 AWS 帳戶根使用者、啟用 AWS IAM Identity Center並建立管理使用者,這樣您就不會將根使用者用於日常任務。

保護您的 AWS 帳戶根使用者
  1. 選擇根使用者並輸入 AWS 帳戶 您的電子郵件地址,以帳戶擁有者AWS Management Console身分登入 。在下一頁中,輸入您的密碼。

    如需使用根使用者登入的說明,請參閱 AWS 登入 使用者指南中的以根使用者身分登入

  2. 為您的根使用者開啟多重要素驗證 (MFA)。

    如需指示,請參閱 IAM 使用者指南 中的為您的 AWS 帳戶 根使用者 (主控台) 啟用虛擬MFA裝置

建立具有管理存取權的使用者
  1. 啟用IAM身分中心。

    如需指示,請參閱 AWS IAM Identity Center 使用者指南中的啟用 AWS IAM Identity Center

  2. 在 IAM Identity Center 中,將管理存取權授予使用者。

    如需使用 IAM Identity Center 目錄 作為身分來源的教學課程,請參閱 AWS IAM Identity Center 使用者指南 中的使用 設定使用者存取權 IAM Identity Center 目錄

以具有管理存取權的使用者身分登入
  • 若要使用 IAM Identity Center 使用者登入,請使用您建立 IAM Identity Center 使用者時URL傳送到您電子郵件地址的登入。

    如需使用 IAM Identity Center 使用者登入的協助,請參閱 AWS 登入 使用者指南 中的登入 AWS 存取入口網站

指派存取權給其他使用者
  1. 在 IAM Identity Center 中,建立遵循套用最低權限許可最佳實務的許可集。

    如需指示,請參閱《AWS IAM Identity Center 使用者指南》中的建立許可集

  2. 將使用者指派至群組,然後對該群組指派單一登入存取權。

    如需指示,請參閱《AWS IAM Identity Center 使用者指南》中的新增群組

步驟 2:設定 的許可 IDT

在此步驟中,設定 IDT AWS IoT Greengrass 用於執行測試和收集IDT用量資料的許可。您可以使用 AWS Management Console 或 AWS Command Line Interface (AWS CLI) 來建立IAM政策和 的測試使用者IDT,然後將政策連接至使用者。如果您已為 建立測試使用者IDT,請跳至 配置您的裝置執行 IDT 測試可選:為 IDT 設定您的 Docker 容器AWS IoT Greengrass

設定 IDT(主控台) 的許可

請依照下列步驟,使用 主控台來設定 IDT的許可 AWS IoT Greengrass。

  1. 登入IAM主控台

  2. 建立客戶受管政策,該政策授與建立具有特定許可之角色的許可。

    1. 在導覽窗格中,選擇 Policies (政策),然後選擇 Create policy (建立政策)

    2. JSON索引標籤上,將預留位置內容取代為下列政策。

      { "Version": "2012-10-17", "Statement": [ { "Sid": "ManageRolePoliciesForIDTGreengrass", "Effect": "Allow", "Action": [ "iam:DetachRolePolicy", "iam:AttachRolePolicy" ], "Resource": [ "arn:aws:iam::*:role/idt-*", "arn:aws:iam::*:role/GreengrassServiceRole" ], "Condition": { "ArnEquals": { "iam:PolicyARN": [ "arn:aws:iam::aws:policy/service-role/AWSGreengrassResourceAccessRolePolicy", "arn:aws:iam::aws:policy/service-role/GreengrassOTAUpdateArtifactAccess", "arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" ] } } }, { "Sid": "ManageRolesForIDTGreengrass", "Effect": "Allow", "Action": [ "iam:CreateRole", "iam:DeleteRole", "iam:PassRole", "iam:GetRole" ], "Resource": [ "arn:aws:iam::*:role/idt-*", "arn:aws:iam::*:role/GreengrassServiceRole" ] } ] }
      重要

      下列政策授予許可,以建立和管理 IDT所需的角色 AWS IoT Greengrass。這包括連接下列 AWS 受管政策的許可:

    3. 選擇下一步:標籤

    4. 選擇下一步:檢閱

    5. 針對名稱,輸入 IDTGreengrassIAMPermissions。在 Summary (摘要) 下,檢閱您的政策所授與的許可。

    6. 選擇 建立政策

  3. 建立IAM使用者並連接 IDT 所需的許可 AWS IoT Greengrass。

    1. 建立 IAM 使用者。請遵循 使用者指南 中的建立IAM使用者 (主控台) 中的步驟 1 到 5。 IAM

    2. 將許可連接至您的IAM使用者:

      1. 設定許可頁面上,選擇直接連接現有政策。

      2. 搜尋您在上一個步驟中建立IDTGreengrassIAMPermissions的政策。選取核取方塊。

      3. 搜尋AWSIoTDeviceTesterForGreengrassFullAccess政策。選取核取方塊。

        注意

        AWSIoTDeviceTesterForGreengrassFullAccess 是 AWS 受管政策,定義建立和存取用於測試 AWS 的資源IDT所需的許可。如需詳細資訊,請參閱AWSAWS IoT 裝置測試儀的 受管政策

    3. 選擇下一步:標籤

    4. 選擇 Next: Review (下一步:檢閱) 以檢視選擇的摘要。

    5. 選擇 Create user (建立使用者)。

    6. 若要檢視使用者的存取金鑰 (存取金鑰IDs和秘密存取金鑰),請選擇密碼和存取金鑰旁的顯示。若要儲存存取金鑰,請選擇 Download.csv,並將檔案儲存到安全的位置。您稍後會使用此資訊來設定您的 AWS 憑證檔案。

  4. 下一步:設定您的實體裝置

 

設定 IDT(AWS CLI) 的許可

請依照下列步驟使用 AWS CLI 來設定 IDT的許可 AWS IoT Greengrass。如果您已在主控台中設定許可,請跳至配置您的裝置執行 IDT 測試可選:為 IDT 設定您的 Docker 容器AWS IoT Greengrass

  1. 如果尚未安裝 ,請在電腦上安裝和設定 AWS CLI 。請遵循 AWS Command Line Interface 使用者指南 中的安裝 AWS CLI 中的步驟。

    注意

    AWS CLI 是開放原始碼工具,可用來與 AWS 來自命令列 Shell 的服務互動。

  2. 建立客戶受管政策,授予管理 IDT和 AWS IoT Greengrass 角色的許可。

    Linux, macOS, or Unix
    aws iam create-policy --policy-name IDTGreengrassIAMPermissions --policy-document '{ "Version": "2012-10-17", "Statement": [ { "Sid": "ManageRolePoliciesForIDTGreengrass", "Effect": "Allow", "Action": [ "iam:DetachRolePolicy", "iam:AttachRolePolicy" ], "Resource": [ "arn:aws:iam::*:role/idt-*", "arn:aws:iam::*:role/GreengrassServiceRole" ], "Condition": { "ArnEquals": { "iam:PolicyARN": [ "arn:aws:iam::aws:policy/service-role/AWSGreengrassResourceAccessRolePolicy", "arn:aws:iam::aws:policy/service-role/GreengrassOTAUpdateArtifactAccess", "arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" ] } } }, { "Sid": "ManageRolesForIDTGreengrass", "Effect": "Allow", "Action": [ "iam:CreateRole", "iam:DeleteRole", "iam:PassRole", "iam:GetRole" ], "Resource": [ "arn:aws:iam::*:role/idt-*", "arn:aws:iam::*:role/GreengrassServiceRole" ] } ] }'
    Windows command prompt
    aws iam create-policy --policy-name IDTGreengrassIAMPermissions --policy-document '{\"Version\": \"2012-10-17\", \"Statement\": [{\"Sid\": \"ManageRolePoliciesForIDTGreengrass\",\"Effect\": \"Allow\",\"Action\": [\"iam:DetachRolePolicy\", \"iam:AttachRolePolicy\"], \"Resource\": [\"arn:aws:iam::*:role/idt-*\",\"arn:aws:iam::*:role/GreengrassServiceRole\"],\"Condition\": {\"ArnEquals\": {\"iam:PolicyARN\": [\"arn:aws:iam::aws:policy/service-role/AWSGreengrassResourceAccessRolePolicy\",\"arn:aws:iam::aws:policy/service-role/GreengrassOTAUpdateArtifactAccess\",\"arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole\"]}}},{\"Sid\": \"ManageRolesForIDTGreengrass\",\"Effect\": \"Allow\",\"Action\": [\"iam:CreateRole\",\"iam:DeleteRole\", \"iam:PassRole\", \"iam:GetRole\"],\"Resource\": [\"arn:aws:iam::*:role/idt-*\",\"arn:aws:iam::*:role/GreengrassServiceRole\"]}]}'
    注意

    此步驟包含 Windows JSON 命令提示字元範例,因為它使用與 Linux、macOS 或 Unix 終端機命令不同的語法。

  3. 建立IAM使用者並連接 IDT 所需的許可 AWS IoT Greengrass。

    1. 建立 IAM 使用者。在此範例設定中,使用者命名為 IDTGreengrassUser

      aws iam create-user --user-name IDTGreengrassUser
    2. 將您在步驟 2 中建立IDTGreengrassIAMPermissions的政策連接至您的IAM使用者。Replace (取代) <account-id> 在 命令中,使用 的 ID AWS 帳戶。

      aws iam attach-user-policy --user-name IDTGreengrassUser --policy-arn arn:aws:iam::<account-id>:policy/IDTGreengrassIAMPermissions
    3. AWSIoTDeviceTesterForGreengrassFullAccess政策連接至您的IAM使用者。

      aws iam attach-user-policy --user-name IDTGreengrassUser --policy-arn arn:aws:iam::aws:policy/AWSIoTDeviceTesterForGreengrassFullAccess
      注意

      AWSIoTDeviceTesterForGreengrassFullAccess 是 AWS 受管政策,定義建立和存取用於測試 AWS 的資源IDT所需的許可。如需詳細資訊,請參閱AWSAWS IoT 裝置測試儀的 受管政策

  4. 為使用者建立私密存取金鑰。

    aws iam create-access-key --user-name IDTGreengrassUser

    將輸出儲存在安全的位置。您稍後會使用此資訊來設定您的 AWS 憑證檔案。

  5. 下一步:設定您的實體裝置

AWSAWS IoT 裝置測試儀的 受管政策

AWSIoTDeviceTesterForGreengrassFullAccess 受管政策允許IDT執行操作並收集用量指標。此政策授予下列IDT許可:

  • iot-device-tester:CheckVersion。 檢查一組 AWS IoT Greengrass、測試套件和IDT版本是否相容。

  • iot-device-tester:DownloadTestSuite。 下載測試套件。

  • iot-device-tester:LatestIdt。 取得可供下載的IDT最新版本的相關資訊。

  • iot-device-tester:SendMetrics。 發佈有關測試IDT收集的使用資料。

  • iot-device-tester:SupportedVersion。 取得 支援的 AWS IoT Greengrass 和 測試套件版本清單IDT。此資訊會顯示在命令列視窗中。