开发者社区> 问答> 正文

开源社区该如何建立“可控开源”体系?

4000积分,picano双肩包*3

近年来,开源理念得到了越来越广泛的认可,以开源软件为基础构建信息系统成为主流趋势,不论是个人开发者还是企业,许多开发者表示,利用开源代码可以提升开发效率,同时也能让自己把更多精力放在打磨个性化代码上,同时,由于许多开源项目的发起和维护者众多,因此更多的人可以快速响应代码中的漏洞并在发现漏洞时进行补救,开源开发人员对安全性和漏洞的了解比以前更高。

但是使用开源代码还是会面临很多安全问题,在防御方面,代码是公开的,因此开源代码会更加容易被攻击,目前的开源社区面临着安全开发机制欠缺、维护人员不足等等问题,导致全球开源安全事件频发。那么我们应该如何更好的去发展开源生态,尽可能的去避免安全事故的发生呢?欢迎大家参与讨论~

本期话题:

  • 开源社区需要为开源软件的安全负责吗?

  • 为了开源生态能更好的发展,应该如何保证“开源可控”?

  • 上云能从一定程度上解决开源带来的安全性问题吗?

本期奖品

截止2023年3月10日24时,本次话题将选取3名高质量的回答,奖励picano商务双肩包*1。

商务背包.jpeg

注:话题讨论要求原创,如有参考,一律注明出处,否则视为抄袭不予发奖。获奖名单将于3个工作日内公布,礼品将于7个工作日内发放,节假日顺延。

本期话题截止3月10日24时,共收获143条回复。看到大家的精彩讨论小编想说:感谢大家贡献的高价值回答!本次奖品获奖名单如下(公示期3天):

sky9ali、上进小菜猪、huc_逆天

展开
收起
提个问题 2023-03-02 11:00:45 72757 1070
153 条讨论
参与讨论
取消 提交讨论
  • 云服务提供商会对其基础架构进行安全加固和监控,以确保其安全性。这意味着程序将在更安全的基础架构中运行,从而减少了某些攻击面。

    上云可以提供更好的灵活性和可扩展性。可以根据需要增加或减少资源,以满足应用程序要求。。

    云服务提供商通常提供许多安全性工具和服务,例如网络防火墙、入侵检测和防御系统、数据加密和备份等。这些工具可以帮助更好地保护的应用程序和数据。

    上云可以提供更好的可视性和监控。可以使用云服务提供商提供的工具和服务来监控应用程序和基础架构,以及检测和响应安全事件。

    2023-03-15 21:07:35
    赞同 3 展开评论 打赏
  • 参考ChatGPT和自己的思路

    开源社区需要为开源软件的安全负责,这是不可回避的问题。随着开源项目的不断增多,开源社区也需要不断加强对安全问题的关注和监管。同时,开源社区应该建立一套完善的“可控开源”体系,来保证开源软件的可靠性和安全性。

    这个“可控开源”体系应该包括以下几个方面:

    1. 安全开发机制:开源社区应该建立一套严格的安全开发机制,包括安全编码规范、代码审查机制、漏洞报告和修复机制等。开源社区还应该加强对开发者的安全意识教育,提高他们对安全问题的认识和警惕性。

    2. 维护人员充足:开源社区应该保证维护人员的充足,以及及时响应安全漏洞的准备工作。同时,开源社区应该建立一套安全漏洞报告机制,以加强对漏洞的修复和披露,让攻击者无法利用漏洞攻击开源软件。

    3. 代码审查和测试机制:开源社区应该建立一套完善的代码审查和测试机制,包括静态代码分析、动态代码分析、黑盒测试和白盒测试等。通过这些测试机制,开源社区可以发现并修复潜在的安全漏洞,保证软件的可靠性和安全性。

    另外,开源社区也可以通过上云的方式来解决开源带来的安全问题。云服务商可以提供安全防护服务和安全审计服务,帮助用户更好地保护开源软件的安全性。

    总的来说,为了发展健康的开源生态,开源社区需要建立一套完善的“可控开源”体系来保证开源软件的可靠性和安全性。同时,上云服务也可以是一个有效的解决方案。

    2023-03-14 19:24:26
    赞同 2 展开评论 打赏
  • 开源还有遵循开源协议的,要不然会给开源社区和开发者带来不稳定的因素

    2023-03-14 15:23:59
    赞同 1 展开评论 打赏
  • 1.明确开源协议和规范:开源社区需要明确开源协议和规范,确保开源项目的合法性和可持续性。开源协议的选择应该根据项目的特点和需求进行,例如GPL、MIT、Apache等。 2.建立开源项目的治理机制:开源社区需要建立开源项目的治理机制,包括组织架构、管理流程、决策机制等,确保项目的可控性和透明度。开源项目的管理应该由多方参与,包括项目负责人、开发者、用户、社区成员等。 3.加强社区安全和风险控制:开源社区需要加强社区安全和风险控制,避免因为安全漏洞或错误造成损失或法律风险。社区应该建立安全漏洞报告和处理机制,及时修复漏洞和错误,避免损失和法律纠纷。 4.建立可持续的开源生态:开源社区需要建立可持续的开源生态,包括开源项目的商业模式、资金来源、人才培养等。开源项目的商业模式应该根据项目的特点和需求进行选择,包括捐赠、广告、服务、产品等。 5.加强社区参与和贡献:开源社区需要加强社区参与和贡献,扩大社区影响力和可持续性。社区应该建立贡献者奖励机制,鼓励更多的开发者和用户参与到开源项目中来。 总之,建立“可控开源”体系需要开源社区的多方努力和参与,包括社区管理、开发者、用户、社区成员等。只有建立了可控的开源生态,才能够推动开源项目的可持续发展。

    2023-03-13 15:59:57
    赞同 1 展开评论 打赏
  • 开源社区需要为开源软件的安全负责吗? 开源软件的安全问题是一个长期存在的挑战,而开源社区在这个挑战中扮演着重要的角色。虽然开源软件的安全问题并不一定是由开源社区自身引起的,但是开源社区在开发、维护和推广开源软件的过程中,需要对开源软件的安全问题负起责任。

    以下是开源社区应该为开源软件的安全负责的原因:

    保护用户利益:开源软件是由用户使用的,因此开源社区需要为保护用户的利益而负责。如果开源软件存在安全问题,将会给用户带来潜在的风险和损失,因此开源社区需要为确保开源软件的安全性负责,保护用户的利益。

    维护开源生态的信誉:开源生态是一个相互依存的生态系统,任何一个开源软件的问题都可能对整个生态系统造成影响。如果开源软件存在安全问题,将会影响整个开源生态的信誉和声誉,因此开源社区需要为确保开源软件的安全性负责,维护开源生态的信誉。

    加强社区自我监督:开源社区的自我监督是确保开源软件质量和安全性的重要手段。如果开源社区不为开源软件的安全问题负责,将会导致社区自我监督机制的失效,从而影响开源软件的质量和安全性。

    因此,开源社区需要为开源软件的安全负责。在开源软件的开发、维护和推广过程中,开源社区需要采取相应的措施,如代码审查、漏洞管理、安全修复和安全指导等,以确保开源软件的安全性和质量。同时,开源社区也需要与用户、行业组织和安全专家等密切合作,共同推动开源软件的安全和可靠性。 为了开源生态能更好的发展,应该如何保证“开源可控”? 开源软件的可控性是指能够保证开源软件的源代码和发行版本不受非授权人员的篡改和操控,确保软件的安全性和可靠性。保证开源软件的可控性对于开源生态的健康发展非常重要,以下是一些保证开源可控的建议:

    采用开源协议:开源软件必须采用开源协议,这有利于维护开源软件的可控性,因为开源协议规定了开源软件的使用、修改、分发等规则,确保开源软件的源代码和发行版本不受非授权人员的篡改和操控。

    代码审查:在开源软件的维护和开发过程中,需要采取代码审查机制,以确保代码质量和安全性。代码审查可以通过人工审查和自动化审查相结合的方式进行,及时发现和修复潜在的安全漏洞和错误,从而保证开源软件的可控性。

    社区参与:开源软件的社区参与是保证开源软件可控性的重要手段。社区参与可以让更多的人参与到开源软件的开发和维护中来,通过协作来维护开源软件的安全和可靠性。

    开放透明:开源软件必须保持开放透明,即开源软件的源代码和开发过程必须对外公开。开放透明可以让更多的人了解开源软件的发展和维护情况,有助于发现和修复潜在的问题,从而提高开源软件的可控性。

    安全维护:开源软件的安全维护是保证开源软件可控性的重要手段。开源软件必须及时更新和修复已知的安全漏洞和问题,同时提供完善的安全措施和建议,以确保用户使用开源软件的安全和可靠性。

    综上所述,保证开源软件的可控性需要采取多种措施,包括采用开源协议、代码审查、社区参与、开放透明和安全维护等。这些措施可以保证开源软件的安全和可靠性,促进开源生态的健康发展。 上云能从一定程度上解决开源带来的安全性问题吗? 将应用程序和数据迁移到云平台是当前的一个趋势,这也包括将开源软件应用迁移到云平台上运行。从某种程度上来说,将应用程序和数据迁移到云平台上可能会解决一些开源软件带来的安全性问题,但是这并不能完全解决所有的安全问题,以下是几点说明:

    安全责任转移:将应用程序和数据迁移到云平台上,不代表安全问题就被解决了。尽管云服务提供商提供了各种安全服务和措施,如访问控制、数据加密和漏洞管理等,但用户和云服务提供商的安全责任仍然是共同承担的。用户需要了解云服务提供商的安全措施和政策,同时也需要加强自身的安全管理和监控。

    开源软件的特点:开源软件具有广泛的应用和参与度,这也意味着开源软件存在大量的漏洞和安全问题。虽然云服务提供商可以提供漏洞管理和修复服务,但是开源软件的漏洞和安全问题需要由开源社区或开源软件的维护者进行修复和管理。因此,用户需要选择可靠的开源软件,同时也需要参与到开源社区中,帮助发现和修复开源软件的漏洞和安全问题。

    云环境的特点:云环境是一个多租户、共享资源的环境,这也使得云环境面临着一些独特的安全挑战,如隔离、共享资源利用和跨云攻击等。用户需要了解云环境的安全特点,选择适合自身业务的云服务模式和云安全服务,同时也需要加强云环境的安全监控和管理。

    因此,将应用程序和数据迁移到云平台可以在一定程度上解决开源软件带来的安全性问题,但是需要注意安全责任转移、开源软件的特点和云环境的特点,加强安全管理和监控,共同维护应用程序和数据的安全性。

    2023-03-13 09:44:09
    赞同 3 展开评论 打赏
  • 阿里社区萌新团团长凯文,和我交朋友吧~

    开源必须要保证质量和安全可控

    2023-03-11 10:53:18
    赞同 1 展开评论 打赏
  • 全栈JAVA领域创作者

    开源社区需要为开源软件的安全负责吗? 开源社区在推动开源软件发展的同时,也应该为开源软件的安全负责。开源社区可以通过完善开源软件开发流程、加强代码审查和漏洞修复、建立安全知识库等方式,提高开源软件的安全性,并及时响应安全事件,避免安全风险扩大化。同时,开源社区还应该积极营造开放透明、协作共赢的开源文化,鼓励开发者和用户参与开源软件的安全维护和改进。

    为了开源生态能更好地发展,应该如何保证“开源可控”? 为了保证“开源可控”,开源社区可以采取以下措施:

    加强源代码管理:开源社区应该建立严格的源代码管理机制,确保源代码的安全性和完整性,避免恶意篡改和植入后门。 强化代码审查:开源社区应该建立健全的代码审查机制,从源头上杜绝安全隐患,及时发现并处理潜在的漏洞和安全问题。 建立安全社区:开源社区可以建立专门的安全社区,聚集安全专家和开发者,定期对开源软件进行安全评估和测试,及时发现和解决安全问题,提高开源软件的安全性和质量。 推广最佳实践:开源社区应该积极推广安全最佳实践,包括代码编写规范、安全编码、安全测试等方面,提高开发者和用户的安全意识和技能。 上云能从一定程度上解决开源带来的安全性问题吗? 上云可以从一定程度上解决开源带来的安全性问题。云计算平台通常具备更高的安全性能和防护能力,可以有效抵御各类攻击和风险,在某种程度上提高了开源软件的安全性。此外,云计算平台还可以提供完整的安全解决方案、持续的风险监测和自动化的安全防护措施,为企业和用户提供更加全面和可靠的安全保障。

    然而,上云并不能完全解决开源带来的安全性问题。开源软件本身存在漏洞和安全隐患,如果没有得到及时修复和更新,将依然存在安全风险。因此,在使用开源软件的同时,企业和用户仍需关注安全问题,及时升级漏洞修复补丁,加强安全防护和监测,以保障系统和数据的安全性。

    2023-03-10 22:50:49
    赞同 2 展开评论 打赏
  • 大鹏一日同风起,扶摇直上九万里

    1,开源社区需要为开源软件的安全负责吗?

    必须、一定、以及肯定需要为自己的开源软件的安全负责。如果该开源软件涉及商业附加服务,那更加难逃其责,而且是有法律的责任。 如果提交代码频率越高,那代表社区积极活跃度越高,因此出现安全问题的风险也较高。原则上是会被更多的公司、组织、个人主体等使用到,所以出现问题后涉及范围之广,影响层面之大是可想而知的。 比如 2016年全网修复OpenSSL漏洞还历历在目,因为第一个低级别漏洞修复后,引发 2个更高级别、威胁更大的漏洞。注意第一个是 4.3分的DoS漏洞,只是拒绝服务,后面引发的是最高风险 10分的Exec code漏洞。如果不是开源社区为此漏洞负责,不是Contributors第一时间修复漏洞。万一黑客利用漏洞exp,给社会,给企业,给个人带来的风险难以想象。

    图片.png

    2,为了开源生态能更好的发展,应该如何保证“开源可控”?

    除了以上社区要为自己代码负责,第一时间修复CVE漏洞外。开源代码所在平台也需要做好第二道防火墙。 大家首先想到的肯定的是最大的男性交友平台-Github。 Github日常使用中有很多保护代码安全,不被入侵篡改等措施。

    比如:成员之间采用最小可用权限维护代码,代码push/pull的高安全认证机制等。 比如发现漏洞安全通知: 图片.png

    此外更重要的是有代码扫描和分析功能。 不过是需要授权github侧对你的代码发起扫描。 尤其是secret scanning 可以帮扫描出密钥对和token是否放在代码里,并开放出去。 Receive alerts on GitHub for detected secrets, keys, or other tokens.

    图片.png

    如果作为社区或者企业组织可以购买github的“GitHub Advanced Security”功能。

    图片.png

    https://docs.github.com/zh/code-security/getting-started/github-security-features

    阿里云貌似也有购买,如果你有使用阿里云的话,阿里安全中心会定时扫描 AccessKey ID和AccessKey Secret,是否暴露Github公网上,扫描到会提醒客户。话说,身边已经有多位同学同事因为缺乏安全意识,直接丢AK上去的,被阿里云扫描到通知到CSO,这样的结果肯定不是很好的了,因为安全意识是开发者基本要求。

    所以开发者作为代码维护者和第一位使用者,是代码安全的主要负责任,是第三道防线(此处不讲顺序和主次)。

    3,上云能从一定程度上解决开源带来的安全性问题吗?

    还有一道主要防线就是跑代码的载体所在的服务厂商啦。比如IDC机房,IaaS云厂商等。 中间大家可能还有很多第三方依赖,IDE编译器,系统,框架服务,容器镜像,容器编排运行平台,FAAS平台等等也非常容易出现安全问题。但如果按目前主流上云节奏来看,比如阿里云,就可以提供以上最后一道防线的需求所有产品,那自然也要承担起这些产品防线的安全可控。大家可能觉得奇怪以上阿里云产品 有开源的吗?事实上答案是绝大多数(有可能是全部,但我不是叔同,不能说太绝对啦)。

    比如阿里云大量使用了开源的软件来翻译成自己的商品,或者说是加强版的商品,因为阿里云开发者们为了将该产品能使用主流化,符合高并发高流量请求,打造了不同的版本和架构,例如RDS-MySQL阿里云版本,基于开源MySQL演化升级而来,但又做了大量的优化,有别于开源,但又兼容开源产品。

    还有比如ACK平台,阿里云使用的是开源的Kubernetes,但又不知道他们做了多少优化,功能组件升级,贡献了多少给CNCF,才有了现在这么丰富的K8S生态。还有其它SLB、MQ、ECS等等不一一例举了。 发现没,越是开源的产品,大家使用的越多。为什么?因为个人理解,有个重要的原因是之前大部分中小公司都有使用开源软件的习惯,因为维护侧、安全侧无法把控的更好,比如多款开源软件需要多位技术协同维护,而麻烦在于一旦出现问题比如漏洞,维护代价很高。但阿里云在大量工程师维护成特有的可控的产品后,由于先入为主,很多中小企业决策者就愿意使用了阿里云的这款类似的开源产品,谁不愿意在一堆疑难杂症问题拂袖脱身,去做更有利于业务的事情呢。

    阿里云现在大部分产品都是免运维、托管的Serverless,SAAS产品,安全可控肯定是每款产品必须的属性,此外还有云盾、云安全、态势感知、WAF、DDOS等安全防护产品,协助您的开源代码,应用可控,让您高枕无忧。

    2023-03-10 21:32:56
    赞同 2 展开评论 打赏
  • 一名在读研究生程序猿,欢迎大家指教,我们共同进步!

    开源社区当然需要为开源软件负责,事实上应该去考虑建立一套"可控开源"的体系.

    开源软件虽然受到使用者的青睐,但不是绝对安全的,除非使用时不需要任何个人或者企业信息,但在目前看来这种情况是不可能的,开源软件被开发出来以后,面临很多的风险.比如: - 恶意代码注入(软件或者算法开源以后所有人都可以自由使用,随意修改,很多人会将木马之类的恶意代码注入然后发布其他版本供大家使用,用以套取用户信息或者损坏用户电脑) - 开源的软件也好,算法也好,后期都缺乏更新维护. 所以,开源社区虽然能够依靠庞大的用户数据挣钱,但是同时也应该为开源产品进行负责.

    上云可以一定程度上解决安全性问题,因为云平台毕竟提供了较为完善的安全措施和技术,用户也可以快速的部署和使用,但是企业在上云时也需要注意关键的安全问题.否则会造成很大的麻烦.需要保证业务连续性。迁移的过程要保证原有业务和原有数据的连续和一致,这就需要在迁移的同时合理规划一套保障体系,灰度发布、流量管理可以很好的应对这个问题。

    2023-03-10 17:41:11
    赞同 2 展开评论 打赏
  • 公众号:网络技术联盟站,InfoQ签约作者,阿里云社区签约作者,华为云 云享专家,BOSS直聘 创作王者,腾讯课堂创作领航员,博客+论坛:https://www.wljslmz.cn,工程师导航:https://www.wljslmz.com

    软件的开源以及活跃的开源社区确实给企业、个人开发者带来极大的便利,同时也推动了软件开发这个领域的发展!开源社区的开发者数量的庞大、开源软件的丰富,可以掀起一波又一波的变革,本质上是有利于发展的,也符合发展的规律。但是万事都是辩证的,开源也有另外一面:安全性

    借助于阿里云问答话题讨论,有幸将自己对于开源社区该如何建立“可控开源”体系看法与各位朋友进行讨论。

    对于开源的看法,在开头已经阐述了,确实是一把双刃剑,但是我的看法就是利远远大于弊!

    讨论一:开源社区需要为开源软件的安全负责吗?

    所谓的代码安全问题,确实有,而且一旦发生,会带来不小的负面影响,但是在设计、开发某款开源软件或者程序的时候,开发者本身不一定能够处理的面面俱到的,正因为“众人拾柴火焰高”,一个人的力量想不到那么多问题,才需要开源,不断的去润色,逐渐成为一个成熟的、安全的开源程序,这才是良性的。所以我个人认为开源社区不需要为开源软件的安全负100%责任,但是也不是说一点责任也不负,比如说明明已经有开发者提了有安全漏洞,或者使用者也向开源社区提了某某开源程序有安全漏洞,这个时候社区没有及时提醒相关开源程序的开发人员,这种情况,我觉得,社区是有责任的。

    讨论二:为了开源生态能更好的发展,应该如何保证“开源可控”?

    这个在我看来“控”可以体现在几个方面:

    首先,开源程序的开发者需要对自己的开源程序进行“控”,没有十足把握的功能不要轻易开放,开放后也有不断测试,修复频率要高,甚至前期可以邀请更多的开发者加入进来,等积累到一定量级的时候,需要及时关注自己的程序别人所提的bug,不给bug喘气的时间,及时修复。对于测试出有重大bug的情况,需要及时公布,如果在短时间内无法修复,最好还能撤回相关功能,减少使用者的损失。

    其次,开源社区需要加强对热门开源程序进行“控”,对于互联网上反馈的漏洞,社区也应该有自己的判断,比如重大漏洞的,应该及时通知相关开源程序的负责人,酌情关闭其入口,对于不会造成重大损失的漏洞,社区也应该更进其修复进度,这样的话,社区也尽到了该尽的责任,假如某某安全漏洞是某社区中的一个开源程序导致的,这个时候会大大降低使用者以及其他开发者对社区的信任度,所以在“控”上,社区理应比开发者本身更加谨慎。

    最后,开源程序的使用者也要有“控”的意识,要做到不能100%相信“雏鹰”程序,对于成熟程序,在使用的时候也要加强测试。

    讨论三:上云能从一定程度上解决开源带来的安全性问题吗?

    这个我觉得一定程度上应该可以解决开源带来的安全性问题,毕竟能够上云的开源程序,一定是云提供商经过大量测试、评估才决定收录的,所以使用者大多数不会遇到难以解决或者说能造成极大破环的安全漏洞,即使有,因为用的是上云的开源程序,云提供商可以速度下线或者回退版本,这样的话对于风险的控制会处理的很好。不过即使如此,对于开源程序的监管是云提供商每天必做的功课,只有这样,才能让开发者尽情发挥自己的才华,使用者尽情无忧去使用。

    以上就是我的个人拙见,希望在看的朋友能够与我讨论,感谢阅读!

    2023-03-10 15:59:02
    赞同 2 展开评论 打赏
  • 努力在努力

    开源必须要保证质量和安全可控,我参与了阿里云10多个项目,贡献的pr已经超过100多个了,发现开源维护者很缺少,需要增加一系列的安全测试和ut测试来保障项目的稳定性和质量

    2023-03-10 15:33:50
    赞同 1 展开评论 打赏
  • 首先,云计算提供了更强大的安全性能力,包括防火墙、反病毒、入侵检测和预防等,可以帮助开发者和用户保障开源软件的安全性。云计算服务提供商也会对自己的云平台进行安全性评估和审查,确保其基础设施和服务的安全性。

    其次,云计算还可以提供更加丰富和灵活的安全性解决方案,包括网络安全、数据安全、应用安全等多个方面,以满足不同用户的安全需求。

    最后,云计算还可以提供更加便捷和高效的安全性管理和监控机制,可以帮助用户及时发现和解决安全问题,有效地防范安全风险。

    然而,需要注意的是,上云并不能完全解决开源带来的安全性问题,仍然需要开源社区、开源软件供应商、用户等各方积极参与,建立和完善开源软件的安全性管理和维护机制,共同保障开源软件的安全性和可靠性。

    2023-03-10 14:23:51
    赞同 1 展开评论 打赏
  • 首先开源社区的出现,极大地促进了开源软件的开发,但是只要是软件,都会或多或少存在一些安全问题,作为社区,有一定的责任去避免或者维护这些安全问题,但是光靠社区自己是远远不够的,我们都知道大部分开源项目是没有资金收入来源的,大家都是在用爱发电,都是靠大家业余时间来维护和开发项目。所以有些时候,更多的是需要开源项目的使用者参与到项目的维护和开发中来,个人认为,只有互帮互助的开源社区,才能更好地发展,只有更多的使用者参与到安全维护中来,开源软件的安全才能进一步提升。

    我们都知道一般的开源项目起始都是几个人在维护,随着项目的壮大,越来越多地人和组织会参与到项目中来,这个时候,如何去控制开源项目的发展方向,或者如何让开源项目朝着根更好的方向发展就成为了一个重要问题,业界目前更多的机制是进行投票表决,但是这其实还是有一些问题的,因为有些时候真理往往掌握在少数人手中,所以更多的时候,开源项目需要一些独裁者,比如linux的linus,比如python的gudio等。它们的决定权更能让项目朝着可控的方向发展。

    最后就是开源项目的上云是否可以解决安全性问题,从一定程度上来说,的确可以解决大部分安全问题,因为云盾等服务的存在,可以杜绝和避免大部分攻击,同时,上云之后,还会享受到一些代码的云端检查功能,可以进一步审查出安全代码。但是上云并不能解决全部安全问题,有些安全问题可能因为上云更进一步暴露在用户面前,所以个人觉得,要解决开源安全性问题,需要各方面的努力,从代码审核开始,也许更能从根上发现问题。

    2023-03-10 11:28:08
    赞同 1 展开评论 打赏
  • 上云可以从一定程度上解决开源带来的安全性问题。云计算提供了一个多层次的安全体系,可以提供可靠的数据安全性和保护。它可以提供基于身份验证和访问控制的安全性,这可以避免未经授权的访问,从而确保数据安全性。此外,云计算还可以提供安全的存储和备份,以及可靠的网络安全性,以保护系统免受病毒和恶意软件的攻击。 除此之外,还可以通过以下手段保证开源的安全性: 1.定期审核代码:定期审查代码可以帮助发现潜在的安全漏洞,并及时修复它们。 2.加密数据:加密数据可以有效地防止未经授权的访问和攻击。 3.使用安全的认证机制:使用安全的认证机制,可以确保只有授权的用户才能访问系统。 4.安装安全补丁:安装安全补丁可以帮助修复潜在的安全漏洞,以防止攻击。 5.使用防火墙:使用防火墙可以阻止未经授权的访问和攻击。

    2023-03-09 20:34:56
    赞同 1 展开评论 打赏
  • 首先要建立一个完善的规章制度,规定开源社区的规范和管理制度,明确开源社区的管理责任,并贯彻执行。其次,要建立一套完善的管理机制,建立一个完善的管理机构,明确管理职责,实行分级管理,确保社区的可控性。再次,要建立一个完善的技术管理体系,建立一个完善的技术管理机构,明确技术管理职责,实行分级管理,确保社区的技术可控性。最后,要建立一个完善的信息安全管理体系,建立一个完善的信息安全管理机构,明确信息安全管理职责,实行分级管理,确保社区的信息安全可控性。

    开源社区需要为开源软件的安全负责。开源软件的安全是开源社区的重要责任,因为这些软件可能会被用于商业用途,因此安全是非常重要的。开源社区应该采取有效措施来确保开源软件的安全性,比如定期进行安全测试,实施安全策略,以及定期更新软件。

    2023-03-09 20:12:33
    赞同 1 展开评论 打赏
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    我经常会把一些自己写的项目放在开源社区上,比如github,码云这些平台,可能会经常维护一些代码,更新一下功能,但是作为一名开发者肯定是希望开源社区平台有安全保护机制,既然开发者把代码放在你平台了,就得保障代码安全性,如果社区连代码仓库安全性都无法保证,怎么去运营社区,怎么让更多开发者或者企业公司把项目放在平台,就像一个公司企业内部私密项目放在开源上去了,没有开源,结果因为社区的问题导致代码遭到攻击或者泄露,这就严重影响了企业项目运行。作为开发者一定要配合开源社区体系建立,开源项目不要一味的只会clone抄袭,不给开发者点赞,提出一些建议,这样让开发者就没有啥动力,所以说要共同去维护这个开源社区

    2023-03-09 17:32:20
    赞同 2 展开评论 打赏
  • 一起交流大数据和AI问题:)

    我是一名阿里云用户,也是一名热爱开源技术的开发者。在使用阿里云的开源产品时,我也深感开源软件所带来的高效和便利,但同时也注意到开源软件的安全问题。因此,今天我想和大家分享一些关于如何建立“可控开源”体系的讨论。

    1、开源社区需要为开源软件的安全负责吗? 开源社区作为软件的开发和维护者,应该为开源软件的安全负责。开源软件在广泛应用的同时,也面临着各种安全问题,如漏洞、恶意代码、不当使用等。这些问题不仅会对软件本身造成损失,还会对用户的信息安全和隐私造成风险。因此,开源社区应该为软件的安全负责,及时修复漏洞、更新版本、提供安全策略等。 此外,开源社区还应该加强安全意识教育和培训,提高开发者对安全问题的认识和应对能力。只有建立起全员参与的安全文化,才能有效防范安全威胁。

    2、为了开源生态能更好的发展,应该如何保证“开源可控”? 保证“开源可控”是建立可信赖开源生态的关键。为了实现这一目标,需要以下几方面的努力: (1)加强开源软件的安全性测试和审计,及时发现和修复安全漏洞。 (2)建立开源软件的质量标准和审核机制,确保软件的可靠性和安全性。 (3)提供完整、透明的代码库和文档,让用户能够对软件进行全面了解和审查。 (4)建立开源社区的治理机制,保证社区的公正、透明和民主,维护社区的稳定和发展。 (5)鼓励社区成员参与软件的开发和维护,促进社区共建共享。 (6)提供开源软件的商业支持和维护服务,保证用户的权益和利益。 只有建立起可信赖、开放、公正、透明的开源生态,才能为开源技术的广泛应用和长期发展奠定基础。

    3、上云能从一定程度上解决开源带来的安全性问题吗? 我认为上云可以从一定程度上解决开源带来的安全性问题。云服务提供商可以提供更加安全可靠的开源产品,同时也可以为用户提供更加全面的安全保障。用户可以通过云服务提供商提供的安全控制和监管工具来保证开源软件的安全性。但是需要注意的是,上云并不能完全解决开源带来的安全性问题,仍需要加强开源软件本身的安全性和监管。

    总之,开源社区需要为开源软件的安全负责,我们需要建立一个可信赖的开源生态环境来保证“开源可控”。同时,上云可以从一定程度上解决开源带来的安全性问题。但我们仍需要在开源软件本身的安全性和监管方面加强措施,为开源生态的健康发展贡献自己的力量。

    2023-03-09 16:46:41
    赞同 2 展开评论 打赏
  • 开源社区建立“可控开源”体系需要给开源项目激励机制。说句心里话,我挺心疼开源项目开发者。开源项目开发者投入了很多时间、精力才有这些开源项目的,作为用户应该多给开源项目一些支持、鼓励,不能只索取,不贡献,哪怕点一个github star也好,这样开源项目开发者才能够有动力持续不断地维护下去。

    2023-03-09 16:46:41
    赞同 2 展开评论 打赏
  • 开源社区需要为开源软件负责,如果连开源社区都不负责任了,还怎么让开发者把自己的代码上传到社区里面,毕竟作为开发者把自己的代码上传到你们这些品平台,如果开发者代码选择不公开,而平台对代码选择不管不问。代码仓库遭受到恶意攻击或者代码遭受到泄露,对开发者或者平台都会受到影响,毕竟一个项目个人开发或者团队开发,花费了大量的经历和时间去维护和管理,结果因为平台的原因,自己项目受到严重问题,这样对开发者来说是一个损失。只有开源社区把社区安全维护好了,才会有更多的开发者愿意把自己的仓库放到开源社区里面,这样是对双方都有利的。

    2023-03-09 15:35:15
    赞同 1 展开评论 打赏
  • 为了开源生态能更好的发展,“可控开源”体系需要围绕代码流通进行全链路的安全管理

    其一是来源可控。对引入的开源组件进行合规检查、安全漏洞扫描、代码分析等安全技术手段,确保引入的组件来源清晰透明。

    其二是设计可控。开源社区可以建立安全基线、规范开源组件的选型、对系统架构进行风险评估,确保社区开源软件可信安全。条件允许还可以成立安全委员会。

    其三是使用可控。社区可以提供协议一致性检查工具、漏洞检测修复等机制,保障软件运行稳定。

    其四是创新可控。开源社区要“活”起来,积极吸引开发者参与是必然的,通过降低贡献者的参与门槛,优化其参与机制和激励措施。

    优秀的开源生态需要开发者和社区共同建设。希望国产开源产品越来越多,生态建设越来越好!

    2023-03-09 11:21:32
    赞同 1 展开评论 打赏
滑动查看更多
问答分类:
问答地址:

话题讨论榜

  • 1
    如何让系统具备良好的扩展性?
    奖品池:4000积分,胶囊伞*2,午睡毯*3
    70

    在系统设计之初融入可扩展性的理念和技术手段,关键在于采用模块化、松耦合、分布式以及抽象化的架构设计原则。更重要的是理解业务发展预期,还需要熟悉各种先进的架构模式和技术工具 模块化设计:系统应划分为多个独立的模块,每个模块负责特定的功能,模块间通过清晰、稳定的接口进行交互。这样在需要扩展系统时,只需针对特定模块进行升级或增加新的模块,而不会影响到整个系统的稳定运行。 松耦合设计:降低模块间的依...

  • 2
    在JS编程中有哪些常见的编程“套路”或习惯?
    奖品池:4000积分,胶囊伞*2,午睡毯*3
    63

    模块化 现在一般使用webpack vite 使用ES6+特性,编写更简洁、更易于理解的代码。 使用事件委托来减少事件监听器的数量,提高性能。 遵循ESLint、Prettier等代码规范工具,确保代码风格的一致性。 为代码添加注释,解释复杂逻辑和关键代码的作用。 Promise/async/await 使用优雅的方式来处理 JavaScript 中的异步操作,避免“回调地狱”。 利用高阶函...

  • 3
    在做程序员的道路上,你掌握了什么关键的概念或技术让你感到自身技能有了显著飞跃?
    奖品池:4000积分,腰靠垫*5,体脂秤*2
    124

    首先看到这个问题,大脑里第一反应就是设计模式。 不过仔细想想,还是计算机的基础课上学到的知识(比如计算机组成原理、计算机网络、数据结构),让我感觉自己像个真正的程序员了。 以前对这些基础知识理解都不是很深刻,在编程的过程中才慢慢地对这些内容有些认识。 比如指令执行过程,这个对理解多线程、多进程非常重要。比如堆栈、局部性原理,这些对理解编程语言的设计,以及编写高性能的程序,都很重要。

  • 4
    作为一个经典架构模式,事件驱动在云时代为什么会再次流行呢?
    奖品池:4000积分,加湿器*2,腰靠垫*5
    124

    在云时代,事件驱动架构(EDA)再次流行起来的主要原因包括云原生技术的推动、Serverless架构的兴起、IoT技术的普及、数字化转型需求、跨组织业务协同和统一事件标准的需求等。EDA以其异步、解耦的特性,适应了云原生应用的动态性和微服务架构的需求,同时结合Serverless、IoT和数字化转型等趋势,为系统灵活性、实时性和跨组织协同提供了有效解决方案。标准化工作和云服务提供商的支持也推...

  • 5
    如何处理线程死循环?
    奖品池:4000积分,小米随身音箱*2,计时器*5
    167

    某些编程语言和框架提供了锁的高级特性,如可中断的锁获取(interruptible lock acquisition)或尝试锁定(try-lock),这些特性可以帮助避免死锁。

  • 相关电子书

    更多
    低代码开发师(初级)实战教程 立即下载
    冬季实战营第三期:MySQL数据库进阶实战 立即下载
    阿里巴巴DevOps 最佳实践手册 立即下载