当前位置: 首页 > news >正文

京东网站建设目标免费查企业电话网站

京东网站建设目标,免费查企业电话网站,购物节优惠卷网站怎么做,商城网站建设找谁做1. 前言正常Git仓库中应该尽量不包含数据库连接/AWS帐号/巨大二进制文件#xff0c;否则一旦泄漏到Github#xff0c;这些非常敏感信息会影响客户的信息安全已经公司的信誉。公司可能其它还有相关规定#xff0c;如禁止私人邮件加入GIT仓库。如果违反这些规定#xff0c;可… 1. 前言正常Git仓库中应该尽量不包含数据库连接/AWS帐号/巨大二进制文件否则一旦泄漏到Github这些非常敏感信息会影响客户的信息安全已经公司的信誉。公司可能其它还有相关规定如禁止私人邮件加入GIT仓库。如果违反这些规定可能会面临辞退、高额罚款、或牢狱之灾等非常严厉的惩罚。由于Git的正常操作流程导致敏感信息一旦进入主分支再怎么在新的Pull Request中删除也无能为力了。其它人都能在历史记录中查询到历史记录中的配置。所以这要求对Git的签名和签入、推送要有高度的敬畏之心。然而根据墨菲定律可能发生的事情一定会发生。时不时故意或失手就会有人将这些信息写到了Git仓库中。如果代码还没有上传git push那可能还好说只要将分支删除然后重新写一下功能即可。但如果已经上传了或功能太多太复制没办法及时删除就会后悔莫及了。这里我将演示一个故意写满“敏感信息”的Github仓库然后一步一步演示怎么在历史记录中删除“敏感信息”以完成“脱敏”。1.1 仓库需处理的问题说明敏感源敏感原因处理方法sdflyshaqq.com个人邮箱替换为“公司”邮箱文件Program.cs文件敏感替换文件中的敏感信息文件夹userSecrets文件夹敏感删除Program.exe大二进制删除这个演示满载“敏感”信息的代码仓库可以从https://github.com/sdcb/sensitive-repo-demo 这里下载。1.2 “敏感”信息演示个人邮箱签入“公司”项目可以通过gitk命令看到AWS Key配置写在代码中见Program.csstring awsAccessKey pwiCZSMCIcM6qh; string awsSecretKey 861YUaeCHqzaS5OXOmAK1XD37kmQhA2; Console.WriteLine(Hello, I Switched to correct email!)生产环境配置文件见appsettings.Production.json{ ConnectionString: Data Sourceproduction-db.starworks.cc,32768; User Idsensitive_user; PasswordMyVeryVerlyStr0ngPassw0rd!; Initial CatalogProductionDB; appProgram1 }敏感信息文件夹见userSecrets文件夹大二进制文件见bin\Program.exe从以上敏感信息的诚意可见小编周杰的DotNet骚操作为了写这遍文章已经拼了?。2. 如何删除敏感信息2.1 前置条件必须先切换到主分支一般为master然后获取最新代码再进行操作git checkout master git pull如果有任何修改的对象都会阻止提交因此必须先签入所有未提交的本地修改。2.2 git filter-branch-修改邮箱/用户名该命令用于解决将个人邮箱/个人用户名签入公司项目。该命令是Git客户端内置的不用下载。2.3 bfg-删除其它信息bfg([BFG Repo-Cleaner](https://rtyley.github.io/bfg-repo-cleaner/))是个强大的工具有如下功能用于删除文件内敏感信息不删文件删除敏感文件删除敏感文件夹删除大二进制文件。bfg基于Java安装很繁琐但通过choco命令可以快速进行安装先在命令提示符cmd下执行如下脚本安装choco([Chocolatey](https://chocolatey.org/))%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command iex ((New-Object System.Net.WebClient).DownloadString(https://chocolatey.org/install.ps1)) amp;amp; SET PATH%PATH%;%ALLUSERSPROFILE%\chocolatey\bin再使用choco命令安装bfg工具需要管理员权限choco install bfg-repo-cleaner期间它会自动下载JRE等组件执行效果如下需要按多次Y/Yes重点执行此命令需要以管理员权限运行cmd。3. 执行命令删除敏感信息3.1 删除个人邮箱签入“公司”项目执行如下命令即可git filter-branch --env-filter OLD_EMAILsdflyshaqq.com CORRECT_NAMEsdflysha CORRECT_EMAILsdflyshastarworks.com if [ $GIT_COMMITTER_EMAIL $OLD_EMAIL ] then export GIT_COMMITTER_NAME$CORRECT_NAME export GIT_COMMITTER_EMAIL$CORRECT_EMAIL fi if [ $GIT_AUTHOR_EMAIL $OLD_EMAIL ] then export GIT_AUTHOR_NAME$CORRECT_NAME export GIT_AUTHOR_EMAIL$CORRECT_EMAIL fi --tag-name-filter cat -- --branches --tags重点将上述脚本中的OLD_EMAIL项sdflyshaqq.com替换为你的私人错误邮箱将CORRECT_NAME和CORRECT_EMAIL换成你的公司正确邮箱该命令不能在命令提示符cmd中运行因为cmd不支持换行命令否则会出现如下错误如果执行正常将会出现此时运行gitk命令将看到可见所有“私人邮箱”sdflyshaqq.com都正确地替换成为了“公司邮箱”sdflyshastarworks.cc了。3.2 替换文件中的敏感信息不删除文件命令bfg --replace-text C:\Users\sdfly\Desktop\to-be-replaced.txt --no-blob-protection其中to-be-replaced.txt格式如下pwiCZSMCIcM6qhgt;REPLACED 861YUaeCHqzaS5OXOmAK1XD37kmQhA2gt;REPLACED其中左边是需要替换的值这里为AWS相关的key右边为替换之后的值。命令执行后可以运行gitk可以看到历史记录中东西真的被替换了3.3 删除敏感文件命令bfg --delete-files appsettings.Production.json --no-blob-protection将其中appsettings.Production.json文件替换成你的文件名即可。注意删除文件不能带路径名只能匹配文件本身。3.4 删除敏感文件夹命令bfg --delete-folders userSecrets --no-blob-protection将userSecrets文件夹替换成你的敏感文件夹即可。3.5 删除二进制大文件命令git gc bfg --strip-blobs-bigger-than 150K --no-blob-protection将150K换成你的二进制文件大小即可。注意删除大二进制文件前运行git gc命令是必须的否则会报这个错Warning : no large blobs matching criteria found in packfiles - does the repo need to be packed?3.6 关于--no-blob-protection--no-blob-protection是指将历史中删除的记录放到最新一次未签入的修改中PS C:\Users\sdfly\Desktop\sensitive-repo-demogt; git status On branch master Your branch and origin/master have diverged, and have 9 and 9 different commits each, respectively. (use git pull to merge the remote branch into yours) Changes to be committed: (use git reset HEAD lt;filegt;... to unstage) modified: Program.cs new file: appsettings.Production.json new file: bin/Program.exe deleted: bin/Program.exe.REMOVED.git-id new file: userSecrets/admin-password.json new file: userSecrets/user-password.json这些都是敏感信息或者大文件根据你的实际情况可以先备份一下然后删除git reset --hard4. 推送到远程/其他人获取代码4.1 推送到远程此时可以通过git push --set-upstream origin master --force来推送到远程以完成该命令可能需要你的上级帮你执行或临时开个权限。注意简单地执行git push不带--force是无法推送的此时会报如下错误4.2 其他人获取代码组内其它成员则可以删除原先的主分支然后重新拉一个主分支git fetch origin git checkout -b temp-branch git branch -D master git checkout origin/master git checkout -b master4.3 最后的效果原版https://github.com/sdcb/sensitive-repo-demo脱密版https://github.com/sdcb/sensitive-repo-demo/tree/cleaned5. 总结我们签入Git时应该小心谨慎但一旦出现问题只要引起重视也是可以尽早补救的。上述这些命令可能会中断其它组员的工作因此一旦出现问题应该尽早汇报给上级大概率要上级来配合来恢复Git的使用。当然提高信息安全意识才是最重要的事后诸葛亮是费力不讨好。希望各位提高警惕不要在Git的使用中翻车。出处微信公众号【DotNet骚操作】觉得好看请点这里↓↓↓
http://www.yutouwan.com/news/498471/

相关文章:

  • 做网站一般图片的比例小鱼儿外贸网站
  • 湖北阳新县建设局网站潍坊市作风建设年活动网站
  • 惠城网站建设广东建设厅官网查询平台
  • 新手做站必看 手把手教你做网站专业的深圳网站建设公司排名
  • p2p网站开发多少钱漫画风格网站
  • 企业网站建设招标评分表网站设计标语
  • 分销商城网站建设网页设计和网站建设
  • 四川建设厅报名网站基于网站开发app
  • 做网站在阿里云买什么做网站需求报告
  • 网页制作与网站建设完全学习手册做理财网站
  • 科技团队网站湖北省两学一做网站
  • 华为云网站定制wordpress 调用副标题
  • 首都医科大学网站建设公司网络运维
  • 嘉兴网站关键词php做网站用什么开发工具
  • 威海网站制作团队广西南宁网站排名优化
  • 云服务器是否可以做多个网站石家庄网站建设时光
  • 免费h5模板网站专业的家居网站建设
  • asp.net做网站Dreamver如何做镜像别人网站
  • 阿里云无主体新增网站mm 263企业邮箱登录
  • 河北智能网站建设php毕业设计代做网站
  • 建设购物网站费用新项目首码对接平台
  • 手机能建设网站忙网站建设咨询公司
  • 怎么在年报网站做简易注销用自己的服务器建网站
  • 保定网站推广门户网站部署方案
  • 自己服务器做网站主机网站被入侵后需做的检测 1
  • wordpress情侣网站源码成品网站w灬源码伊园
  • 网站栏目 英文北京网站备案核验单
  • wap门户网站个人手机网站
  • 网站开发项目发展现状渗透wordpress
  • 苏州知名高端网站建设机构优化公司流程