AWS IoT 1-Click 的身分驗證與存取控制 - AWS IoT 1-Click

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

AWS IoT 1-Click 的身分驗證與存取控制

AWS IoT 1-Click 的存取需要登入資料。這些登入資料必須具備 AWS IoT 1-Click 專案或裝置等 AWS 資源的存取許可。下列各節提供如何使用 AWS Identity Access Management (IAM) 和 AWS IoT 1-Click 的詳細資訊,以協助您安全存取資源。

每項 AWS 資源均由某個 AWS 帳戶所持有,而建立或存取資源的許可則由許可政策管理。帳戶管理員可以將許可政策連接到 IAM 身分 (即使用者、群組與角色) 以及某些服務 (例如 AWS Lambda),也支援將許可政策連接到資源。授予許可時,管理員決定誰能取得這些許可、可存取哪些資源、以及他們想要在這些資源上允許的特定動作。

AWS IoT 1-Click 資源與操作

AWS IoT 1-Click 中的主資源是專案和裝置。在政策中,您使用 Amazon Resource Name (ARN) 來識別要套用政策的資源。這些資源都有與其相關的唯一 Amazon Resource Name (ARN),如下表所示。

資源類型 ARN 格式
裝置 arn:aws:iot1click:region:account-id:devices/device-id
Project arn:aws:iot1click:region:account-id:projects/project-name

AWS IoT 1-Click 實作 API,可搭配 AWS IoT 1-Click 資源使用。這些資源稱為在 IAM 中的動作。有關可用操作的清單,請參閱本主題尾端的表格。

AWS IoT 1-Click 使用以身分為基礎的政策 (IAM 政策)

本主題提供身分類型政策範例,示範帳戶管理員如何將許可政策連接至 IAM 身分 (即使用者、群組和角色),並藉此授予許可,以對 AWS IoT 1-Click 資源執行操作。

以下顯示許可政策範例。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot1click:CreateProject" ], "Resource": "*" } ] }

政策有一個陳述式-為授予 AWS IoT 1-Click 動作的許可 (iot1click:CreateProject) 在資源上使用應用程式的 Amazon Resource Name (ARN)。在這個案例中,ARN 指定萬用字元 (*) 來表示為任何資源授予許可。

如需顯示所有 AWS IoT 1-Click 操作與其適用資源的資料表,請參閱AWS IoT 1-Click 許可:動作、許可與資源參考

AWS IoT 1-Click 的 AWS 受管 (預先定義) 政策

Amazon Web Services 透過提供獨立的 IAM 政策來解決許多常用案例,這些政策由 AWS 所建立與管理。這些 AWS 受管政策會授予常用案例所需的許可,讓您免於調查所需的許可。如需詳細資訊,請參閱《IAM 使用者指南》中的 AWS Managed Policies (AWS 受管政策)。

您可以將下列 AWS 受管政策連接到自己帳戶中的使用者,而這些政策為 AWS IoT 1-Click 特定並依使用案例情況加以分組:

  • AWSIoT1ClickFullAccess:使用 AWS 管理主控台授予對 AWS IoT 1-Click 資源的完整存取許可。授予的許可包括管理裝置和專案的所有 AWS IoT 1-Click 動作。

  • AWSIoT1ClickReadOnlyAccess:使用 AWS 管理主控台授予對 AWS IoT 1-Click 資源的唯讀存取許可。該存取可讓使用者能夠列出 AWS IoT 1-Click 裝置和專案,並檢閱專案的組態。

注意

您可以透過登入 IAM 主控台 (https://console.aws.amazon.com/iam/) 並在該處搜尋特定政策名稱。

您也可以建立自己的自訂 IAM 政策,以允許 AWS IoT 1-Click 動作與資源的許可。您可以將這些自訂政策連接至需要這些許可的 IAM 使用者或群組。

AWS IoT 1-Click 許可:動作、許可與資源參考

當您在 AWS 雲端設定存取控制並撰寫可連接至 IAM 身分的許可政策 (以身分為基礎的政策) 時,可使用下表做為參考。該表格列有各項 AWS IoT 1-Click API 操作、您可以授與執行動作許可的相應動作,以及您可以授與許可的 AWS 資源。您在政策的 Action 欄位中指定動作,然後在政策的 Resource 欄位中指定資源值。

您可以在 AWS IoT 1-Click 政策中使用全 AWS 條件金鑰來表示條件。如需全 AWS 金鑰的完整清單,請參閱可用的金鑰中的IAM 使用者指南

注意

若要指定動作,請使用後接 API 操作名稱的 iot1click: 字首 (例如,iot1click:ListProjects)。

IoT 1-Click 操作

所需的許可 (API 動作)

資源
ListDevices iot1click:ListDevices *
DescribeDevice iot1click:DescribeDevice arn:aws:iot1click:region:account-id:devices/device-id
GetDeviceMethods iot1click:GetDeviceMethods arn:aws:iot1click:region:account-id:devices/device-id
UpdateDeviceState iot1click:UpdateDeviceState arn:aws:iot1click:region:account-id:devices/device-id
InvokeDeviceMethod iot1click:InvokeDeviceMethod arn:aws:iot1click:region:account-id:devices/device-id
ListDeviceEvents iot1click:ListDeviceEvents arn:aws:iot1click:region:account-id:devices/device-id
InitializeDeviceClaim iot1click:InitializeDeviceClaim arn:aws:iot1click:region:account-id:devices/device-id
FinalizeDeviceClaim iot1click:FinalizeDeviceClaim arn:aws:iot1click:region:account-id:devices/device-id
UnclaimDevice iot1click:UnclaimDevice arn:aws:iot1click:region:account-id:devices/device-id
ClaimDeviceByClaimCode iot1click:ClaimDeviceByClaimCode *
CreateProject iot1click:CreateProject arn:aws:iot1click:region:account-id:projects/project-name
UpdateProject iot1click:UpdateProject arn:aws:iot1click:region:account-id:projects/project-name
DescribeProject iot1click:DescribeProject arn:aws:iot1click:region:account-id:projects/project-name
ListProjects iot1click:ListProjects *
DeleteProject iot1click:DeleteProject arn:aws:iot1click:region:account-id:projects/project-name
CreatePlacement iot1click:CreatePlacement arn:aws:iot1click:region:account-id:projects/project-name
UpdatePlacement iot1click:UpdatePlacement arn:aws:iot1click:region:account-id:projects/project-name
DescribePlacement iot1click:DescribePlacement arn:aws:iot1click:region:account-id:projects/project-name
ListPlacements iot1click:ListPlacements arn:aws:iot1click:region:account-id:projects/project-name
DeletePlacement iot1click:DeletePlacement arn:aws:iot1click:region:account-id:projects/project-name
AssociateDeviceWithPlacement iot1click:AssociateDeviceWithPlacement arn:aws:iot1click:region:account-id:projects/project-name
DissacociateDeviceFromPlacement iot1click:DissacociateDeviceFromPlacement arn:aws:iot1click:region:account-id:projects/project-name
GetDevicesInPlacement iot1click:GetDevicesInPlacement arn:aws:iot1click:region:account-id:projects/project-name