我是一家公司的全栈开发培训生。我在做网上书店的项目。我的经理问了一个问题。
他问">如果有人,即其他开发人员知道你的代码或API,他们可以改变你的项目中的代码或API,并将自己添加为管理员,或者可以从数据库中删除一些用户,并通过改变你的API来执行CRUD操作。怎么解呢?"。
我的建议是:与其把代码放在本地机器上,不如把代码放在其他服务器上。
请提出你的意见和正确答案。
我建议您使用像github
或gitlab
这样的代码存储库。在将项目作为存储库上传之后,更改存储库的设置,这样就不允许其他人更新代码(no other contributor)。您在生产环境中的项目代码应该基于这个存储库进行部署。不仅仅是更新,你还可以将你的存储库设为私有,这样就没有人可以看到你的代码。
我相信您的问题主要与运行时行为或对rest服务的控制有关。这就是保安发挥作用的地方。网关通过过滤资源路径发挥作用。他知道的API端点可以在Gateway上进行过滤或重新映射。通过身份验证和授权保护应用程序增加了另一层保护。为例。人员A只有通过身份验证后才能访问应用程序。通过身份验证后,只有当该人属于SystemAdmin等类别时,人员A才能添加他/她自己。
如果它与代码管理相关,那么存储库管理就会发挥作用。为少数个人设置将更改推送到Master分支的权限。从逻辑上讲,所有开发人员都应该在分叉分支上工作,并将创建一个Pull Request来将更改推送到Master分支。这将给主分支的版主审查代码并将其过滤掉的机会。