Amazon s3 Amazon S3中的子帐户(如Nirvanix)(子帐户、客户帐户)
我们正在从亚马逊S3迁移到亚马逊S3 我需要的是模拟S3存储的Nirvanix风格 (简而言之,它们提供具有预定义限制的独立存储,并为每个子用户提供单独的身份验证,仍然由同一主帐户管理) 我们将有100多个用户,因此每个用户的存储桶将无法工作(这仍然限制在100个,对吗?) 存储是直接从桌面应用程序使用的(例如,不是通过我们的服务器,尽管有一个中央服务器,如果这有帮助的话) 我们想要一个单一的S3账单账户来支付所有费用,但我们希望我们的客户对象安全地相互分割 Nirvanix提供了开箱即用的功能(http://developer.nirvanix.com/sitefiles/1000/API.html#_TocCreatingChildAccounts)-这就是我试图用S3复制的内容 我了解如何为每个子用户分割对象,例如使用对象的“前缀”符号(例如“USER1/object1”、“USER2/something_其他”) 我不明白的是: 1)如何设置权限,使每位客户只能访问其文件 如果我允许“应用程序”访问S3存储,那么这显然意味着应用程序的每个用户都可以访问任何人的文件 看起来你可以设置丰富的ACL,但我不明白的是你可以对谁设置权限。是否只有AWS用户?这是否意味着唯一的方法是让我的客户都拥有一个AWS帐户 如果是,我可以代表他们创建帐户吗?例如,通过API调用 我们当然不能允许每个用户都通过AWS网站创建一个帐户(糟糕!) 2)关于管理每位客户配额的最佳方法有什么想法 这让我担心,因为据我所知,我们必须从桌面应用程序中限制这一点。这显然是滥用的时机,因为S3将继续允许更多的数据 我想我们可以接受每天运行的脚本,它检查存储限制是否存在“滥用”,但只是想知道是否有更好的方法 谢谢大家Amazon s3 Amazon S3中的子帐户(如Nirvanix)(子帐户、客户帐户),amazon-s3,cloud,cloud-hosting,Amazon S3,Cloud,Cloud Hosting,我们正在从亚马逊S3迁移到亚马逊S3 我需要的是模拟S3存储的Nirvanix风格 (简而言之,它们提供具有预定义限制的独立存储,并为每个子用户提供单独的身份验证,仍然由同一主帐户管理) 我们将有100多个用户,因此每个用户的存储桶将无法工作(这仍然限制在100个,对吗?) 存储是直接从桌面应用程序使用的(例如,不是通过我们的服务器,尽管有一个中央服务器,如果这有帮助的话) 我们想要一个单一的S3账单账户来支付所有费用,但我们希望我们的客户对象安全地相互分割 Nirvanix提供了开箱即用的功能
John亚马逊推出了一项新的测试版服务,名为,它可以让你细分你的存储桶 在文档的一节中,有一些示例描述了您的用例: 示例1:允许每个用户在AmazonS3中拥有一个主目录 在本例中,我们创建一个策略 我们将附加到名为 Bob。该策略允许Bob访问 下面是Amazon中的主目录 S3:
my\u corporate\u bucket/home/bob
。
Bob只允许访问
中所示的特定Amazon S3操作
策略,并且仅与对象一起使用
在他的主目录中
{
"Statement":[{
"Effect":"Allow",
"Action":["s3:PutObject","s3:GetObject","s3:GetObjectVersion",
"s3:DeleteObject","s3:DeleteObjectVersion"],
"Resource":"arn:aws:s3:::my_corporate_bucket/home/bob/*"
}
]
}
不幸的是,我认为您目前无法使用IAM强制执行配额
此外,根据您的平台,您可能希望使用其中一种可用服务来简化与这些服务的交互
您绝对不希望在桌面应用程序中分发您的标准
密钥
,而不采取一些严重的预防措施。任何拥有您的密钥的用户都可以完全访问您的所有AWS服务。太好了,我来看看。