向 Amazon ML 授予将预测输出到 Amazon S3 的权限 - Amazon Machine Learning

我们不再更新 Amazon Machine Learning 服务,也不再接受新用户使用该服务。本文档可供现有用户使用,但我们不会再对其进行更新。有关更多信息,请参阅什么是 Amazon Machine Learning

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

向 Amazon ML 授予将预测输出到 Amazon S3 的权限

要将批量预测操作的结果输出到 Amazon S3,您必须向 Amazon ML 授予输出位置的以下权限,该位置是作为“创建批量预测”操作的输入提供的:

  • GetObject对您的 S3 存储桶和前缀的权限。

  • PutObject对您的 S3 存储桶和前缀的权限。

  • PutObjectAcl在你的 S3 存储桶和前缀上。

    • Amazon ML 需要此权限才能确保在创建对象后能够向您的 AWS 账户授予预装 ACL bucket-owner-full-control 权限。

  • ListBucket对 S3 存储桶的权限。与其他操作不同,ListBucket必须授予存储桶范围的权限(而不是前缀)。不过,您可以使用 Condition 子句限定特定前缀的权限范围。

如果您使用 Amazon ML 控制台创建批量预测请求,这些权限可添加到您的存储桶。在您完成向导中的步骤时,系统将提示您确认是否要添加它们。

以下示例策略说明如何授予 Amazon ML 向示例位置 s3://examplebucket/exampleprefix 写入数据的权限,同时将ListBucket权限范围限定为 exampleprefix 输入路径,以及如何授予 Amazon ML 在输出前缀 ACLs 上设置 put 对象的权限:

{ "Version": "2008-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "machinelearning.amazonaws.com"}, "Action": [ "s3:GetObject", "s3:PutObject" ], "Resource": "arn:aws:s3:::examplebucket/exampleprefix/*" "Condition": { "StringEquals": { "aws:SourceAccount": "123456789012" } "ArnLike": { "aws:SourceArn": "arn:aws:machinelearning:us-east-1:123456789012:*" } } }, { "Effect": "Allow", "Principal": { "Service": "machinelearning.amazonaws.com"}, "Action": "s3:PutObjectAcl", "Resource": "arn:aws:s3:::examplebucket/exampleprefix/*", "Condition": { "StringEquals": { "s3:x-amz-acl":"bucket-owner-full-control" } "StringEquals": { "aws:SourceAccount": "123456789012" } "ArnLike": { "aws:SourceArn": "arn:aws:machinelearning:us-east-1:123456789012:*" } } }, { "Effect": "Allow", "Principal": {"Service": "machinelearning.amazonaws.com"}, "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::examplebucket", "Condition": { "StringLike": { "s3:prefix": "exampleprefix/*" } "StringEquals": { "aws:SourceAccount": "123456789012" } "ArnLike": { "aws:SourceArn": "arn:aws:machinelearning:us-east-1:123456789012:*" } } }] }

要将此策略应用到您的数据,您必须编辑与存储数据的 S3 存储桶关联的策略语句。

为 S3 存储桶编辑权限策略(使用旧控制台)
  1. 登录 AWS Management Console 并打开 Amazon S3 控制台,网址为https://console.aws.amazon.com/s3/

  2. 选择数据所在的存储桶的名称。

  3. 选择属性

  4. 选择编辑存储桶策略

  5. 如上所示输入策略,进行自定义以符合您的需求,然后选择保存

  6. 选择保存

为 S3 存储桶编辑权限策略(使用新控制台)
  1. 登录 AWS Management Console 并打开 Amazon S3 控制台,网址为https://console.aws.amazon.com/s3/

  2. 选择存储桶名称,然后选择权限

  3. 请选择存储桶策略

  4. 如上所示输入策略,进行自定义以符合您的需求。

  5. 选择保存