2

我的用例是允许用户创建新用户/密码,为每个用户创建一个文件夹并允许他们上传文件。

然后当他们回来时,他们可以使用用户/密码登录并下载他们的文件(在我们的产品中使用)

我设法让大多数员工使用 C# API 完成工作——非常高兴!唯一的问题是我找不到使用 IAM 对用户进行身份验证的方法 - 使用用户名/密码。

我不希望最终用户担心密钥/秘密和长字符串,他们应该能够与其他用户传输这些详细信息(以及对数据文件的访问)以帮助他们。

有没有办法验证 IAM 用户名/密码?谢谢,乌里。

4

3 回答 3

2

您需要使用“联合访问”——您的系统上的用户拥有帐户和密码。然后他们通过您的系统进行身份验证,您通过基于会话的系统(加密的 cookie 或 memcache 等)授予他们长达 36 小时的访问权限,以访问他们的文件夹。

您可以使用 Web 应用程序或对您的服务器进行身份验证的独立 C# Windows 应用程序来执行此操作。

使用网络应用程序,您的用户登录,用户/密码,然后您存储加密的 cookie 或类似的,以便您的网络应用程序可以在他们登录时发布预签名帖子、下载文件等。不需要他们曾经看到 AWSID/秘密。

于 2012-02-20T22:41:27.190 回答
1

据我了解这个问题,这似乎是可用的。您只需让他们从 AWS IAM 主页上提供的登录链接登录到控制台。

IAM 控制台登录链接

然后,您需要为相关用户帐户分配密码并为他们添加策略,以便他们可以访问相关 S3 存储桶。您需要列出我的所有存储桶才能通过控制台的第一个屏幕。我刚刚尝试过,类似以下的作品:

{
  "Statement": [
    {
      "Sid": "Stmt1363222128",
      "Effect": "Allow",
      "Action": "s3:ListAllMyBuckets",
      "Resource": "*"
    },
    {
      "Sid": "Stmt136328293",
      "Action": [
        "s3:*"
      ],
      "Effect": "Allow",
      "Resource": [
        "arn:aws:s3:::your_bucket_name"
      ]
    }
  ]
}
于 2013-03-14T01:02:37.813 回答
0

不,您将需要使用密钥/秘密。这是简短的答案。当您在 IAM 中创建新用户时,它将为该特定用户提供他们自己的密钥/秘密。他们需要做的就是登录,抓住他们的钥匙/秘密并把它打进去。

管理 IAM 用户及其访问权限 - 您可以在 IAM 中创建用户,为用户分配个人安全凭证(即访问密钥、密码、多因素身份验证设备)或请求临时安全凭证以向用户提供对 AWS 服务和资源的访问权限。您可以管理权限以控制用户可以执行的操作。- aws.amazon.com/iam

于 2012-02-20T15:45:30.760 回答