云效安全那些事儿—访问控制与数据安全

简介: 云效 Codeup 提供了代码 GPG 签名,拒绝未签名的提交;支持代码属主验证,约束提交记录属主。 在质量管控上,云效 Codeup 精细化读写权限管控,支持代码提交卡点机制,保障提交质量。 接下来我们一起看看云效 Codeup 的这些安全防护功能如何使用。

互联网这个虚拟的世界,无数的人们在其中交互沟通,创造着海量的数据和信息。在这个世界中,自然也存在居心叵测的恶意用户,希望通过信息攫取利益。因此,服务提供者通常会采取一系列访问控制措施,对不受信任的访问者执行隔离。

 

那么什么是访问控制

 

访问控制,就是依据授权,对提出的资源访问请求进行控制,防止未授权的访问,避免未经授权的使用、泄露、销毁和篡改。

防控住访问权限之后,企业还需要关心的是数据本身的安全性,包括数据提交的可信性、提交的合规性和质量,避免风险入库,影响线上安全。

 

链接针对数据可信,云效 Codeup 提供了代码 GPG 签名,拒绝未签名的提交;支持代码属主验证,约束提交记录属主。

 

在质量管控上,云效 Codeup 精细化读写权限管控,支持代码提交卡点机制,保障提交质量。

 

接下来我们一起看看云效 Codeup 的这些安全防护功能如何使用。

访问控制 —— IP白名单

 

访问控制首先是要让危险进不来,Codeup 支持对仓库的访问 IP 进行限制,包括页面访问限制和部署密钥访问限制。

  • 页面访问限制:包括 Codeup 的全部页面访问、部署密钥访问、代码克隆、下载、提交、合并等行为一致受限;
  • 部署密钥访问:完备考虑了部署密钥由于人员管理不善被盗用的风险场景,禁止白名单之外的 IP 使用部署密钥访问企业代码库,加固代码库安全;

 

 

访问控制 —— 代码不落盘

 

现代企业常常需要雇佣外包团队支持开发工作,但是由于外包流动性强,规范性相对较弱,企业通常希望能够限制部分人员对代码的下载权限,但是不下载代码怎么进行开发工作呢?云效 Codeup 为这类场景提供了解决方案。

 

代码不落盘即数据不落本地磁盘,保证代码不被意外或恶意带走泄露,支持设置哪些角色允许下载代码到本地,针对无法下载代码的开发人员允许其使用云端 WebIDE 进行开发工作。

 

数据可信 —— GPG 签名

 

GPG 签名可以杜绝提交伪造事件。Git 虽然是密码级安全的,但并不是万无一失的。当用户密码泄露,或者有人想恶意伪造他人的提交,就有可能冒名信任的人,向你的代码仓库提交恶意代码。你可以使用GPG 在本地签署你的提交记录(Commit)或者标签(Tag), Codeup 将对这些签名做验证,来确保提交记录或者标签来自受信任的来源。

 

数据可信 —— 提交属主检查

 

在开始使用 git 进行版本管理之前,我们都知道需要先进行用户配置。

 

git config --global user.name "你的名字"

git config --global user.email "你的邮箱"

 

也许你每天都在用,但是清楚提交记录的作者(Author)与提交者(Committer)的区别吗?

 

Git 本身允许重写历史,或代表其他人提交代码。通常,我们在使用 git log 查看历史提交记录时,所展示的便是作者 Author。我们常用 Author 来作为代码统计的归属依据。从这个角度上来说,作者 Author 与代码贡献者直接挂钩。因此,在统计代码贡献等场景下需要规范提交代码属主和服务端当前登录用户的对应关系。

在执行 git commit 时,可以通过 --author 来指定这个提交记录的贡献者是谁。在开源社区也有这样的例子,虽然我并没有使用你的代码,但我使用了你的创意,仍然以你作为作者,以示对原创的尊重。

因此简单地理解 Author 是第一作者,Committer 是生成 Commit 的人。Codeup 支持针对 Author 和 Committer 对当前登录用户已验证的云效主邮箱做检查,若邮箱信息无法匹配,可以警告或禁止其推送,以保证代码贡献属主的准确性,避免由于无法匹配用户导致的贡献量计算失真。

 

数据安全 —— 提交权限限制

 

对企业来说,提交到远端库通常是一个比较严肃的过程,为了规范提交格式和限制权限,Codeup 支持了企业和仓库级别的提交规则设置。

首先在提交推送规则上,支持:

  • 提交注释检查:Commit Message 必须按照规定的正则格式描述,匹配时才允许推送;
  • 提交邮箱检查:提交人(Committer)的邮箱信息需要匹配正则表达式才允许推送;
  • 禁止强制推送;
  • 代码属主检查:基于提交中的作者和提交者邮箱和云效侧用户绑定主邮箱是否匹配做校验,可以设置警告和禁止推送两个安全级别;

 

另外,在提交权限控制上,通过保护分支设置支持:

  • 推送规则:可选择允许哪类角色直接推送代码,可控制不允许用户直接对保护分支进行提交,而必须通过合并请求进行自动化测试和人工审核后合入提交,保证合入重要分支的内容都是可信安全的;
  • 合并规则:可设置哪类角色有权限合并代码;

 

在数据安全最严苛的场景下,如果要求每次提交都要经过自动化检查和人工评审,可以设置不允许任何人直接提交代码,所有提交都必须通过合并请求评审后合入。

但这种情况可能会产生非常多的临时开发分支,不太容易管理,别担心,云效 Codeup 对基于主干的研发模式有完备的支持,基于创新的 Agit-Flow (阿里巴巴集中式 Git 工作流),不用新建分支,让创建代码评审就像执行 git push 命令一样的简单。开发者不用切换工具,将原来需要几分钟才能完成的代码评审创建过程,缩短到几秒钟,是不是很酷?

作者:Yvonne

原文链接

本文为阿里云原创内容,未经允许不得转载

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

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

相关文章

深信服何朝曦:托管云为用户上云提供第三种选择

9月17日,以“万物皆可云”为主题的信服云创新峰会成功举办。会上,深信服科技股份有限公司CEO何朝曦分享了运用云计算技术帮助用户进行数字化转型的观点。他认为兼具公有云和私有云优势的托管云,可以帮助非科技型企业和中小企业获得“数字化平…

java 使用c .dll_Windows下java调用c的dll动态库--Dev_Cpp编译c生成dll

1.eclipse下建立一个HelloJNI.java内容如下:package JNI;public class HelloJNI{static{System.out.println("开始");System.loadLibrary("goodluck");System.out.println("结束");}public native static int get();public native st…

阿里云助力江苏省财政厅力推统一公共支付平台

简介: 为深化“放管服”改革,贯彻“互联网政务服务”要求,江苏省财政厅加快推进江苏省统一公共支付平台建设,实现全省政府非税收入、政务服务在线收缴和财政电子票据的集中统一处理,不仅节约了因“重复建设”产生的财政…

Midway Serverless 发布 2.0,一体化让前端研发再次提效

简介: 2021 年 3 月,Midway Serverless 推出了第二个大版本。就像两年前说的一样,开源只是开始,终态远没有到来。Midway 体系希望能够在当前的十字路口,不断向前演进,让前端可以去发展,朝着应用…

binaryviewer java_用java实现java的2进制文件字节序转换到C/C++的2进制文件字节序

展开全部package admit.action;/*用JAVA读取各种计算机文件系统的文件列表 当你安装了jdk,在32313133353236313431303231363533e78988e69d8331333332613732jdk的类库里,有一个标准的File类,通过该类,可以很方便的实现浏览各种文件…

ZDNS宣布完成B轮融资,根服务器之外,顶级域名系统迎重要机遇

从互联网诞生,由于IPv4技术中UDP报文数据容量限制,到2021的今天,全球也仅有13个根服务器(俗称“主根”),其中10个主根由美国持有,英国、瑞典、日本各持有1个。而中国只运营根镜像服务器。虽然目…

应用容灾中,MySQL数据表是否需要跨云同步?

简介: 容灾系统的重要目标在于保证系统数据和服务的“连续性”。当系统发生故障时,容灾系统能够快速恢复服务和保证数据的有效性。为了防止天灾人祸、不可抗力,在同城或异地建立对应的IT系统,其中最核心的工作是数据同步。本文选取…

java浮点数数转二进制的数吗_深入理解计算机系统(2.7)-二进制小数和IEEE浮点标准 - Java 技术驿站-Java 技术驿站...

整数的表示和运算我们已经讲完了,在实际应用中,整数能够解决我们大部分问题。但是某些需要精确表示的数,比如某件商品的价格,某两地之间的距离等等,我们如果用整数表示将会有很大的出入,这时候浮点数就产生…

Docker 终失 C 位,开源少年缘何黑化

作者 | 马超出品 | CSDN(ID:CSDNnews)开源真是火了,近些年成功的IT项目像TensorFlow、RocketMQ、TDEngine都是开源项目,而且这种火爆还出了圈,连带着RISC-V这种准开源的芯片也成为了各方争抢的香饽饽。但是…

中油即时通信电脑版_市场营销之即时通讯营销

✎IM营销又叫即时通讯营销(instantmessaging),是企业通过即时工具im推广产品和品牌,以实现目标客户挖掘和转化的网络营销方式。封面设计丨Sweety 责编丨花花第60篇丨每日一篇好文:2645字丨5分钟阅读即时通讯营销常用的主要有以下两种情况:第一…

java组合框的事件有哪些_博为峰Java技术文章 ——JavaSE Swing列表框选取事件的处理...

博为峰小博老师:在JList类中有addListSelectionListener()方法,可以检测用户是否对JList的选取有任何的改变。在ListSelectionListener接口中只定义一个方法,那就是valueChanged(ListSelectionEvente),所以必须实现这个方法&#…

使用 Arthas 排查 SpringBoot 诡异耗时的 Bug

简介: 公司有个渠道系统,专门对接三方渠道使用,没有什么业务逻辑,主要是转换报文和参数校验之类的工作,起着一个承上启下的作用。最近,在优化接口的响应时间,优化了代码之后,但是时间…

关于数据库,你可能最想知道的几件事

【CSDN 编者按】随着技术不断更新,数据库的发展可谓全面开花,也吸引了越来越多人的关注,但大家真的都足够了解数据库吗?作者 | 易璜珵 责编 | 侯淼淼出品 | 《新程序员》互联网飞速发展的时代里,数据库、中间件和…

java反编译工具_JDA Java反编译工具的下载和使用手册

JDA(javadecompile analysis)是一款以dex为核心的java反编译工具,同时支持apk、dex、jar文件的反编译,支持动态重命名。该软件主要是用来反编译分析代码而不是反编译出来完全正确的java代码,运行需安装jdk1.8及以上版本版本(jdk1.7应该也行)。…

OpenKruise v0.8.0 核心能力解读:管理 Sidecar 容器的利器

简介: OpenKruise 是阿里云开源的云原生应用自动化管理套件,也是当前托管在 Cloud Native Computing Foundation (CNCF) 下的 Sandbox 项目。它来自阿里巴巴多年来容器化、云原生的技术沉淀,是阿里内部生产环境大规模应用的基于 Kubernetes 之…

请把ios文件解压出来是什么意思_【张小亮】最新版本行会3。中文版本。解压即玩。...

电脑游戏目录【回复:电脑游戏】手机游戏目录【回复:手机游戏】【张小亮】最新版本行会3。中文版本。解压即玩。【名称】行会3【大小】4.12 GB【版本】v0.9.9【系统】电脑游戏【下载】本文中【往下滑】【安装】1。请下载【好压】这款解压软件进行解压。2。…

数据结构是如何装入 CPU 寄存器的?

作者|码农的荒岛求生来源|码农的荒岛求生有同学问了这样一个问题:既然CPU内部的寄存器数量有限,容量有限,那么我们使用的庞大的数据结构是怎样装入寄存器供CPU计算的呢?这篇文章就为你讲解一下这个问题。内存与数据真正有用的程序…

基于WASM的无侵入式全链路A/B Test实践

简介: 我们都知道,服务网格(ServiceMesh)可以为运行其上的微服务提供无侵入式的流量治理能力。通过配置VirtualService和DestinationRule,即可实现流量管理、超时重试、流量复制、限流、熔断等功能,而无需修改微服务代码。 本文所…

网易游戏基于 Flink 的流式 ETL 建设

简介: 网易游戏流式 ETL 建设实践及调优经验分享~ 网易游戏资深开发工程师林小铂为大家带来网易游戏基于 Flink 的流式 ETL 建设的介绍。内容包括: 专用 ETLEntryX 通用 ETL调优实践未来规划 一. 业务背景 网易游戏 ETL 服务概况 网易游戏的…

potplayer 多个进程_创建守护进程的步骤

什么是守护进程?答:守护进程是后台运行的、系统启动是就存在的、不予任何终端关联的,用于处理一些系统级别任务的特殊进程。实现思路:实现一个守护进程,其实就是将普通进程按照上述特性改造为守护进程的过程。需要注意…