如何使用AWS Identity and Access Management进行身份验证和授权?

时间:2013-04-18 16:46:31

标签: authentication amazon-web-services authorization amazon-iam

我正在用Java编写自己的报告软件,并计划使用RDS进行数据存储。我想做A.A.使用AWS IAM。是否有任何使用AWS Identity and Access Management进行身份验证和授权的示例您可能知道并与我分享?

我不是在研究如何从亚马逊的控制台设置用户或如何发出控制台命令。相反,我希望看到一些Java代码如何识别用户是否使用他/她的凭据(用户ID,密码组合)进行身份验证,以及该人是否有权访问特定报告。

2 个答案:

答案 0 :(得分:1)

AWS IAM并非旨在使用您自己的应用对用户进行身份验证。 AWS IAM旨在使用 AWS服务对用户进行身份验证。

查看用户是否为真实用户(身份验证)以及该用户是否获得授权的唯一方法是实际进行AWS API调用。

例如,您可以创建一个如下所示的策略并将其附加到用户/组:

{
   "Statement":[{
      "Effect":"Allow",
      "Action":["rds:CreateDBSecurityGroup",
                "rds:DeleteDBSecurityGroup",
                "rds:DescribeDBSecurityGroup",
                "rds:AuthorizeDBSecurityGroupIngress",
                "rds:RevokeDBSecurityGroupIngress"],
      "Resource":"*"
      }
   ]
}

拥有此策略的用户或组只能进行这些API调用,而不能进行其他调用。

见这里:http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.IAM.html

答案 1 :(得分:1)

亚马逊有一种名为Cognito的东西,用于跨移动设备同步应用程序配置文件。但是,适用于您的问题的是,它还允许用户通过Google,Facebook或亚马逊(它使用OAuth)进行身份验证。

http://aws.amazon.com/cognito/