AWS Cloud9 不再向新客户提供。 AWS Cloud9 的现有客户可以继续正常使用该服务。了解更多
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在中使用共享环境 AWS Cloud9
共享环境是邀请多个用户参与的 AWS Cloud9 开发环境。本主题提供有关在共享环境中共享环境 AWS Cloud9 以及如何参与共享环境的说明。
要邀请用户参加您拥有的环境,请按照其中一组过程操作。根据要邀请的用户类型进行选择。
如果您是与环境 AWS 账户 相同的用户,则应邀请与环境使用相同帐户的用户。
如果您是与环境 AWS 账户 相同的 AWS Cloud9 管理员,特别是 AWS 账户 root 用户、管理员用户或
AWSCloud9Administrator
附加了 AWS 托管策略的用户,则应亲自邀请管理 AWS Cloud9 员,参见邀请与环境同一个账户的用户,或者让 AWS Cloud9 管理员邀请自己(或同一个账户中的其他人 AWS 账户),参见让与环境同一个账户的 AWS Cloud9 管理员邀请自己或其他人。
共享环境使用案例
共享环境非常适合以下使用案例。
-
配对编程(也称为对等编程):这是指,两个用户在单个环境中一起处理相同的代码。在配对编程中,通常一个用户编写代码,同时另一个用户观察正在编写的代码。观察者为代码编写者提供即时输入和反馈。在完成项目期间,他们的位置经常发生变换。如果没有共享环境,结对编程人员团队通常坐在一台计算机前面。每次只有一个用户可以编写代码。在共享环境中,两个用户可以坐在自己的计算机前面。此外,他们可以同时编写代码,即使他们在不同的办公室工作也是如此。
-
计算机科学课程:当老师或助教要访问学生的环境时,这非常有用。这样做可以检查学生的家庭作业或实时解决其环境的问题。学生还可以与同学一起在单个环境中实时编写代码,以便共同完成共享家庭作业项目。即使他们可能位于不同的位置并使用不同的计算机操作系统和 Web 浏览器类型,他们也可以完成该任务。
-
任何其他情况 - 多个用户需要实时协作处理相同的代码。
关于环境成员访问角色
在共享环境或参与中的共享环境之前 AWS Cloud9,您应该了解共享环境的访问权限级别。我们将这些权限级别称为环境成员访问角色。
中的共享环境 AWS Cloud9 提供三种环境成员访问角色:所有者、读/写和只读。
-
拥有者拥有环境的完全控制权。每个环境有且仅有一个拥有者,其是环境创建者。拥有者可以执行以下操作。
-
添加、更改和删除环境的成员
-
打开、查看和编辑文件
-
运行代码
-
更改 环境设置
-
与其他成员聊天
-
删除现有的聊天消息
在中 AWS Cloud9 IDE,将显示具有读取+写入权限的环境所有者。
-
-
读取/写入成员可以执行以下操作。
-
打开、查看和编辑文件
-
运行代码
-
从内部更改各种环境设置 AWS Cloud9 IDE
-
与其他成员聊天
-
删除现有的聊天消息
在中 AWS Cloud9 IDE,显示具有读写权限的读 /写成员。
-
-
只读成员可以执行以下操作。
-
打开和查看文件
-
与其他成员聊天
-
删除现有的聊天消息
在中 AWS Cloud9 IDE,显示的只读成员具有只读访问权限。
-
用户必须满足以下任一条件,然后才能成为环境拥有者或成员。
-
用户是 AWS 账户 根用户。
-
用户是管理员用户。有关更多信息,请参阅《用户指南》中的创建您的第一个IAM管理员IAM用户和群组。
-
用户是属于IAM群组的用户、担任角色的用户或担任角色的联合用户,并且该群组或角色已关联 AWS 托管策略
AWSCloud9Administrator
或AWSCloud9User
(或AWSCloud9EnvironmentMember
仅限成员)。有关更多信息,请参阅 AWS 托管式(预定义)策略。-
要将上述托管策略之一附加到IAM组,您可以使用AWS Management Console或AWS 命令行界面 (AWS CLI),如以下过程所述。
-
您可以使用上述托管策略之一在中IAM创建角色供用户或联合用户代入。有关更多信息,请参阅《IAM用户指南》中的创建角色。要让用户或联合用户担任该角色,请参阅《IAM用户指南》的《使用IAM角色》中有关担任角色的内容。
-
使用控制台将的 AWS 托管策略附加 AWS Cloud9 到群组
以下过程概述了如何使用控制台将的 AWS 托管策略附加 AWS Cloud9 到群组。
-
如果您尚未登录 AWS Management Console,请登录。
对于此步骤,我们建议您在中使用IAM管理员级别的凭据登录。 AWS 账户如果您无法执行此操作,请咨询您的 AWS 账户 管理员。
-
打开控制IAM台。为此,请在控制台导航栏中选择 Services(服务)。然后选择IAM。
-
选择组。
-
选择组的名称。
-
在 Permissions(权限)选项卡中,在 Manged Policies(托管式策略)处,选择 Attach Policy(附加策略)。
-
在策略名称列表中,选中以下框之一。
-
AWSCloud9User(首选)或AWSCloud9Administrator使组中的每个用户都成为环境所有者
-
AWSCloud9EnvironmentMember使群组中的每位用户都只能成为成员
(如果在列表中看不到某个策略名称,请在搜索框中键入策略名称以显示该策略。)
-
-
选择附加策略。
使用将的 AWS 托管策略附加 AWS Cloud9 到群组 AWS CLI
注意
如果您使用的是AWS 托管临时证书,则不能使用中的终端会话 AWS Cloud9 IDE来运行本节中的部分或全部命令。为了解决 AWS 安全最佳实践, AWS 托管临时证书不允许运行某些命令。相反,您可以从单独安装的 AWS Command Line Interface (AWS CLI) 中运行这些命令。
运行IAMattach-group-policy
命令将的 AWS 托管策略附加 AWS Cloud9 到该组。指定策略的群组名称和 Amazon 资源名称 (ARN):
aws iam attach-group-policy --group-name MyGroup --policy-arn arn:aws:iam::aws:policy/POLICY_NAME
在上述命令中,将 MyGroup
替换为组的名称。POLICY_NAME
替换为以下 AWS 托管策略之一的名称。
-
AWSCloud9User
(首选)或AWSCloud9Administrator
以允许组中的每个用户成为环境拥有者 -
AWSCloud9EnvironmentMember
以允许组中的每个用户仅成为成员
邀请与环境位于相同账户中的用户
按照本节中的说明与同一账户中的用户共享您在自己中 AWS 账户 拥有的 AWS Cloud9 开发环境。
-
假设您要邀请的用户不是以下类型的用户之一。确保您要邀请的用户已经具有相应的环境成员访问角色。有关说明,请参阅关于环境成员访问角色。
-
AWS 账户 根用户。
-
管理员用户。
-
属于IAM群组的用户、担任角色的用户或担任角色的联合用户,并且该组或角色已
AWSCloud9Administrator
附加 AWS 托管策略。
-
-
打开您拥有并希望邀请用户加入的环境(如果尚未打开该环境)。
-
在的菜单栏中 AWS Cloud9 IDE,执行以下任一操作。
-
依次选择 Window (窗口)、Share (共享)。
-
选择 Share (共享)(位于 Preferences (首选项) 齿轮图标旁边)。
-
-
在 Share this environment (共享此环境) 对话框中,为 Invite Members (邀请成员) 键入以下各项之一。
-
要邀请IAM用户,请输入该用户的姓名。
-
要邀请 AWS 账户 根用户,请输入
arn:aws:iam::123456789012:root
。123456789012
用您的 AWS 账户 身份证替换。 -
要邀请具有代入角色的用户或具有代入角色的联合用户,请输入
arn:aws:sts::123456789012:assumed-role/MyAssumedRole/MyAssumedRoleSession
。123456789012
用您的 AWS 账户 ID 替换为代入的角色的名称。MyAssumedRole
将MyAssumedRoleSession
替换为代入角色的会话名称。
-
-
要使该用户成为只读成员,请选择 R。要使该用户成为读取/写入成员,请选择 RW。
-
选择邀请。
注意
如果您将此用户设为读/写成员,则会显示一个对话框,其中包含有关可能使您的 AWS 安全证书面临风险的信息。以下信息提供了有关该问题的更多背景信息。
您只应与信任的人员共享环境。
读/写成员可能能够使用您环境中的 AWS CLI AWS CloudShell、或 AWS SDK代码来代表您执行操作。 AWS 此外,如果您将永久 AWS 访问凭证存储在环境中,则该成员可能会复制这些凭证并在环境之外使用它们。
从您的环境中移除永久 AWS 访问凭证并改用临时 AWS 访问凭证并不能完全解决此问题。这能降低成员复制这些临时凭证并在环境外部使用的可能性(因为这些临时凭证仅在有限的时间内有效)。但是,临时证书仍然允许读/写成员代表您 AWS 从环境中执行操作。
-
与用户联系,并告诉他们可以打开并开始使用该环境。
让与环境同一个账号的 AWS Cloud9 管理员邀请自己或其他人
注意
如果您使用的是AWS 托管临时证书,则不能使用中的终端会话 AWS Cloud9 IDE来运行本节中的部分或全部命令。为了解决 AWS 安全最佳实践, AWS 托管临时证书不允许运行某些命令。相反,您可以从单独安装的 AWS Command Line Interface (AWS CLI) 中运行这些命令。
以下类型的用户可以邀请其自己(或相同 AWS 账户中的其他用户)加入相同账户中的任何环境。
-
AWS 账户 根用户。
-
管理员用户。
-
属于IAM群组的用户、担任角色的用户或担任角色的联合用户,并且该组或角色已
AWSCloud9Administrator
附加 AWS 托管策略。
假设受邀用户不是上述类型的用户之一。确保该用户已经拥有相应的环境成员访问角色。有关说明,请参阅关于环境成员访问角色。
要邀请用户,请使用 AWS CLI 或运行 AWS Cloud9
create-environment-membership
命令。 AWS CloudShell
aws cloud9 create-environment-membership --environment-id 12a34567b8cd9012345ef67abcd890e1 --user-arn USER_ARN --permissions PERMISSION_LEVEL
在上述命令中,将 12a34567b8cd9012345ef67abcd890e1
替换为环境的 ID。将 PERMISSION_LEVEL
替换为 read-write
或 read-only
。并将 USER_ARN
替换为以下各项之一:
-
要邀请IAM用户,请输入
arn:aws:iam::123456789012:user/MyUser
。123456789012
替换为您的 AWS 账户 ID,然后MyUser
替换为用户名。 -
要邀请 AWS 账户 根用户,请输入
arn:aws:iam::123456789012:root
。123456789012
用您的 AWS 账户 身份证替换。 -
要邀请具有代入角色的用户或具有代入角色的联合用户,请输入
arn:aws:sts::123456789012:assumed-role/MyAssumedRole/MyAssumedRoleSession
。123456789012
用您的 AWS 账户 身份证替换。将MyAssumedRole
替换为代入角色的名称。并且,将MyAssumedRoleSession
替换为代入角色的会话名称。
例如,要邀请账户 ID 的 AWS 账户 root 用户123456789012
以读/写成员身份12a34567b8cd9012345ef67abcd890e1
加入环境,请运行以下命令。
aws cloud9 create-environment-membership --environment-id 12a34567b8cd9012345ef67abcd890e1 --user-arn arn:aws:iam::123456789012:root --permissions read-write
注意
如果您使用的是 AWS CloudShell,请省略前面的命令中的前aws
缀。