与服务托管用户合作 - AWS Transfer Family

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

与服务托管用户合作

您可以将 Amazon S3 或 Amazon EFS 服务托管用户添加到您的服务器,具体取决于服务器的设置。有关更多信息,请参阅 配置SFTPFTPS、或FTP服务器端点

要以编程方式添加服务管理用户,请参阅示CreateUserAPI

注意

对于服务管理用户,逻辑目录条目的限制为 2,000 个。有关使用逻辑目录的信息,请参见使用逻辑目录简化您的 Transfer Family 目录结构

添加 Amazon S3 服务托管用户

注意

如果要配置跨账户 Amazon S3 存储桶,请按照知识中心文章中提到的步骤进行操作:如何将 AWS Transfer Family 服务器配置为使用其他 AWS 账户中的 Amazon 简单存储服务存储桶?

将 Amazon S3 服务托管用户添加至您的服务器
  1. 打开 AWS Transfer Family 控制台 https://console.aws.amazon.com/transfer/,然后从导航窗格中选择 “服务器”。

  2. 服务器页面上,选中您要将用户添加到的服务器复选框。

  3. 选择添加用户

  4. 用户配置部分的用户名中,输入用户名。此用户名长度最少为 3 个字符,最多为 100 个字符 您可以在用户名中使用以下字符:a–z、A-Z、0–9、下划线“_”、连字符“-”、句点“.”和“@”符号。用户名不能以连字符“-”、句点“.”或“@”符号开头。

  5. 对于访问权限,请选择您之前创建的提供对您的 Amazon S3 存储桶的访问权限的IAM角色。

    您使用IAM中的步骤创建了此角色创建IAM角色和策略。该IAM角色包括一项提供对您的 Amazon S3 存储桶的访问权限的IAM策略。它还包括另一个IAM策略中定义的与 AWS Transfer Family 服务的信任关系。如果您需要对用户进行精细的访问控制,请参阅使用AWS Transfer Family 和 Amazon S3 增强数据访问控制博客文章。

  6. (可选)对于策略,选择下列选项之一:

    • 现有策略

    • 从IAM以下选项中选择策略:允许您选择现有的会话策略。选择 View 可查看包含策略详细信息的JSON对象。

    • 基于主文件夹自动生成策略:为您生成会话策略。选择 View 可查看包含策略详细信息的JSON对象。

      注意

      如果选择基于主文件夹自动生成策略,请不要为此用户选择受限

    要了解有关会话策略的更多信息,请参阅 创建IAM角色和策略。要了解有关创建会话策略的更多信息,请参阅 为 Amazon S3 存储桶创建会话策略

  7. 对于主目录,选择用于存储要传输的数据的 Amazon S3 存储桶 AWS Transfer Family。输入用户在使用其客户端登录时转到的 home 目录的路径。

    如果您将此参数留空,则使用 Amazon S3 存储桶的 root 目录。在这种情况下,请确保您的IAM角色提供对此root目录的访问权限。

    注意

    我们建议您选择包含用户的用户名的目录路径,这使得您可以更高效地使用会话策略。会话策略将用户在 Amazon S3 存储桶中的访问权限限制为该用户的 home 目录。

  8. (可选)对于受限,选中该复选框,这样您的用户就无法访问该文件夹之外的任何内容,也看不到 Amazon S3 存储桶或文件夹名称。

    注意

    为用户分配主目录并限制用户访问该主目录应该足以锁定用户对指定文件夹的访问权限。如果您需要应用进一步的控制措施,请使用会话策略。

    如果您为此用户选择受限,则无法选择基于主文件夹自动生成策略,因为主文件夹不是为受限用户定义的值。

  9. 对于SSH公钥,请输入SSH密钥对的公SSH钥部分。

    您的密钥先由服务进行验证,然后才能添加新用户。

    注意

    有关如何生成SSH密钥对的说明,请参阅为服务托管用户生成SSH密钥

  10. (可选)对于,输入一个或多个标记作为键-值对,然后选择添加标记

  11. 选择 Add (添加) 可将您的新用户添加到所选服务器。

    新用户将出现在服务器详细信息页面的用户部分。

后续步骤 — 对于下一步,请继续前往 使用客户端通过服务器端点传输文件

添加 Amazon EFS 服务托管用户

Amazon EFS 使用便携式操作系统接口 (POSIX) 文件权限模型来表示文件所有权。

将 Amazon EFS 服务托管用户添加到您的服务器
  1. 打开 AWS Transfer Family 控制台 https://console.aws.amazon.com/transfer/,然后从导航窗格中选择 “服务器”。

  2. 服务器页面上,选择要向其添加用户的 Amazon EFS 服务器。

  3. 选择添加用户以显示添加用户页面。

  4. 用户配置部分中,使用以下设置。

    1. 用户名长度最少为 3 个字符,最多为 100 个字符。您可以在用户名中使用以下字符:a–z、A-Z、0–9、下划线“_”、连字符“-”、句点“.”和“@”符号。用户名不能以连字符“-”、句点“.”或“@”符号开头。

    2. 对于用户 ID组 ID,请注意以下几点:

      • 对于您创建的第一个用户,我们建议您为组 ID用户 ID 输入一个值 0。这将授予用户对 Amazon 的管理员权限EFS。

      • 对于其他用户,请输入用户的POSIX用户 ID 和群组 ID。IDs它们用于用户执行的所有 Amazon Elastic File System 操作。

      • 对于用户 ID组 ID,请勿使用任何前导零。例如,可以接受 12345,但不能接受 012345

    3. (可选)在辅助组中IDs,IDs为每个用户输入一个或多个附加POSIX组,用逗号分隔。

    4. 在 “访问权限” 中,选择符合以下IAM条件的角色:

      • 仅允许用户访问您希望他们访问的 Amazon EFS 资源(文件系统)。

      • 定义用户可以执行哪些文件系统操作和不能执行哪些文件系统操作。

      我们建议您使用具有挂载访问权限和读/写权限的 Amazon EFS 文件系统选择IAM角色。例如,以下两个 AWS 托管策略的组合虽然相当宽松,但可以为您的用户授予必要的权限:

      • AmazonElasticFileSystemClientFullAccess

      • AWSTransferConsoleFullAccess

      有关更多信息,请参阅 AWS Transfer Family 对 Amazon Elastic File System 的支持博客文章。

    5. 对于主目录,请执行以下操作:

      • 选择您要用来存储要传输的数据的 Amazon EFS 文件系统 AWS Transfer Family。

      • 决定是否将主目录设置为受限。将主目录设置为受限会产生以下影响:

        • Amazon EFS 用户无法访问该文件夹之外的任何文件或目录。

        • 亚马逊EFS用户看不到亚马逊EFS文件系统名称 (fs-xxxxxxx)。

          注意

          当您选择 “受限” 选项时,符号链接不会为亚马逊EFS用户解析。

      • (可选)输入您希望用户在使用客户端登录时进入的主目录路径。

        如果您未指定主目录,则使用您的 Amazon EFS 文件系统的根目录。在这种情况下,请确保您的IAM角色提供对此根目录的访问权限。

  5. 对于SSH公钥,请输入SSH密钥对的公SSH钥部分。

    您的密钥先由服务进行验证,然后才能添加新用户。

    注意

    有关如何生成SSH密钥对的说明,请参阅为服务托管用户生成SSH密钥

  6. (可选)为用户输入任何标签。对于,输入一个或多个标记作为键-值对,然后选择添加标记

  7. 选择 Add (添加) 可将您的新用户添加到所选服务器。

    新用户将出现在服务器详细信息页面的用户部分。

当你第一次访问 Transfer Famil SFTP y 服务器时,你可能会遇到以下问题:

  • 如果您运行 sftp 命令但提示符未出现,则可能会遇到以下消息:

    Couldn't canonicalize: Permission denied

    Need cwd

    在这种情况下,您必须增加用户角色的策略权限。您可以添加 AWS 托管策略,例如AmazonElasticFileSystemClientFullAccess

  • 如果您在sftp提示pwd时输入查看用户的主目录,则可能会看到以下消息,其中 USER-HOME-DIRECTORY 是SFTP用户的主目录:

    remote readdir("/USER-HOME-DIRECTORY"): No such file or directory

    在这种情况下,您应该能够导航到父目录 (cd ..),并创建用户的主目录 (mkdir username)。

后续步骤 — 对于下一步,请继续前往 使用客户端通过服务器端点传输文件

管理服务托管用户

在本节中,您可以找到有关如何查看用户列表、如何编辑用户详细信息以及如何添加SSH公钥的信息。

查找您的用户列表
  1. 打开 AWS Transfer Family 控制台,网址为https://console.aws.amazon.com/transfer/

  2. 从导航窗格中选择服务器以显示服务器页面。

  3. 选择服务器 ID 列中的标识符以查看服务器详细信息页面。

  4. 用户下,查看用户列表。

要查看或编辑用户详细信息
  1. 打开 AWS Transfer Family 控制台,网址为https://console.aws.amazon.com/transfer/

  2. 从导航窗格中选择服务器以显示服务器页面。

  3. 选择服务器 ID 列中的标识符以查看服务器详细信息页面。

  4. 用户下,选择一个用户名以查看用户详细信息页面。

    您可以通过选择编辑来更改该页面上的用户属性。

  5. 用户详细信息页面上,选择用户配置旁边的编辑

    该图显示了编辑用户配置的屏幕
  6. 编辑配置页面的访问权限中,选择您之前创建的提供对 Amazon S3 存储桶的访问权限的IAM角色。

    您使用IAM中的步骤创建了此角色创建IAM角色和策略。该IAM角色包括一项提供对您的 Amazon S3 存储桶的访问权限的IAM策略。它还包括另一个IAM策略中定义的与 AWS Transfer Family 服务的信任关系。

  7. (可选)对于策略,请选择以下选项之一:

    • 现有策略

    • 从中选择一个策略IAM以选择现有策略。选择 View 可查看包含策略详细信息的JSON对象。

    要了解有关会话策略的更多信息,请参阅 创建IAM角色和策略。要了解有关创建会话策略的更多信息,请参阅 为 Amazon S3 存储桶创建会话策略

  8. 对于主目录,选择用于存储要传输的数据的 Amazon S3 存储桶 AWS Transfer Family。输入用户在使用其客户端登录时转到的 home 目录的路径。

    如果您将此参数留空,则使用 Amazon S3 存储桶的 root 目录。在这种情况下,请确保您的IAM角色提供对此root目录的访问权限。

    注意

    我们建议您选择包含用户的用户名的目录路径,这使得您可以更高效地使用会话策略。会话策略将用户在 Amazon S3 存储桶中的访问权限限制为该用户的 home 目录。

  9. (可选)对于受限,选中该复选框,这样您的用户就无法访问该文件夹之外的任何内容,也看不到 Amazon S3 存储桶或文件夹名称。

    注意

    当为用户分配主目录并限制用户访问该主目录时,这应该足以锁定用户对指定文件夹的访问权限。当您需要应用进一步的控制措施,请使用会话策略。

  10. 选择 保存 以保存您的更改。

删除用户
  1. 打开 AWS Transfer Family 控制台,网址为https://console.aws.amazon.com/transfer/

  2. 从导航窗格中选择服务器以显示服务器页面。

  3. 选择服务器 ID 列中的标识符以查看服务器详细信息页面。

  4. 用户下,选择一个用户名以查看用户详细信息页面。

  5. 用户详细信息页面上,选择用户名右侧的删除

  6. 在显示的确认对话框中,输入单词 delete,然后选择删除以确认您要删除该用户。

将从用户列表中删除该用户。

为用户添加SSH公钥
  1. 打开 AWS Transfer Family 控制台,网址为https://console.aws.amazon.com/transfer/

  2. 在导航窗格中,选择服务器

  3. 选择服务器 ID 列中的标识符以查看服务器详细信息页面。

  4. 用户下,选择一个用户名以查看用户详细信息页面。

  5. 选择 “添加SSH公钥”,向用户添加新的SSH公钥。

    注意

    SSH密钥仅由启用了 Secure Shell (SSH) 文件传输协议 (SFTP) 的服务器使用。有关如何生成SSH密钥对的信息,请参见为服务托管用户生成SSH密钥

  6. 对于SSH公钥,请输入密钥对的SSH公SSH钥部分。

    您的密钥先由服务进行验证,然后才能添加新用户。SSH密钥的格式为ssh-rsa string。要生成密SSH钥对,请参阅为服务托管用户生成SSH密钥

  7. 选择添加密钥

删除用户的SSH公钥
  1. 打开 AWS Transfer Family 控制台,网址为https://console.aws.amazon.com/transfer/

  2. 在导航窗格中,选择服务器

  3. 选择服务器 ID 列中的标识符以查看服务器详细信息页面。

  4. 用户下,选择一个用户名以查看用户详细信息页面。

  5. 要删除公钥,请选中其SSH密钥复选框并选择删除