本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
建立和管理 的服務角色 AWS IoT TwinMaker
AWS IoT TwinMaker 要求您使用服務角色,以允許它代表您存取其他服務中的資源。此角色必須與 建立信任關係 AWS IoT TwinMaker。建立工作區時,您必須將此角色指派給工作區。本主題包含範例政策,說明如何設定常見案例的許可。
指派信任
下列政策會在您的角色與 之間建立信任關係 AWS IoT TwinMaker。將此信任關係指派給您用於工作區的角色。
Amazon S3 許可
下列政策可讓您的角色從 Amazon S3 儲存貯體讀取和刪除和寫入。Workspaces 會將資源存放在 Amazon S3 中,因此所有工作區都需要 Amazon S3 許可。
注意
當您建立工作區時, 會在 Amazon S3 儲存貯體中 AWS IoT TwinMaker 建立檔案,指出工作區正在使用該檔案。當您刪除工作區時,此政策會提供刪除該檔案的 AWS IoT TwinMaker 許可。
AWS IoT TwinMaker 會放置與您工作區相關的其他物件。刪除工作區時,您有責任刪除這些物件。
將許可指派給特定 Amazon S3 儲存貯體
在 AWS IoT TwinMaker 主控台中建立工作區時,您可以選擇讓 AWS IoT TwinMaker 為您建立 Amazon S3 儲存貯體。您可以使用下列 AWS CLI 命令找到此儲存貯體的相關資訊。
aws iottwinmaker get-workspace --workspace-id
workspace name
下列範例顯示此命令輸出的格式。
{ "arn": "arn:aws:iottwinmaker:
region
:account Id
:workspace/workspace name
", "creationDateTime": "2021-11-30T11:30:00.000000-08:00", "description": "", "role": "arn:aws:iam::account Id
:role/service role name
", "s3Location": "arn:aws:s3:::bucket name
", "updateDateTime": "2021-11-30T11:30:00.000000-08:00", "workspaceId": "workspace name
" }
若要更新您的政策以指派特定 Amazon S3 儲存貯體的許可,請使用儲存貯體名稱
的值。
下列政策可讓您的角色從特定 Amazon S3 儲存貯體讀取和刪除和寫入。
內建連接器的許可
如果您的工作區使用內建連接器與其他 AWS 服務互動,您必須在此政策中包含這些服務的許可。如果您使用 com.amazon.iotsitewise.connector 元件類型,則必須包含 的許可 AWS IoT SiteWise。如需元件類型的詳細資訊,請參閱 使用和建立元件類型。
注意
如果您使用自訂元件類型與其他 AWS 服務互動,您必須授予角色許可,才能執行在元件類型中實作 函數的 Lambda 函數。如需詳細資訊,請參閱連接器到外部資料來源的許可。
下列範例示範如何將 包含在政策 AWS IoT SiteWise 中。
如果您使用 com.amazon.iotsitewise.connector 元件類型,且需要從中讀取屬性資料 AWS IoT SiteWise,則必須在政策中包含下列許可。
... { "Action": [ "iotsitewise:GetPropertyValueHistory", ], "Resource": [ "
AWS IoT SiteWise asset resource ARN
" ], "Effect": "Allow" }, ...
如果您使用 com.amazon.iotsitewise.connector 元件類型且需要寫入屬性資料 AWS IoT SiteWise,則必須在政策中包含下列許可。
... { "Action": [ "iotsitewise:BatchPutPropertyValues", ], "Resource": [ "
AWS IoT SiteWise asset resource ARN
" ], "Effect": "Allow" }, ...
如果您使用 com.amazon.iotsitewise.connector.edgevideo 元件類型,您必須包含 AWS IoT SiteWise 和 Kinesis Video Streams 的許可。下列範例政策示範如何在政策中包含 AWS IoT SiteWise 和 Kinesis Video Streams 許可。
... { "Action": [ "iotsitewise:DescribeAsset", "iotsitewise:GetAssetPropertyValue" ], "Resource": [ "
AWS IoT SiteWise asset resource ARN for the Edge Connector for Kinesis Video Streams
" ], "Effect": "Allow" }, { "Action": [ "iotsitewise:DescribeAssetModel" ], "Resource": [ "AWS IoT SiteWise model resource ARN for the Edge Connector for Kinesis Video Streams
" ], "Effect": "Allow" }, { "Action": [ "kinesisvideo:DescribeStream" ], "Resource": [ "Kinesis Video Streams stream ARN
" ], "Effect": "Allow" }, ...
連接器到外部資料來源的許可
如果您建立的元件類型使用連接到外部資料來源的 函數,您必須授予您的服務角色許可,才能使用實作該函數的 Lambda 函數。如需建立元件類型和函數的詳細資訊,請參閱 使用和建立元件類型。
下列範例為您的服務角色提供使用 Lambda 函數的許可。
如需使用 IAM 主控台 AWS CLI、 和 IAM API 來建立角色、指派政策和信任關係的詳細資訊,請參閱建立角色以將許可委派給 AWS 服務。
修改工作區 IAM 角色以使用 Athena 資料連接器
若要使用 AWS IoT TwinMaker Athena 表格式資料連接器,您必須更新您的 AWS IoT TwinMaker 工作區 IAM 角色。將下列許可新增至工作區 IAM 角色:
注意
此 IAM 變更僅適用於與 AWS Glue 和 Amazon S3 一起存放的 Athena 表格式資料。若要將 Athena 與其他資料來源搭配使用,您必須為 Athena 設定 IAM 角色,請參閱 Athena 中的 Identity and Access Management。
{ "Effect": "Allow", "Action": [ "athena:GetQueryExecution", "athena:GetQueryResults", "athena:GetTableMetadata", "athena:GetWorkGroup", "athena:StartQueryExecution", "athena:StopQueryExecution" ], "Resource": [ "
athena resouces arn
" ] },// Athena permission { "Effect": "Allow", "Action": [ "glue:GetTable", "glue:GetTables", "glue:GetDatabase", "glue:GetDatabases" ], "Resource": [ "glue resouces arn
" ] },// This is an example for accessing aws glue { "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetObject" ], "Resource": [ "Amazon S3 data source bucket resources arn
" ] }, // S3 bucket for storing the tabular data. { "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket", "s3:ListBucketMultipartUploads", "s3:ListMultipartUploadParts", "s3:AbortMultipartUpload", "s3:CreateBucket", "s3:PutObject", "s3:PutBucketPublicAccessBlock" ], "Resource": [ "S3 query result bucket resources arn
" ] } // Storing the query results
如需 Athena IAM 組態的詳細資訊,請參閱 Athena 中的 Identity and Access Management。