本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
爬蟲程式的先決條件
爬行者程式會假設您在定義 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。