开发者控制台

步骤3: 针对目录引入设置您的AWS账户

步骤3: 针对目录引入设置您的AWS账户

目录引入使用亚马逊云科技 (AWS) 工具上传您的目录,并可管理有权访问用于存储您的目录的工具的用户。在上传目录文件之前,您需要设置自己的AWS账户并与您的亚马逊代表交换账户信息。

关于AWS存储桶

Fire TV代表将为您创建用于目录引入的AWS S3存储桶,并为您提供存储桶访问权限。由于亚马逊创建了S3存储桶,因此该存储桶不会出现在您的AWS S3控制台中。但是,您应该能够通过命令行界面 (CLI) 访问该存储桶,以查看存储桶内容以及将文件上传至该存储桶。接下来几节将提供用于与S3存储桶交互的命令。

程序概述

AWS账户设置是只需执行一次的流程,您需要先完成该流程,然后才能开始将目录文件上传至亚马逊。要设置和测试您的AWS账户,请执行以下操作:

  1. 登录或注册AWS账户。
  2. 将您的12位AWS账户ID(和IAM用户ID不同)发送给亚马逊代表。
  3. 从亚马逊代表处获取您应用的S3存储桶信息。
  4. 向Identity and Access Management (IAM) AWS用户授予您的S3目录存储桶的文件上传权限。
  5. 测试您的IAM用户策略。
  6. 设置AWS CLI。
  7. 通过AWS命令行界面 (CLI) 使用示例CDF文件测试目录上传,以验证您是否可以上传目录文件。

步骤A: 登录或注册AWS账户(仅限新AWS用户)

要将您的目录文件上传至我们在Amazon S3上的服务,您必须拥有亚马逊云科技 (AWS) 账户。如果您拥有AWS账户,请登录该账户。如果还没有AWS账户,则需要创建一个账户。

要创建AWS账户,请执行以下操作:

  1. 前往 https://aws.amazon.com/cn/
  2. 单击Sign in to the Console(登录控制台)按钮,转到登录屏幕。
  3. 键入您的电子邮件地址或手机号码。
  4. 选择I am a new user(我是新用户)选项。
  5. 单击Sign in using our secure server(使用我们的安全服务器登录)按钮。
  6. 按照提示创建账户。

步骤B: 将您的12位AWS账户ID发送给亚马逊代表

要让目录服务授予对亚马逊为您创建的S3目录存储桶的访问权限,请采用安全方法将您的12位AWS账户ID发送给亚马逊代表。

要查找您的AWS账户ID,请执行以下操作:

  • 对于账户所有者(根账户用户),AWS账户ID位于Security Credentials(安全凭证)页面上的Account Identifiers(账户标识符)选项卡下。

  • 对于IAM用户或联合用户,AWS账户ID显示在Support Center(支持中心)右上角。(如果您尚未设置IAM用户,下一节将介绍如何完成此项设置。请注意,您需要从亚马逊代表处获取S3存储桶的名称,以便为您的IAM用户设置安全策略。)

步骤C: 从亚马逊代表处获取您应用的S3存储桶信息

将您的AWS账户ID发送给亚马逊代表后,代表将向您发送一个S3存储桶名称。这是您的账户所独有的目录存储桶,只能由您的账户访问。任何其他目录集成合作伙伴都无法查看或访问您的S3目录存储桶。

步骤D: 向IAM AWS用户授予您的S3目录存储桶的文件上传权限

对Identity and Access Management (IAM) AWS用户进行配置,让其对所有S3存储桶或者至少对您的S3目录存储桶至少拥有“S3 PutObject”权限。此权限将允许该用户将文件上传至您的S3存储桶。

尽管您可以使用AWS根凭证访问Amazon S3和您的目录存储桶,但AWS最佳实践是创建单独的Identity and Access Management (IAM) 用户,并使用这些凭证与AWS进行交互。

例如,您可以创建一个IAM用户,该用户拥有完整的S3管理员访问权限,但不能访问其他AWS服务;也可以创建拥有有限访问权限的IAM用户,该用户只能上传目录数据,但不能访问账户的任何其他部分。在您的AWS账户中为组织中需要访问您的S3存储桶的每个人设置一个IAM用户。通过为不同组织成员设置单独的IAM用户,您可以仅为每个用户启用必要的权限。

创建新的IAM用户

要创建新的IAM用户,请执行以下操作:

  1. 登录AWS控制台
  2. Security, Identity & Compliance(安全、身份与合规)下,单击IAM以显示Welcome to Identity and Access Management(欢迎使用Identity and Access Management)页面。
  3. Security Status(安全状态)下,单击Create individual IAM users(创建单独的IAM用户)展开该菜单项,然后单击Manage Users(管理用户)以查看与您的AWS账户关联的IAM用户列表。
  4. 单击Add user(添加用户)以创建新用户。您将看到Add user details(添加用户详细信息)页面。
  5. User name(用户名)字段中,键入用户名。根据需要,通过单击Add another user(添加其他用户)来添加更多用户。
  6. Select AWS access type(选择AWS访问权限类型)部分中,同时选中Programmatic access(编程访问权限)和AWS Management Console access(AWS管理控制台访问权限)这两项对应的复选框。为了设置控制台访问权限,系统会要求您选择控制台密码和密码重置选项。
  7. 单击Next: Permissions(下一步:权限)(位于屏幕底部)。您将看到为用户Set permissions(设置权限)屏幕,其中包含多个权限选项。下一节向IAM用户授予您的Amazon S3存储桶的访问权限将介绍有关权限的更多详细信息。现在,只需单击Next: Review(下一步:审核)。

    如果审核成功,您将看到针对所创建用户的“Success”(成功)消息以及该用户的安全凭证。

  8. 复制该用户的访问密钥ID秘密访问密钥密码

    任何要访问目录集成S3存储桶的用户都需要该IAM用户的访问密钥。访问密钥包括访问密钥ID和秘密访问密钥。秘密访问密钥只能在创建IAM用户时获取,不过您随时可以生成新的秘密访问密钥。(在IAM Users(IAM用户)页面上的Security Credentials选项卡下可以找到访问密钥ID。)

  9. 单击Close(关闭)。然后按照下一节向IAM用户授予您的Amazon S3存储桶的访问权限操作,授予该用户相应的权限。

有关创建IAM用户的更多详细信息,请参阅身份管理概述: 用户

向IAM用户授予您的Amazon S3存储桶的访问权限

如果您还没有任何IAM用户,请先参阅上一节中的创建新的IAM用户。在本节中,您将向您的IAM用户授予您的S3存储桶的访问权限。开始执行此任务之前,您需要亚马逊代表提供的S3存储桶名称。

要向现有IAM用户授予您的Amazon S3存储桶的访问权限,请执行以下操作:

  1. 登录AWS控制台
  2. Security, Identity, & Compliance(安全、身份与合规)下,单击IAM
  3. 在左栏中,单击Users(用户)。
  4. 单击您想向其授予您的S3存储桶的访问权限的用户名。

    在用户的详细信息页面上,您可以通过Permissions(权限)选项卡为用户配置安全策略。常用的权限设置有两种:完全访问权限或有限访问权限。

  5. 选择您希望该用户拥有的访问权限:

    选项1: 完全访问权限

    如果您可以接受该用户拥有账户所有S3功能的完全访问权限,请应用“AmazonS3FullAccess”策略:

    1. Permissions选项卡上,单击Add permissions(添加权限)。
    2. 单击Attach existing policies directly(直接附加现有策略)框。
    3. Filter policies(筛选策略)框中,键入AmazonS3FullAccess以在策略列表中进行筛选,仅显示此策略。
    4. 选中AmazonS3FullAccess旁边的复选框,然后单击屏幕底部的Next: Review
    5. 您会看到将要为该用户附加的权限的摘要。单击Add permissions

    有关更多详细信息,请参阅AWS IAM文档中的添加和移除IAM策略(控制台)

    选项2: 有限访问权限

    要对该用户的访问权限加以限制,让其只能访问您的目录存储桶,请为您的存储桶设置新的自定义策略:

    1. Permissions选项卡上,单击+ Add inline policy(+添加内联策略)。
    2. 单击JSON选项卡。
    3. 执行以下操作之一:

      要允许在S3(但仅限S3)中执行所有操作,请将以下存储桶策略复制粘贴到编辑器中:

      {  
         "Version":"2012-10-17",
         "Statement":[  
            {  
               "Effect":"Allow",
               "Action":[  
                  "s3:*"
               ],
               "Resource":[  
                  "arn:aws:s3:::<您的存储桶名称>",
                  "arn:aws:s3:::<您的存储桶名称>/*"
               ]
            }
         ]
      }
      

      "Action", s3:*中,星号为通配符,用于授予所有Amazon S3操作的权限。

      要想仅允许对S3执行某些操作而不是所有操作,请将以下存储桶策略复制粘贴到编辑器中:

      {  
         "Version":"2012-10-17",
         "Statement":[  
            {  
               "Effect":"Allow",
               "Action":[  
                  "s3:ListBucket",
                  "s3:ListBucketVersions",
                  "s3:GetObject",
                  "s3:GetObjectVersion",
                  "s3:GetObjectAcl",
                  "s3:GetObject",
                  "s3:GetObjectVersion",
                  "s3:PutObject",
                  "s3:PutObjectAcl"
               ],
               "Resource":[  
                  "arn:aws:s3:::<您的存储桶名称>",
                  "arn:aws:s3:::<您的存储桶名称>/*"
               ]
            }
         ]
      }
      

      这里以更加细化的方式列出了允许的操作。要上传文件,实际上只需要两个操作:

      • s3:PutObject
      • s3:PutObjectAcl

      您可以添加其他操作,但这些操作不是上传目录文件所必需的。有关权限的更多详细信息,请参阅在策略中指定权限。有关Resource属性中语法的更多详细信息,请参阅在策略中指定资源

    4. 用您的S3存储桶的实际名称替换your-bucket-name占位符。
    5. 单击Review policy(查看策略)。

      您将看到一条状态消息,要么告诉您该策略有效,要么是一条错误消息,其中包含了策略问题修复说明。

    6. Name(名称)字段中,键入策略的唯一名称。此名称由您任意选择(不允许使用空格)。
    7. 单击Create policy(创建策略)。将该策略附加到该用户。

步骤E: 测试您的IAM用户策略

为确保您正确设置了IAM用户及其安全策略,可以使用AWS的Policy Simulator工具。要使用Policy Simulator对策略进行验证,请执行以下操作:

  1. 在网页浏览器中,导航到Policy Simulator
  2. 在左侧窗格中,选择要对其策略进行验证的用户。
  3. 在右侧窗格中,从Select Service(选择服务)下拉列表中选择S3
  4. Select action(选择操作)下拉列表中,选择PutObject
  5. 单击Service(服务)列中Amazon S3条目左侧的切换箭头,展开模拟设置。
  6. arn:aws:s3:::<存储桶名称>/catalogs/*复制粘贴到ARN字段中,并将<存储桶名称>占位符替换为您的S3目录存储桶的名称。
  7. 单击Run Simulation(运行模拟)运行模拟。

如果该策略有效,则模拟器将显示“allowed”(已允许)消息;否则显示“denied”(已拒绝)消息并说明问题。

步骤F: 设置AWS命令行界面 (CLI)(或替代方案)

为了与Amazon S3和您的目录存储桶进行交互,可以使用任何可用的工具,包括:

对于您使用的任何S3访问工具,包括您自己的实现,都必须先使用您的IAM用户的访问密钥ID和秘密访问密钥进行配置。例如,要配置AWS CLI,请使用aws configure命令。以下示例展示了aws configure命令语法和CLI配置过程中出现的提示:

$ aws configure
AWS Access Key ID [None]: AAAAAAAAAAAAAEXAMPLE
AWS Secret Access Key [None]: aAaaaAAaaAAA/A1AAAAA/aAaAaaAAEXAMPLEKEY
Default region name [None]: us-west-2
Default output format [None]: json

有关配置AWS命令行界面的信息,请参阅配置AWS命令行界面

后续步骤

设置AWS权限后,进入步骤4: 上传您的目录文件