我正在嘗試建立 Amazon SageMaker 功能群組,但收到 "AccessDenied" (存取遭拒) 錯誤。
簡短說明
SageMaker "AccessDenied" (存取遭拒) 錯誤表示 AWS Identity and Access Management (IAM) 角色沒有足夠的許可來執行 Create Feature Group (建立功能群組) 操作。當執行角色許可遺失或設定錯誤時,您可能會遇到 "AccessDenied" (存取遭拒) 錯誤:
- 缺少 AmazonSageMakerFeatureStoreAccess 政策和 Amazon Simple Storage Service (Amazon S3) 儲存貯體命名要求
- 缺少 LakeFormation 許可
- 缺少 AWS Key Management Service (KMS) 政策
- Amazon S3 儲存貯體政策
解決方案
**注意:**如果您在執行 AWS Command Line Interface (AWS CLI) 命令時收到錯誤,請確保您使用的是最新的 AWS CLI 版本。
若要在建立功能群組時檢視詳細的錯誤訊息,請從終端執行以下命令,並檢查 FailureReason (失敗原因):
$ aws sagemaker describe-feature-group --feature-group-name nameofthefeaturegroup
缺少 AmazonSageMakerfeatureStoreAccess 政策和 Amazon S3 儲存貯體命名要求
您正在使用的執行角色可能缺少 Amazon 受管的 AmazonSageMakerFeatureStore 政策。檢閱附加至執行角色的政策。然後,如果缺少 AmazonSageMakerFeatureStoreAccess 政策,請附加該政策:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:PutObject",
"s3:GetBucketAcl",
"s3:PutObjectAcl"
],
"Resource": [
"arn:aws:s3:::*SageMaker*",
"arn:aws:s3:::*Sagemaker*",
"arn:aws:s3:::*sagemaker*"
]
}
]
}
即使在新增 AmazonSageMakerFeatureStoreAccess 後,功能群組的建立也可能會失敗。由於該政策是存放在 S3 儲存貯體中的 Amazon 受管政策,因此儲存貯體的名稱中必須有 "sagemaker" 一詞。
缺少 Lake Formation 許可
功能群組的建立可能會因為 AWS Lake Formation 許可不足而失敗。建立功能群組時,會自動建立 AWS Glue 資料庫。任何使用 SageMaker 建立的功能群組都會建立為此 AWS Glue 資料庫中的資料表。
確認所用的執行角色已獲得建立 AWS Glue 資料庫的許可。如果執行角色沒有許可,請執行以下操作:
**注意:**AWS Lake Formation 需要授權每個主體 (使用者或角色),才能對 Lake Formation 受管資源執行動作。
- 開啟 LakeFormation 主控台
- 在左側邊欄中,選擇 Permissions (許可),然後選擇 Data Permissions (資料許可)
- 選擇 Grant (授與)
- 從 principals (主體) 下拉式功能表中選擇 IAM execution role (IAM 執行角色),然後授與所需許可
如需有關授與資料庫許可的詳細資訊,請參閱 Granting permissions on a database or table shared with your account (授與您帳戶共用的資料庫或資料表的許可)。
缺少 AWS KMS 政策
由於缺少 AWS KMS 政策,CreateFeatureGroup API 呼叫可能會失敗。若要檢查,請檢閱執行角色的 IAM policies (IAM 政策),然後確認其附加了下列政策:
kms:GenerateDataKey
kms:Decrypt
kms: Encrypt
如果執行 CLI 命令後看不到上述政策,請附加這些政策,然後重試。
S3 儲存貯體政策
由於 Amazon S3 儲存貯體政策阻止存取儲存貯體,因此也可能發生 "AccessDenied" (存取遭拒) 錯誤。檢閱 S3 儲存貯體政策,然後檢查用於建立功能群組的執行角色是否具有儲存貯體的存取權。
相關資訊
授與與您帳戶共用的資料庫或資料表的許可
授與資源連結許可
使用儲存貯體政策