美文网首页
AWS IAM 简介

AWS IAM 简介

作者: 张培_ | 来源:发表于2020-04-20 21:56 被阅读0次

    什么是IAM

    IAM是一种AWS的web service, 专门用来帮助你去做对AWS资源访问的控制,你可以使用IAM来控制authentication以及authorization

    AWS service vs AWS Resource
    AWS中提供服务的是service比如S3、IAM、VPC、SNS, SES, KMS
    AWS中Service中那些具体可量化的实体可以被理解成resource,所有的resource都有ARN(AWS resource name类似于ID)。比如S3是一个service,S3中的一个object/bucket就是一个Resource。再比如EC2是一个service但是一个EC2 instance就是一个resource。再比如IAM是service,但是IAM中的一个IAM rol就是一个resource。

    authentication vs authorization
    authentication指的是通过验证你的credentials(用户名、密码/)来证明你的身份(证明我是一个合法用户)
    authorization指的是验证你是否有某种权限(permission)去访问某一些resource。authorization通常发生在authentication之后,也就是你必须先证明你是一个合法用户登录之后,才能考虑是否能够访问一些资源

    当你第一次创建了一个AWS account, AWS会为你创建第一个IAM User root user。这个User通过你account的用户名和密码进行authenticate,拥有当前这个account下所有AWS service、resouce的所有权限。

    当你利用account用户名和密码登录后,相当于你登录了root user,但是由于root权限太多,为了资源安全起见,AWS推荐我们不要使用root用户执行task,而是仅仅利用root用户创建第一个IAM user,然后不再使用root user登录。

    IAM中的术语

    Resources

    如果一个IAM是service,那么存储在IAM中的 IAM role、IAM User、IAM policy、IAM Rroup都是IAM Resources。

    Identities

    在IAM中用来做identify和group的就是Identities,可以给Identities加权限(policy、permission),我的理解就是那些可以代表身份的资源,比如users, groups, and roles。比如policy肯定就不是一个身份。

    Entities

    IAM中专门用来做authentication的资源,就是可以用来登录,或者说可以用来获取credential的资源。通常最好理解的就是IAM user,可以用来登录。federated users,也是一个实体。但是还有一个就是assumed IAM roles assume某一个role之后,会获取credential.

    credentials

    通常我们使用IAM Entities登录之后,就会获取credentials,有了credentia之后就可以给AWS发送请求,操纵Resource。

    Principals

    使用root user或者AWS IAM Entities(IAM user,federated users、assumed role)登录,然后给AWS发送请求操作AWS资源的人或者application。比如,我在命令行中登录某一个IAM user,然后create a bucket,那么我就是Principal。

    那么Principal发送的request是什么呢?

    一个Principal利用AWS console/AWS CLI/AWS API 操纵资源,其实都是通过给AWS 发送request操纵资源的。

    每当Principals利用IAM ENtity登录之后,一定会获取crendital, 这些crendital中包括的是你authentication(登录token)以及authorization(permission)的信息。当你给AWS发送request的时候,会在request body中将这些信息都带上,AWS会valid这些信息来查看你是否有能力做某一些操作。

    相关文章

      网友评论

          本文标题:AWS IAM 简介

          本文链接:https://www.haomeiwen.com/subject/nyysihtx.html