张裕 发表于 2024-6-15 01:13:26

深入浅出IAM(1)

在本人即将入职的一份底子架构的工作前,我提前接洽到了团队leader并跟他进行了一次1-1。发言中提到了我可能会先上手的一个项目是IAM相干的实现,于是趁着入职前的间隙,我学习了部分优秀开源IAM项目实现思路以及腾讯云开辟专家孔老师的专栏。

在反复思索和总结提炼后,我也尝试着谈谈自己对于IAM的明白。

简而言之IAM(Identity and Access Management)是为了安全地管理身份以及对相干资源的访问。它是一种网络安全服务,能够实现单点登录、用户身份认证、会合授权等功能。

参考AWS的概念解释图如下:
https://img-blog.csdnimg.cn/e2953c3cf4b84e0993212ea6270b7b19.png 

经典实用案例为:
1. 通过基于属性的访问控制应用精致权限和扩展
利用基于属性的访问控制根据用户属性(比方,部分、职位和团队名称)创建精致权限
2.管理每个账户的访问权限或扩展跨 AWS 账户和应用程序的访问权限 
通过 IAM 管理每个账户的身份,或利用 IAM Identity Center 跨 AWS 提供多账户访问和应用程序分配。
3.在 AWS 上建立组织级的预防性防护机制
利用服务控制策略为 IAM 用户和角色建立权限防护机制,并在 AWS Organizations 中围绕您的账户建立数据边界。
4.设置、验证权限并将其适当调解为最低权限
在设置、验证和优化策略以到达最低权限的过程中简化权限管理并利用跨账户结果。

那么IAM体系是如何进行资源授权的呢?
其团体过程可以分为4步:

[*] 用户需要提供昵称、密码、邮箱、电话等信息注册并登录到 IAM 体系,这里是以用户名和密码作为唯一的身份标识来访问 IAM 体系,并且完成认证。
[*] 因为访问 IAM 的资源授权接口是通过密钥(secretID/secretKey)的方式进行认证的,所以用户需要在 IAM 中创建属于自己的密钥资源。
[*] 因为 IAM 通过授权策略完成授权,所以用户需要在 IAM 中创建授权策略。
[*] 哀求 IAM 提供的授权接口,IAM 会根据用户的哀求内容和授权策略来决定一个授权哀求是否被答应
上述过程的流程图如下:

https://img-blog.csdnimg.cn/cdad34366d67492ca3e9dc14ef315820.png
在上面的流程中,IAM 利用到了 3 种体系资源:
用户(User)、密钥(Secret)和策略(Policy),它们映射到程序计划中就是 3 种 RESTful 资源:


[*] 用户(User):实现对用户的增、删、改、查、修改密码、批量修改等操纵。


[*] 密钥(Secret):实现对密钥的增、删、改、查操纵。


[*] 策略(Policy):实现对策略的增、删、改、查、批量删除操纵。
参考孔令飞老师提及的IAM体系架构具体实现图如下:

总的来说,IAM 架构中包括 9 大组件和 3 大数据库。这些组件和功能都总结如下。这里面,我们紧张记着 5 个核心组件,包括 iam-apiserver、iam-authz-server、iam-pump、marmotedu-sdk-go 和 iamctl 的功能,还有 3 个数据库 Redis、MySQL 和 MongoDB 的功能。
https://img-blog.csdnimg.cn/db366565eb174584aaf563ed09dccc3b.png 
对部分组件的功能描述做一定阐明:
https://img-blog.csdnimg.cn/e72c80f0f8c44f61995904b2beaa3dc1.png

三种数据库的功能阐明:

https://img-blog.csdnimg.cn/f70574dc002545ecacf59144e25ed5c7.png

原文链接 :
深入浅出IAM(1)

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 深入浅出IAM(1)