爬蟲程式的先決條件 - AWS Glue

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

爬蟲程式的先決條件

爬行者程式會假設您在定義 AWS Identity and Access Management (IAM) 角色時所指定的權限。此IAM角色必須具有從資料存放區擷取資料並寫入資料目錄的權限。主AWS Glue控台只會列出已為AWS Glue主體服務附加信任原則的IAM角色。您也可以透過主控台建立具有IAM政策的IAM角色,以存取爬蟲存取的 Amazon S3 資料存放區。如需為 AWS Glue 提供角色的詳細資訊,請參閱 Glue 的身分識別原則 AWS

注意

網路爬取 Delta Lake 資料儲存時,您必須擁有讀/寫 Amazon S3 位置的權限。

對於爬蟲程式,您可以建立角色並連接下列政策:

  • AWSGlueServiceRole AWS 管理的原則,授與資料目錄的必要權限

  • 授予資料來源許可的內嵌政策。

  • 授與角色iam:PassRole權限的內嵌政策。

更快的方法是讓 AWS Glue 主控台爬蟲程式精靈為您建立角色。它所建立的角色是專門針對爬行者程式,包含AWSGlueServiceRole AWS 受管理的原則以及指定資料來源所需的內嵌原則。

如果您指定爬蟲程式的現有角色,請確定它包含 AWSGlueServiceRole 政策或同等政策 (或此政策的範圍縮減版本),以及必要的內嵌政策。例如,對於 Amazon S3 資料存放區,內嵌政策至少需要如下:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::bucket/object*" ] } ] }

對於 Amazon DynamoDB 資料存放區,政策至少需要如下:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "dynamodb:DescribeTable", "dynamodb:Scan" ], "Resource": [ "arn:aws:dynamodb:region:account-id:table/table-name*" ] } ] }

此外,如果爬蟲讀取 AWS Key Management Service (AWS KMS) 加密的 Amazon S3 資料,則該IAM角色必須具有 AWS KMS 金鑰的解密權限。如需詳細資訊,請參閱步驟 2:建立IAM角色 AWS Glue