使用服務角色 AWS IoT SiteWise Monitor - AWS IoT SiteWise

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

使用服務角色 AWS IoT SiteWise Monitor

服務角色是服務擔任的 IAM 角色,可代您執行動作。IAM 管理員可以從 IAM 內建立、修改和刪除服務角色。如需詳細資訊,請參閱《IAM 使用者指南》中的建立角色以委派許可給 AWS 服務服務

若要允許同盟 SiteWise 監控入口網站使用者存取您的 AWS IoT SiteWise和 AWS IAM Identity Center資源,您必須將服務角色附加至您建立的每個入口網站。服務角色必須將 SiteWise Monitor 指定為受信任的實體,並包含受AWSIoTSiteWiseMonitorPortalAccess管理的原則或定義對等權限。此政策由 SiteWise 監控用於存取您 AWS 和 IAM 身分中心資源的一組許可, AWS IoT SiteWise 並定義了一組許可。

建立 SiteWise 監控入口網站時,您必須選擇允許該入口網站的使用者存取您 AWS IoT SiteWise和 IAM 身分中心資源的角色。 AWS IoT SiteWise 控制台可以為您創建和配置角色。您可以稍後在 IAM 中編輯角色。如果您從角色移除必要的權限或刪除角色,入口網站使用者在使用其 SiteWise Monitor 入口網站時會發生問題。

注意

在 2020 年 4 月 29 日前建立的入口網站不需要服務角色。如果您在此日期前建立了入口網站,則必須連接服務角色才能繼續使用。若要這麼做,請導覽至AWS IoT SiteWise 主控台中的 [入口網站] 頁面,然後選擇 [移轉所有入口網站] 以使用 IAM 角色

下列各節說明如何在 AWS Management Console 或中建立及管理 SiteWise Monitor 服務角色 AWS Command Line Interface。

SiteWise 監視器的服務角色權限

建立入口網站時, AWS IoT SiteWise 可讓您建立名稱開頭為的角色AWSIoTSiteWiseMonitorServiceRole。此角色可讓聯合 SiteWise 監控使用者存取您的入口網站組態、資產、資產資料,以及 IAM 身分中心組態

該角色會信任下列服務來擔任此角色:

  • monitor.iotsitewise.amazonaws.com

角色使用下列權限原則 (其名稱開頭為) AWSIoTSiteWiseMonitorServicePortalPolicy,允許 SiteWise Monitor 使用者對帳戶中的資源完成動作。AWSIoTSiteWiseMonitorPortalAccess 受管理政策會定義對等許可。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iotsitewise:DescribePortal", "iotsitewise:CreateProject", "iotsitewise:DescribeProject", "iotsitewise:UpdateProject", "iotsitewise:DeleteProject", "iotsitewise:ListProjects", "iotsitewise:BatchAssociateProjectAssets", "iotsitewise:BatchDisassociateProjectAssets", "iotsitewise:ListProjectAssets", "iotsitewise:CreateDashboard", "iotsitewise:DescribeDashboard", "iotsitewise:UpdateDashboard", "iotsitewise:DeleteDashboard", "iotsitewise:ListDashboards", "iotsitewise:CreateAccessPolicy", "iotsitewise:DescribeAccessPolicy", "iotsitewise:UpdateAccessPolicy", "iotsitewise:DeleteAccessPolicy", "iotsitewise:ListAccessPolicies", "iotsitewise:DescribeAsset", "iotsitewise:ListAssets", "iotsitewise:ListAssociatedAssets", "iotsitewise:DescribeAssetProperty", "iotsitewise:GetAssetPropertyValue", "iotsitewise:GetAssetPropertyValueHistory", "iotsitewise:GetAssetPropertyAggregates", "iotsitewise:BatchPutAssetPropertyValue", "iotsitewise:ListAssetRelationships", "iotsitewise:DescribeAssetModel", "iotsitewise:ListAssetModels", "iotsitewise:UpdateAssetModel", "iotsitewise:UpdateAssetModelPropertyRouting", "sso-directory:DescribeUsers", "sso-directory:DescribeUser", "iotevents:DescribeAlarmModel", "iotevents:ListTagsForResource" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "iotevents:BatchAcknowledgeAlarm", "iotevents:BatchSnoozeAlarm", "iotevents:BatchEnableAlarm", "iotevents:BatchDisableAlarm" ], "Resource": "*", "Condition": { "Null": { "iotevents:keyValue": "false" } } }, { "Effect": "Allow", "Action": [ "iotevents:CreateAlarmModel", "iotevents:TagResource" ], "Resource": "*", "Condition": { "Null": { "aws:RequestTag/iotsitewisemonitor": "false" } } }, { "Effect": "Allow", "Action": [ "iotevents:UpdateAlarmModel", "iotevents:DeleteAlarmModel" ], "Resource": "*", "Condition": { "Null": { "aws:ResourceTag/iotsitewisemonitor": "false" } } }, { "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "*", "Condition": { "StringEquals": { "iam:PassedToService": [ "iotevents.amazonaws.com" ] } } } ] }

如需警示所需權限的詳細資訊,請參閱設定 AWS IoT Events 鬧鐘的權限

當入口網站使用者登入時, SiteWise Monitor 會根據服務角色與該使用者的存取原則交集來建立工作階段原則。存取政策會定義 身分對入口網站和專案的存取權層級。如需入口網站權限和存取原則的詳細資訊,請參閱管理您的 SiteWise 監視器入口網站CreateAccessPolicy

管理 SiteWise 監視服務角色 (主控台)

您可以使用主 AWS IoT SiteWise 控台輕鬆管理入口網站的 SiteWise Monitor 服務角色。在您建立入口網站時,主控台會檢查您是否擁有任何可連接至該入口網站的現有角色。如果未連接,主控台可以為您建立和設定服務角色。如需詳細資訊,請參閱 建立入口網站

尋找入口網站的服務角色 (主控台)

使用下列步驟來尋找附加至 SiteWise Monitor 入口網站的服務角色。

尋找入口網站的服務角色
  1. 導覽至 AWS IoT SiteWise 主控台

  2. 在左側導覽窗格中選擇 Portals (入口網站)

  3. 選擇您要尋找服務角色的入口網站。

    連接至入口網站的角色會顯示在 Permissions (許可)、[Service role (服務角色) 下方。

建立 SiteWise 監視服務角色 (AWS IoT SiteWise 主控台)

當您建立 SiteWise Monitor 入口網站時,您可以為入口網站建立服務角色。如需詳細資訊,請參閱 建立入口網站

您也可以在 AWS IoT SiteWise 主控台中為現有入口網站建立服務角色。這會取代入口網站現有的服務角色。

建立現有入口網站的服務角色
  1. 導覽至 AWS IoT SiteWise 主控台

  2. 在導覽窗格中,選擇 Portals (入口網站)

  3. 選擇您要建立新服務角色的入口網站。

  4. Portal details (入口網站詳細資訊) 底下,選擇 Edit (編輯)

  5. Permissions (許可) 下方,從清單中選擇 Create and use a new service role (建立並使用新的服務角色)

  6. 輸入您的新角色名稱。

  7. 選擇儲存

建立 SiteWise 監控服務角色 (IAM 主控台)

您可以從 IAM 主控台中的服務角色範本建立服務角色。此角色範本包含AWSIoTSiteWiseMonitorPortalAccess受管理的原則,並將 SiteWise Monitor 指定為信任的實體。

若要從入口網站服務角色範本建立服務角色
  1. 導覽至 IAM 主控台

  2. 在導覽窗格中,選擇 Roles (角色)。

  3. 選擇 Create Role (建立角色)。

  4. [選擇使用案例] 中,選擇 [IoT] SiteWise。

  5. [選取您的使用案例] 中,選擇IoT SiteWise Monitor - Portal

  6. 選擇 Next: Permissions (下一步:許可)

  7. 選擇 Next: Tags (下一步:標籤)

  8. 選擇下一步:檢閱

  9. 輸入新服務角色的「角色」名稱

  10. 選擇建立角色

變更入口網站的服務角色 (主控台)

請遵循下列程序,為入口網站選擇不同的 SiteWise 監視服務角色。

變更入口網站的服務角色
  1. 導覽至 AWS IoT SiteWise 主控台

  2. 在導覽窗格中,選擇 Portals (入口網站)

  3. 選擇您要變更服務角色的入口網站。

  4. Portal details (入口網站詳細資訊) 底下,選擇 Edit (編輯)

  5. Permissions (許可) 下方,選擇 Use an existing role (使用現有的角色)

  6. 選擇要連接至此入口網站的現有角色。

  7. 選擇儲存

管理 SiteWise 監視器服務角色 (CLI)

您可以使 AWS CLI 用下列入口網站服務角色管理工作:

尋找入口網站的服務角色 (CLI)

若要尋找附加至 SiteWise Monitor 入口網站的服務角色,請執行下列命令以列出目前區域中的所有入口網站。

aws iotsitewise list-portals

該操作會以下列格式傳回包含您入口網站摘要的回應。

{ "portalSummaries": [ { "id": "a1b2c3d4-5678-90ab-cdef-aaaaaEXAMPLE", "name": "WindFarmPortal", "description": "A portal that contains wind farm projects for Example Corp.", "roleArn": "arn:aws:iam::123456789012:role/service-role/role-name", "startUrl": "https://a1b2c3d4-5678-90ab-cdef-aaaaaEXAMPLE.app.iotsitewise.aws", "creationDate": "2020-02-04T23:01:52.90248068Z", "lastUpdateDate": "2020-02-04T23:01:52.90248078Z" } ] }

如果您知道入口網站的 ID,也可以使用此DescribePortal作業來尋找入口網站的角色。

建立 SiteWise 監視器服務角色 (CLI)

請使用下列步驟來建立新的 SiteWise Monitor 服務角色。

建立 SiteWise 監視服務角色
  1. 建立具有信任原則的角色,以允許 SiteWise Monitor 擔任該角色。此範例會根據儲存在 JSON 字串中的信任政策,建立名為 MySiteWiseMonitorPortalRole 的角色。

    Linux, macOS, or Unix
    aws iam create-role --role-name MySiteWiseMonitorPortalRole --assume-role-policy-document '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "monitor.iotsitewise.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }'
    Windows command prompt
    aws iam create-role --role-name MySiteWiseMonitorPortalRole --assume-role-policy-document "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Principal\":{\"Service\":\"monitor.iotsitewise.amazonaws.com\"},\"Action\":\"sts:AssumeRole\"}]}"
  2. 從輸出中的角色中繼資料,複製角色 ARN。建立入口網站時,您可使用此 ARN 將角色與入口網站建立關聯。如需建立入口網站的詳細資訊,請參閱 AWS IoT SiteWise API 參考資料CreatePortal中的。

  3. AWSIoTSiteWiseMonitorPortalAccess 政策附加至角色,或附加定義對等許可的政策。

    aws iam attach-role-policy --role-name MySiteWiseMonitorPortalRole --policy-arn arn:aws:iam::aws:policy/service-role/AWSIoTSiteWiseMonitorPortalAccess
將服務角色連接至現有入口網站
  1. 若要擷取入口網站的現有詳細資訊,請執行下列命令。將 portal-id 取代為入口網站的 ID。

    aws iotsitewise describe-portal --portal-id portal-id

    此操作會以下列格式傳回包含入口網站詳細資訊的回應。

    { "portalId": "a1b2c3d4-5678-90ab-cdef-aaaaaEXAMPLE", "portalArn": "arn:aws:iotsitewise:region:account-id:portal/a1b2c3d4-5678-90ab-cdef-aaaaaEXAMPLE", "portalName": "WindFarmPortal", "portalDescription": "A portal that contains wind farm projects for Example Corp.", "portalClientId": "E-1a2b3c4d5e6f_sn6tbqHVzLWVEXAMPLE", "portalStartUrl": "https://a1b2c3d4-5678-90ab-cdef-aaaaaEXAMPLE.app.iotsitewise.aws", "portalContactEmail": "support@example.com", "portalStatus": { "state": "ACTIVE" }, "portalCreationDate": "2020-04-29T23:01:52.90248068Z", "portalLastUpdateDate": "2020-04-29T00:28:26.103548287Z", "roleArn": "arn:aws:iam::123456789012:role/service-role/AWSIoTSiteWiseMonitorServiceRole_1aEXAMPLE" }
  2. 若要將服務角色連接至入口網站,請執行下列命令。將 role-arn 取代為服務角色 ARN,並以入口網站的現有值取代其餘參數。

    aws iotsitewise update-portal \ --portal-id portal-id \ --role-arn role-arn \ --portal-name portal-name \ --portal-description portal-description \ --portal-contact-email portal-contact-email

SiteWise 監控更新 AWSIoTSiteWiseMonitorServiceRole

您可以從此服務開始追蹤變更AWSIoTSiteWiseMonitorServiceRole的時間開始,檢視 for SiteWise Monitor 更新的詳細資訊。如需有關此頁面變更的自動警示,請訂閱「 AWS IoT SiteWise 文件歷史記錄」頁面上的 RSS 摘要。

變更 描述 日期

AWSIoTSiteWiseMonitorPortalAccess-更新的政策

AWS IoT SiteWise 更新了警示功能的AWSIoTSiteWiseMonitorPortalAccess受管理策略。

2021 年 5 月 27 日

AWS IoT SiteWise 開始追蹤變更

AWS IoT SiteWise 開始追蹤其服務角色的變更。

2020 年 12 月 15 日