如何使用CureIAM自动清理GCP基础设施中的IAM账号权限

news2024/11/25 2:24:35

关于CureIAM

CureIAM是一款针对GCP基础设施的账号权限安全检查与管理工具,该工具易于使用,是一个功能强大且易于使用的可靠高性能引擎。在该工具的帮助下,广大研究人员能够以自动化的形式在GCP云基础设施上实践最低权限原则。

CureIAM可以允许DevOps和安全团队快速清理GCP基础设施中授予超过所需权限的帐户,并且整个过程都能够以自动化的形式实现。

功能介绍

1、配置驱动:CureIAM的整个工作流都是配置驱动的;

2、可扩展:CureIAM被设计为功能可扩展的,得益于其插件系统、多进程和多线程设计模式;

3、插件驱动:CureIAM代码库完全面向插件,这意味着我们可以直接安装现有插件,也可以创建新插件来添加更多功能;

4、操作跟踪:CureIAM采取的每一个操作都会被记录下来,并用于后续的安全审计活动;

5、评分和执行:CureIAM会对每一条操作建议使用各种参数进行评分;

工具下载

由于该工具基于Python开发,因此我们首先需要在本地设备上安装并配置好Python环境。在运行该工具之前,请确保下列路径之一有配置文件存在:/etc/CureIAM.yaml、~/.CureIAM.yaml、~/CureIAM.yaml或CureIAM.yaml,以及项目目录中是否包含一个服务账号JSON文件(cureiamSA.json)。

接下来,广大研究人员可以直接使用下列命令将该项目源码克隆至本地:

$ git clone https://github.com/gojek/CureIAM.git

然后切换到项目目录中,使用pip工具和requirements.txt文件安装该工具所需的其他依赖组件:

$ pip install -r requirements.txt

工具使用

下列命令即可直接运行CureIAM:

$ python -m CureIAM -n

设置CureIAM进程为计划任务:

$ python -m CureIAM

查看工具帮助信息:

$ python -m CureIAM --help

除此之外,CureIAM还可以在Docker环境中运行,或在K8s集群部署下用于CI/CD:

# 从Dockerfile构建Docker镜像

$ docker build -t cureiam .

# 以计划任务运行镜像

$ docker run -d cureiam

# 运行镜像

$ docker run -f cureiam -m cureiam -n

工具配置

CureIAM.yaml配置文件是CureIAM引擎的核心,引擎所做的所有操作都基于该配置文件管道过来的配置信息实现。

首先,我们需要配置第一部分,即日志配置和计划任务配置:

logger:

    version: 1

 

    disable_existing_loggers: false

 

    formatters:

      verysimple:

        format: >-

            [%(process)s]

            %(name)s:%(lineno)d - %(message)s

        datefmt: "%Y-%m-%d %H:%M:%S"

 

    handlers:

      rich_console:

        class: rich.logging.RichHandler

        formatter: verysimple

 

      file:

        class: logging.handlers.TimedRotatingFileHandler

        formatter: simple

        filename: /tmp/CureIAM.log

        when: midnight

        encoding: utf8

        backupCount: 5

 

    loggers:

      adal-python:

        level: INFO

 

    root:

      level: INFO

      handlers:

        - rich_console

        - file

 

  schedule: "16:00"

下一部分需要配置不同模块,即插件部分,这里我们可以声明需要使用的不同插件:

plugins:

    gcpCloud:

      plugin: CureIAM.plugins.gcp.gcpcloud.GCPCloudIAMRecommendations

      params:

        key_file_path: cureiamSA.json

 

    filestore:

      plugin: CureIAM.plugins.files.filestore.FileStore

 

    gcpIamProcessor:

      plugin: CureIAM.plugins.gcp.gcpcloudiam.GCPIAMRecommendationProcessor

      params:

        mode_scan: true

        mode_enforce: true

        enforcer:

          key_file_path: cureiamSA.json

          allowlist_projects:

            - alpha

          blocklist_projects:

            - beta

          blocklist_accounts:

            - foo@bar.com

          allowlist_account_types:

            - user

            - group

            - serviceAccount

          blocklist_account_types:

            - None

          min_safe_to_apply_score_user: 0

          min_safe_to_apply_score_group: 0

          min_safe_to_apply_score_SA: 50

 

    esstore:

      plugin: CureIAM.plugins.elastic.esstore.EsStore

      params:

        # Change http to https later if your elastic are using https

        scheme: http

        host: es-host.com

        port: 9200

        index: cureiam-stg

        username: security

        password: securepassword

每一个插件的声明格式如下:

plugins:

    <plugin-name>:

      plugin: <class-name-as-python-path>

      params:

        param1: val1

        param2: val2

插件定义完成之后,就是要定义用于安全审计的管道了:

audits:

    IAMAudit:

      clouds:

        - gcpCloud

      processors:

        - gcpIamProcessor

      stores:

        - filestore

        - esstore

最后,让CureIAM运行之前定义的安全审计任务即可:

run:

- IAMAudits

工具运行截图

许可证协议

本项目的开发与发布遵循Apache-2.0开源许可证协议。

项目地址

CureIAM:【GitHub传送门】

参考资料

https://github.com/cloudmarker/cloudmarker

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何在Linux运行RStudio Server并实现Web浏览器远程访问

&#x1f308;个人主页: Aileen_0v0 &#x1f525;热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 ​&#x1f4ab;个人格言:“没有罗马,那就自己创造罗马~” 文章目录 前言1. 安装RStudio Server2. 本地访问3. Linux 安装cpolar4. 配置RStudio server公网访问地址5. …

自建服务器如何备案?

随着互联网的普及和发展&#xff0c;越来越多的人开始考虑自建服务器。然而&#xff0c;在中国大陆地区&#xff0c;自建服务器需要进行备案。本文将介绍自建服务器备案的流程、所需材料以及注意事项。 一、备案流程 确定备案地区 根据《中华人民共和国计算机信息网络国际联网…

khbc靶场小记(upload 666靶场)

尝试上传正常的png jpg gif php的格式的文件发现老是提示烦人的消息&#xff08;上传不成功&#xff09;&#xff1b; 通过抓包对MIME进行爆破没爆出来&#xff0c;当时可能用成小字典了&#xff1b; 猜测可能是把后缀名和MIME绑定检测了&#xff1b; 反正也没思路&#xff0c;…

归并排序(C语言)

目录 1.归并排序图解 2.归并排序&#xff08;递归版&#xff09; 3.归并排序&#xff08;非递归版&#xff09; 1.归并排序图解 归并排序的核心思想是让左右两边有序的部分进行合并比较排序&#xff0c;具体什么意思呢&#xff1f;分两点&#xff1a; 1.分&#xff1a;左右两边…

SwitchyOmega插件管理海外動態IP代理設置教程

SwitchyOmega插件很好解決了管理多個代理並在它們之間切換的問題&#xff0c;通過本文來全面瞭解SwitchyOmega&#xff0c;比如SwitchyOmega插件的用途、它的主要功能和應用、怎麼下載和使用&#xff0c;如何管理海外動態IP代理。 SwitchyOmega插件有什麼用途&#xff1f; Swit…

扫描电子显微镜在材料失效分析中的主要作用

扫描电子显微镜&#xff08;Scanning Electron Microscope&#xff0c;简称SEM&#xff09;是一种高分辨率的显微镜&#xff0c;能够在纳米级别上观察样品的表面形貌和微观结构。在材料失效分析中&#xff0c;SEM起着至关重要的作用&#xff0c;为深入理解材料的性质和失效机制…

excel统计分析——Scheffe法多重比较

参考资料&#xff1a;生物统计学 Scheffe法&#xff08;雪费法&#xff09;多重比较和LSD法一致&#xff0c;但通过k-1作为F分布的第一自由度对临界值进行调整&#xff1a; 其中&#xff0c;k为处理水平数&#xff0c;df为误差自由度&#xff1b;为 excel操作步骤如下&#xf…

ADSelfService Plus 推出离线多因素身份验证以提升远程工作安全性

采用先进验证方法&#xff0c;确保在任何时间、地点或连接问题下对业务数据的合法访问即使远程用户未连接到身份验证服务器或互联网&#xff0c;也可通过MFA安全认证。 MFA 得克萨斯州德尔瓦雷 — 2023年5月3日 — Zoho Corporation 旗下的企业IT管理部门ManageEngine今日宣布…

rust让你的python飞起来!

Note: 本文作为入门教程&#xff0c;抛砖引玉&#xff0c;帮你初步了解如何使用rust为python写扩展模块&#xff0c;涉及从头到尾的详细步骤&#xff0c;基于此&#xff0c;剩下的只有深入rust&#xff0c;才能做得更好。 众所周知&#xff0c;python性能比较差&#xff0c;尤其…

自动驾驶轨迹规划之碰撞检测(三)

欢迎大家关注我的B站&#xff1a; 偷吃薯片的Zheng同学的个人空间-偷吃薯片的Zheng同学个人主页-哔哩哔哩视频 (bilibili.com) 目录 1.基于圆覆盖 2.BVH 3.MATLAB自动驾驶工具箱 4 ROS内置的模型 自动驾驶轨迹规划之碰撞检测&#xff08;一&#xff09;-CSDN博客 自动驾…

性价比高的宠物空气净化器有哪些?五款猫用空气净化器测评推荐!

作为一位经验丰富的铲屎官&#xff0c;我深切理解养猫后家里到处都是猫毛和异味的困扰。养猫后&#xff0c;家里的空气质量往往变得不佳&#xff0c;猫毛和皮屑漫天飞舞。而如今&#xff0c;室内空气质量普遍较差&#xff0c;受到雾霾、螨虫和甲醛等污染。长期处于低质量的室内…

postman测试文件上传接口设置说明

Postman介绍及下载链接地址 Download Postman | Get Started for Free 打开postman 选择POST方法&#xff0c;然后设置goform 设置Header参数 设置Body参数&#xff0c;选择数据form-data 添加文件&#xff0c; 选择为文件属性 添加需要上传的文件

【备战蓝桥杯】吃奶酪问题 / 超硬核,文附template拓展知识!

蓝桥杯备赛 | 洛谷做题打卡day9 文章目录 蓝桥杯备赛 | 洛谷做题打卡day9再来了解一下状压dp**简介(Introduction)****描述(Description)** - 吃奶酪题目描述输入格式输出格式样例 #1样例输入 #1样例输出 #1 提示数据规模与约定提示 * template拓展知识我的一些话 【引入】今天…

sftp配置互信:sftp免密登录

一、安装ssh 使用yum命令安装或者去ssh官网下载进行安装 yum install openssh.x86_64二、设置免密 在asd(192.168.47.130)通过ssh或者sftp登录demo(192.168.47.140) shh免密登录有俩种方式 1、生成ssh公钥以及私钥 俩台服务器都不要生成 ssh-keygen在asd执行 在demo执行 …

探索直流电源模块的应用领域

探索直流电源模块的应用领域 直流电源模块广泛应用于许多领域&#xff0c;包括电子设备、通信、工业自动化、航空航天等。以下是一些常见的应用领域&#xff1a; 1. 电子设备&#xff1a;直流电源模块用于给各种电子设备供电&#xff0c;如计算机、手机、平板电脑、摄像机等。…

从零实现一套低代码(保姆级教程)【后端服务】 --- 【18】实现页面接口对应的前端

摘要 在上一篇中&#xff0c;我们已经把和页面相关的接口完成的差不多了。从创建页面&#xff0c;更新页面等等&#xff1a; 有了接口之后&#xff0c;我们就可以构建前端页面了。那这部分前端内容我们应该写在哪里呢&#xff1f; 有两种方式&#xff1a; 直接写在我们的Xin…

canvas绘制不同样式的五角星(图文示例)

查看专栏目录 canvas实例应用100专栏&#xff0c;提供canvas的基础知识&#xff0c;高级动画&#xff0c;相关应用扩展等信息。canvas作为html的一部分&#xff0c;是图像图标地图可视化的一个重要的基础&#xff0c;学好了canvas&#xff0c;在其他的一些应用上将会起到非常重…

十三、Qt 操作PDF文件放大缩小

一、在《十、Qt 操作PDF文件-CSDN博客》中我们用Poppler类库打开了PDF文件&#xff0c;在《十二、Qt 操作PDF文件(2)-CSDN博客》介绍了通过按钮进行上一页、下一页、跳转到某一页等功能&#xff0c;在本章节中&#xff0c;加入了 通过鼠标滚轮可以翻页。通过按住Ctrl鼠标滚轮可…

【十进制与二进制如何转换?推荐一个超好用的公式编辑器】

在计算机科学和电子工程中&#xff0c;二进制是一种非常重要的数字系统&#xff0c;因为它在数字处理和数据传输中被广泛使用。因此&#xff0c;理解如何将十进制数转换为二进制数是非常重要的。 可以使这个计算过程更加简单和快速。而且还可以用于其他数学方程式的编写和编辑。…

香港服务器带宽大点的(香港大带宽推荐)

在当今数字化时代&#xff0c;服务器带宽成为了企业发展的重要基石。对于需要处理大量数据和流量的企业来说&#xff0c;选择一款带宽充足、性能稳定的服务器是至关重要的。香港作为全球互联网的中心之一&#xff0c;其服务器带宽质量备受关注。本文将为您推荐几款香港大带宽服…