低代码开发在开发者群体中的受欢迎程度
低代码早已不再是新鲜的概念。从简单的仪表板到复杂的应用程序,低代码应用程序正变得越来越多样化,并在企业界得到了广泛的采用。从本质上讲,低代码是应用程序开发的一种可视化范例,它涉及拖放预构建的组件和集成,从而实现了快速,轻松且不易出错的开发。
低代码的优势在于,它使非传统开发背景的用户能够参与应用程序开发过程,从而降低开发门槛并加快项目进度。随着组织在资源有限和开发人员稀缺的情况下满足不断增长的数字化需求,这也缩小了供需缺口。与传统的开发范式相比,低代码平台的出现使泛开发人员(例如业务分析师,业务线用户,初级开发人员)易于构建应用程序,同时大大缩短了交付时间。
但是,为泛开发人员提供的生产力和速度并不是低代码开发的唯一好处。如今,低代码开发平台还具有专门为从企业 IT 团队到 ISV 的专业开发人员而构建的功能。这些平台经过强化,可用于企业用途,能够利用复杂应用程序的可伸缩性和安全性需求,并且具有足够成熟的集成功能,可以无缝地与现有工具和技术配合使用。
在疫情爆发期间,许多企业通过采用低代码平台和应用程序进行了重塑,从而帮助他们适应了突然转移到远程工作场景并满足随之而来的必要现代应用程序需求。
低代码和远程工作带来的安全挑战
与传统开发相比,低代码涉及各种角色,共同构建应用程序,同时处理自动生成的代码、现成的组件和内置的默认配置。环境的这种变化揭示了一些需要解决的独特挑战。建立在低代码上的远程团队面临一些常见的安全挑战。
应用程序开发和远程团队协作
- 缺乏安全意识:低代码工具的用户很多来自商业背景,一些人员不熟悉应用程序安全最佳实践,并且对潜在的漏洞和安全漏洞缺乏认识和了解。
- 平台访问和管理控制:低代码集中部署,可通过浏览器访问供整个企业中的用户使用。这带来了网络入侵的风险。比如为未经授权的开发人员提供访问权限,并为远程访问平台时不需要它的用户提供更大的权限。
- 代码存储库和团队协作:低代码平台必须确保自动生成的代码可以提交给企业认可的存储库。不应滥用此代码访问权限,并且应该具有适当的协议来进行代码控制和升级。
代码生成和 DevSecOps 最佳实践
- 保护自定义代码:低代码工具允许编写自定义代码,以扩展和实施平台编码准则和设计模式,以保护敏感数据免遭未经授权的访问。
- 遵循安全的发布惯例:与现有的企业 CI/CD 管道集成非常重要,因此开发团队可以在生产之前将相同的发布管理协议扩展到自动生成的代码。
应用程序访问和数据保护
- 防止恶意攻击:如今,Web 和移动应用程序都日益成为安全漏洞的目标。自动生成的代码以及公民开发人员可以远程工作,可以使低代码的应用程序更容易受到漏洞的攻击。平台应生成完全受到网络钓鱼攻击,SQL 注入,暴力攻击和 DOS 攻击保护的应用程序。
- 安全的数据和应用程序访问:低代码平台应提供全面的访问控制机制,以防止未经授权访问数据和应用程序功能。通过远程团队随时随地从任何设备访问应用程序,可以通过适当的控制来防止数据泄露。
低代码和安全性 —— 发展的未来
随着企业和 ISV 在更重要的业务中转向低代码,更大的问题仍然存在。低代码平台是否可以使现代开发团队更快地交付应用程序,同时仍能实现安全且严格控制的环境?答案是,是的,他们可以!但是,开发团队在考虑低代码平台时必须考虑以下安全检查表:1、所选的低代码平台必须在企业安全的 DMZ 或安全的私有云中建立,并且必须毫不费力地通过网络安全许可。
该平台必须对自动生成的代码以及开发人员编写的自定义代码实施最佳的编程实践(编码约
定,设计模式和数据加密),以简化与现有 CI/CD 流程和工具的集成。
该平台必须针对 Web 和移动应用程序的十大 OWASP 漏洞提供全面保护,并拥有第三方认证以保证代码质量和安全性。此外,组织应确保所选平台的二进制文件以及 CVE 库中列出的所有第三方依赖项(包括开源库)中均不存在漏洞。
该解决方案必须支持多个身份验证提供程序(数据库,LDAP,AD,SSO,SAML,Open-ID,多因素,生物识别),以构建具有强大用户安全性的应用程序。对于用户授权,请确保同时支持粗粒度访问控制策略和细粒度访问控制策略,以保护基于 RBAC 的应用程序的各个方面。
开发团队可以采用低代码技术,同时确保适当的安全最佳实践。低代码将保留下来,并且借助正确的平台,企业和 ISV 可以确保在开发过程的早期就将安全性向左转移并由开发人员解决。结果是高效率的远程劳动力生产出了现代,可扩展和安全的应用程序。