在AWS云上面创建Developers用户组

问题

需要给开发人员创建一个专门的Developers用户组,保证开发人员只能够尽兴相关操作。注意,我这里使用的AWS国际版。

创建Developers用户组

打开用户组页面,点击用户组,创建组,进行用户组创建,如下图:
准备创建aws用户组
输入用户组名称,点击创建组,这里先放一放相关权限策略如下图:

创建aws用户组

绑定权限策略

选中已经成功创建的用户组,如下图:
选中Dev用户组
准备选择合适的权限策略,如下图:
准备选择合适的权限策略
搜索“AmazonSSMReadOnlyAccess”策略,该策略主要用于开发人员通过SSM访问AWS相关服务,类似堡垒机作用,附件该策略到用户组,如下图:
AmazonSSMReadOnlyAccess策略
按上述方式,在以此搜索“AWSCodeBuildDeveloperAccess”策略,“AWSCodePipeline_ReadOnlyAccess”策略,“AWSCodeCommitPowerUser”策略。前两者是为了让开发人员,能够看到CI/CD阶段状态;“AWSCodeCommitPowerUser”策略是让开发者能够正常使用codecommit代码库。最后,自带策略绑定结果如下图:
dev用户组自带权限策略
下面开始,准备添加自定义策略,如下图
准备自定义权限策略
开始创建“DenyChangesToMain”自定义策略,该策略主要是约束开发人员不能直接操作主干分支,具体策略如下:

{"Version": "2012-10-17","Statement": [{"Effect": "Deny","Action": ["codecommit:GitPush","codecommit:DeleteBranch","codecommit:PutFile","codecommit:MergeBranchesByFastForward","codecommit:MergeBranchesBySquash","codecommit:MergeBranchesByThreeWay","codecommit:MergePullRequestByFastForward","codecommit:MergePullRequestBySquash","codecommit:MergePullRequestByThreeWay"],"Resource": "arn:aws:codecommit:*:账号ID:*","Condition": {"StringEqualsIfExists": {"codecommit:References": ["refs/heads/main","refs/heads/prod","refs/heads/master"]},"Null": {"codecommit:References": "false"}}}]
}

以该json进行自定义策略创建,如下图:
自定义策略json
点击下一步,进行策略创建,如下图:

创建权限策略
最后,该策略就附加到用户组了,如下图:

附加自定义权限策略
按照上述方式添加“DisableDeleteBranch”自定义策略和“GetSecretValue”自定义策略。
“DisableDeleteBranch”自定义策略,主要防止开发者删除dev和release分支;“GetSecretValue”自定义策略主要让开发者能够正常读取配置中心数据。相关策略json如下:

“DisableDeleteBranch”自定义策略json:

{"Version": "2012-10-17","Statement": [{"Effect": "Deny","Action": ["codecommit:DeleteBranch"],"Resource": "arn:aws:codecommit:*:账号ID:*","Condition": {"StringEqualsIfExists": {"codecommit:References": ["refs/heads/develop","refs/heads/release"]},"Null": {"codecommit:References": "false"}}}]
}

“GetSecretValue”自定义策略json:

{"Version": "2012-10-17","Statement": [{"Sid": "VisualEditor0","Effect": "Allow","Action": "secretsmanager:GetSecretValue","Resource": "arn:aws:secretsmanager:*:账号ID:secret:*"}]
}

最终,Developers用户组权限策略,如下图:

最终developer组
到这里developer用户组就创建完了。

总结

这就是在AWS国际云上面的创建Developer用户组的全过程。有点复杂的地方,主要是自定义权限策略的编写。

参考

  • IAM 用户组

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/338513.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2023一建机电工程过关分享

成绩 先说下背景,我是2年拿下一建机电的考试,成绩如下: 学习安排 1)22年学习时,我是严格按照下图中的时间安排来学习的(下图是23年的表格和时间),先公共在实务,公共过关…

Vue.js设计与实现阅读-3

Vue设计与实现阅读-3 1、声明式描述UI2、渲染器3、组件4、模板的工作原理5、Vue.js 是各个模块组成的有机整体 前言 前面一章我们了解了,开发体验是衡量一个框架的重要指标之一。提供友好的警告信息至关重要,但是越详细的警告信息,意味着框架…

C++重新认知:inline关键字

一、为什么要使用inline关键字 在C中.,为了解决频繁调用小函数造成大量消耗栈空间的问题,引进了inline关键字,inline修饰的函数为内敛函数(频繁大量的使用栈空间会造成栈溢出)。 在这段代码中,每次执行for…

用matlab解决简单的数学问题

1 微分和积分 微分和积分是数学计算中常用的手段。微积分最重要的思想就是”微元“与”逐次逼近“,一个整体的事物往往不好研究,但是通过微元分割成一下块一小块的,当做常量处理,最终加起来就能实现运行效果。在matlab中实现函数微…

在visual studio中调试时无法查看std::wstring

1.问题 在调试的时候发现std::wstring类型的变量查看不了,会显示(error)|0,百思不得其解。 2.解决方法 参考的:vs2015调试时无法显示QString变量的值,只显示地址_vs调试qstring的时候如何查看字符串-CSDN博客 在工具/选项/调试…

蓝凌EIS pdf.aspx 任意文件读取漏洞

漏洞描述: 蓝凌EIS智慧协同平台是一个简单、高效的工作方式专为成长型企业打造的沟通、协同、社交的移动办公平台,覆盖OA、沟通、客户、人事、知识等管理需求,集合了非常丰富的模块,满足组织企业在知识、项目管理系统建设等需求的…

12.22 探探 数分 已HR面

岗位信息 1222 3.30PM 1面 40min 能感觉数据基建还不是很完善 因此 问了一些指标体系的问题还挺多 自我介绍能力考察1.说说你是怎么异常归因的以付费场景项目为例2.归因中如果遇到一个页面同时存在有3个实验在跑 无法归因出数据的异常是哪个改动造成的怎么办?3.讲…

uniapp日期加减切换,点击切换

先上完成后的页面&#xff1a;当前年年份不显示&#xff0c;不然完整显示。 可以切换和自定义选择。 html:样式和图片自定义。 <view class"image-text_30"><image click"delMonth" :src"require(/static/home/zuo.png)" class"…

解决docker run报错:Error response from daemon: No command specified.

将docker镜像export/import之后&#xff0c;对新的镜像执行docker run时报错&#xff1a; docker: Error response from daemon: No command specified. 解决方法&#xff1a; 方案1&#xff1a; 查看容器的command&#xff1a; docker ps --no-trunc 在docker run命令上增加…

GLSL着色器入门(持续更新中...)

目录 第一章&#xff1a;OpenGL works with triangles 第二章&#xff1a; Parallel Processing 第章 推荐来自b站的课程004 GLSL is not Javascript_哔哩哔哩_bilibili 第一章&#xff1a;OpenGL works with triangles 当我们谈论GLSL着色器时&#xff0c;其实就是在说怎么…

react项目运行卡在编译:您当前运行的TypeScript版本不受@TypeScript eslint/TypeScript estree的官方支持

1.问题 错误信息具体如下&#xff1a; 搜索了一下&#xff0c;是typescript版本的问题&#xff0c;提示我版本需要在3.3.0和4.5.0中间&#xff0c;我查看了package.json&#xff0c;显示版本为4.1.3&#xff0c;然后一直给我提示我的版本是4.9.5&#xff0c;全局搜索一下&…

vue实现-年、月、日、时、分、秒、星期?

一、文章引导 #mermaid-svg-nP4oT3Y4d6oaxUsg {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-nP4oT3Y4d6oaxUsg .error-icon{fill:#552222;}#mermaid-svg-nP4oT3Y4d6oaxUsg .error-text{fill:#552222;stroke:#55222…