Amazon web services 是否可以证明AWS帐户ID属于某个人?

Amazon web services 是否可以证明AWS帐户ID属于某个人?,amazon-web-services,amazon-ec2,Amazon Web Services,Amazon Ec2,我的应用程序需要其用户的AWS帐户ID,以便与他们共享AMI和其他内容 我希望能够证明该用户实际上是该AWS帐户ID的所有者 有什么方法可以做到这一点吗?您可以通过编程方式确定您的用户有权访问他们提供给您的帐户ID,即要求他们以您可以验证的方式在帐户中执行某些操作 最典型(也是最安全)的方法之一可能是: 请您的用户在其帐户中创建IAM角色,以便跨帐户访问,然后信任您的帐户ID;此角色的访问策略可能非常有限(甚至完全没有权限)。确保生成一个唯一的外部ID以使其更安全,并要求用户使用它。此外,他们

我的应用程序需要其用户的AWS帐户ID,以便与他们共享AMI和其他内容

我希望能够证明该用户实际上是该AWS帐户ID的所有者


有什么方法可以做到这一点吗?

您可以通过编程方式确定您的用户有权访问他们提供给您的帐户ID,即要求他们以您可以验证的方式在帐户中执行某些操作

最典型(也是最安全)的方法之一可能是:

  • 请您的用户在其帐户中创建IAM角色,以便跨帐户访问,然后信任您的帐户ID;此角色的访问策略可能非常有限(甚至完全没有权限)。确保生成一个唯一的外部ID以使其更安全,并要求用户使用它。此外,他们应该使用您定义的角色名称,并且您应该尝试使其相当唯一,以避免与用户可能已经在使用的其他角色发生冲突

  • 然后,您的应用程序使用用户提供的帐户ID、您定义的角色名称和您定义的外部ID,您尝试在其帐户中假定角色

如果AssumeRole操作成功,则意味着您的用户可以在其声称拥有的帐户中创建角色

那可能是你能走的最远的地方了


最后一个音符


我见过的其他解决方案包括要求用户创建IAM用户,生成AK/SK,然后给您AK/SK,然后使用提供的AK/SK在他们的帐户上运行一些API调用以进行验证我非常不喜欢这个解决方案,因为它比上面的解决方案安全得多。

对于您的用例来说,让某人证明他们可以访问该帐户id就足够了吗?微妙的区别在于:他们不是在证明帐户的所有权,他们只是在证明他们在该帐户中拥有具有特定权限的凭据。在许多情况下,这是相当的。这够了吗?除此之外,如果你真的需要所有权证明(而不仅仅是访问证明),我认为没有办法做到这一点……@brunoreis也许。。。。你是说有办法证明某人有权使用该帐户吗?你可能是对的。我希望找到一种完全避免让用户做创建角色之类的事情的方法,因为我了解IAM和角色(我想——部分是这样),但我怀疑IAM和角色对于不了解IAM和角色的人来说真的很可怕(我想大多数使用AWS的人都是这样)。我想我感觉到了你的痛苦。。。但这可能是唯一的方法:要求用户执行一个只有“所有者”(或代表所有者的人)才能执行的操作——具有外部可观察到的副作用。类似于许多要求域名所有者添加TXT记录以确认所有权的服务。。。