AWS 以编程方式为其他人部署实例(AWS CLI OAuth?)
Posted
技术标签:
【中文标题】AWS 以编程方式为其他人部署实例(AWS CLI OAuth?)【英文标题】:AWS Programmatically deploy instance for someone else (AWS CLI OAuth?) 【发布时间】:2017-11-28 16:17:43 【问题描述】:我正在寻找可以在 oauth 之后以编程方式为其他 AWS 用户启动实例的东西。亚马逊提供这样的东西吗?所以他们只需使用 AWS 帐户登录,然后我就可以代表他们拨打 AWS 电话。
有这样的东西吗?
【问题讨论】:
【参考方案1】:这里没有登录。您需要一个cross-account role,由其他帐户的所有者提供。
【讨论】:
lol @jarmod 我 promise 我没有复制你的链接。已经在这个答案上工作了几分钟,一旦我的发布就看到了你的答案。很有趣,我们选择了相同的页面来独立引用。 +1 @Michael-sqlbot 不用担心。你的答案更好更完整。【参考方案2】:没有这样的事情。
这将产生巨大的安全隐患。
请注意,AWS 中的主要实体不是用户,而是“账户”。账户有用户,这些用户只能做账户授权他们做的事情。
对于一个 AWS 账户(“我的”)允许另一个 AWS 账户(“您的”)代表我的账户(从技术上讲,而不是代表“我”)执行操作,我必须明确授予您权限这样做,通过 IAM。一种解决方案是创建一个具有必要权限和delegate access to you 的角色。
但这不太可能是消息灵通的用户所允许的,因为您很容易为用户增加大量费用。允许这种外部访问不是一个好习惯。
但是,用户可以通过 AWS Marketplace 在 EC2 上启动您的软件并选择向您支付由 AWS 代您收取的许可费,这种方式旨在为用户提供一键式体验.
【讨论】:
嗯,所以某人的帐户无法授予 OAuth 访问权限?我不想从我的帐户中为其他人启动实例,我希望其他帐户直接通过 OAuth 授予我访问权限,然后我可以以编程方式代表他们拨打电话。 AWS 不存在这样的范例吗? 它在用户/登录上下文中不存在,不。如果他们的账户使用 IAM 向您委派必要的权限,您可以使用您的凭证针对他们的账户及其资源进行调用,如上所述。当您使用AssumeRole
的凭据时,您将获得临时凭据,允许您获得他们授予的委派权限。以上是关于AWS 以编程方式为其他人部署实例(AWS CLI OAuth?)的主要内容,如果未能解决你的问题,请参考以下文章
AWS Beanstalk CLI 不断部署 react/npm 开发构建