Гарчиг[Нуух][Үзүүлэх]
Хэрэв та програм хангамжийн салбарт ажилладаг бол DevOps гэж юу болохыг мэддэг байх.
Хөгжүүлэгчдийн дунд улам бүр түгээмэл болж байгаа тул ихэнх томоохон пүүсүүд арга зүйгээ ажлын урсгалдаа нэгтгэж байгаа нь гайхах зүйл биш юм.
Хэдэн сар, бүр жилийн өмнө томоохон програм хангамжийн компаниуд шинэ программуудыг тогтмол гаргадаг байсан.
Үүнд хангалттай хугацаа байсан аюулгүй байдал, чанарыг нэвтрүүлэх код баталгааны шалгалт; Эдгээр процедурыг бие даасан шинжээчдийн багууд гүйцэтгэсэн.
Нийтийн үүлний хэрэглээ нэмэгдсэнээр олон урсгалыг шинэ хэрэгсэл, технологи ашиглан автоматжуулж, бизнесүүдийг илүү хурдан хөгжүүлж, өрсөлдөөнөөс нэг алхмын өмнө үлдэх боломжийг олгож байна.
Контейнер болон микро үйлчилгээний үзэл баримтлалыг нэвтрүүлсний дараа цул программууд нь жижиг бие даасан бүрэлдэхүүн хэсгүүдэд хуваагдаж эхэлсэн.
Энэ нь програм хангамжийг хэрхэн үүсгэж, хэрэгжүүлэх уян хатан байдлыг нэмэгдүүлсэн.
Гэсэн хэдий ч аюулгүй байдал, дагаж мөрдөх хяналтын системүүдийн ихэнх нь ийм хөгжлийг харуулаагүй байна.
Тэдний ихэнх нь ердийн DevOps орчны шаардагддаг шиг кодоо хурдан турших боломжгүй байсан.
SecDevOps-ийг хэрэгжүүлснээр энэ асуудлыг шийдэж, аюулгүй байдлын тестийг тасралтгүй нэгтгэх (CI) болон тасралтгүй хүргэх (CD) дамжуулах хоолойд бүрэн нэгтгэх, мөн дотоод туршилт, засварыг хөнгөвчлөхийн тулд хөгжүүлэлтийн багийн мэдлэг, туршлагаа дээшлүүлэх зорилготой байв.
Та энэ хэсгээс SecDevOps-ийн талаар илүү ихийг олж мэдэх болно, үүнд түүний ач холбогдол, үйл ажиллагаа, шилдэг туршлагууд болон бусад олон зүйлс багтана.
Тэгэхээр SecDevOps гэж юу вэ?
DevOps нь хурдан, бат бөх, автоматжуулсан бөгөөд дангаараа олон давуу талтай.
Гэсэн хэдий ч, илүү хурдан байршуулах нь аюулгүй байдлын алдааг олж илрүүлэх, арилгах цаг хугацаа багасдаг тул аюулгүй байдлыг нэгтгэх нь хязгаарлагдмал.
Хэрэв хурдан байршуулах зорилготой (DevOps арга) програмуудыг хөгжүүлж байх үед аюулгүй байдал нь бүтээх, гаргах үйл явцад ороогүй бол та тэдгээрийг аюулгүй байдлын томоохон дутагдалд оруулж болзошгүй.
Энд SecDevOps (мөн DevSecOps эсвэл DevOpsSec гэгддэг) гарч ирдэг. Энэ арга нь нэрнээс нь харахад хөгжүүлэлт, байршуулалтын процесст аюулгүй байдлыг оруулахыг хэлнэ.
SecDevOps нь DevOps хөгжүүлэлт, байршуулалтын процесст аюулгүй кодчлолыг гүн гүнзгий нэгтгэх зорилготой шилдэг туршлагын цуглуулга юм.
Үүнийг ихэвчлэн хатуу DevOps гэж нэрлэдэг.
Тэд өөрсдийн аппликейшнийг үүсгэх үед энэ нь хөгжүүлэгчдэд аюулгүй байдлын стандарт, үзэл баримтлалыг илүү нарийвчлан авч үзэхийг дэмждэг. DevOps-ийг хурдан гаргах аргачлалыг дагаж мөрдөхийн тулд аюулгүй байдлын процессууд болон шалгалтуудыг амьдралын мөчлөгийн хамгийн эхэнд оруулсан болно.
SecDevOps нь хоёр үндсэн хэсэгт хуваагдана:
Хамгаалалтын код (SaC)
Энэ үед DevOps дамжуулах хоолойн хэрэгсэл, журам нь аюулгүй байдлыг агуулсан байх ёстой.
Энэ нь дараах хэрэгсэл юм статик хэрэглээний аюулгүй байдлын тест (SAST) ба динамик хэрэглээний аюулгүй байдлын тест (DAST) суулгасан програмуудыг автоматаар сканнердах.
Үүнээс үүдэн автоматжуулсан процессууд нь гарын авлагаас илүү чухал байдаг (хэдийгээр програмын аюулгүй байдлын чухал хэсгүүдэд гарын авлагын процесс шаардлагатай байдаг).
DevOps процессууд болон хэрэгслүүдийн сүлжээнүүд нь аюулгүй байдлыг код болгон агуулсан байх ёстой. Эдгээр хэрэгслүүд болон тэдгээрийн автоматжуулалт нь Continous Delivery архитектуртай нийцэх ёстой.
Дэд бүтэц нь код (IaC)
Аюулгүй, удирдлагатай байршуулах орчинг бүрдүүлэхийн тулд дэд бүтцийн хэсгүүдийг тохируулах, шинэчлэхэд ашигладаг DevOps хэрэгслүүдийн цуглуулгыг эндээс үзнэ үү.
Энэ үйл явцад Chef, Ansible, Puppet зэрэг хэрэгслийг ихэвчлэн ашигладаг.
IaC нь нэг удаагийн скрипт ашиглан тохиргоог гараар шинэчлэх эсвэл өөрчлөхийн оронд үйл ажиллагааны дэд бүтцийг удирдахад ижил код боловсруулах удирдамжийг ашиглахыг шаарддаг.
Үүний үр дүнд, суулгасан серверүүдийг нөхөж, шинэчлэх гэж оролдохын оронд системийн асуудал нь тохиргооны удирдлагатай серверийг байршуулахыг шаарддаг.
Аппликешныг эхлүүлэхийн өмнө SecDevOps нь аюулгүй байдлын тасралтгүй, автоматжуулсан туршилтыг ашигладаг. Аливаа дутагдлыг эрт илрүүлэхийн тулд асуудлыг хянах аргыг ашигладаг.
Нэмж дурдахад, энэ нь програм хангамжийн хөгжүүлэлтийн амьдралын мөчлөгийн туршид илүү үр дүнтэй аюулгүй байдлын шалгалтыг хангахын тулд автоматжуулалт, туршилтыг ашигладаг.
Байгууллага яагаад SecDevOps шаарддаг вэ?
Өнөөгийн дижитал эрин зуунд аюулгүй байдал хамгийн тэргүүнд тавигдаж, байгууллага бүрийн тэргүүлэх чиглэл байх ёстой.
SecDevOps загварыг бий болгосноор компани аюулгүй байдлын асуудалд реактив биш харин идэвхтэй гэдгээ харуулж байна.
Хүчтэй систем, найдвартай, уян хатан програмуудыг хөгжүүлэх нь "Нэгдүгээрт Аюулгүй байдал" гэсэн корпорацийн сэтгэлгээтэй байх нь дэмжигддэг.
Өнөөгийн маш их өрсөлдөөнтэй мэдээллийн технологийн зах зээлд байгууллагууд өөрсдийн үйлдвэрлэлийн системд аюулгүй байдлын алдаатай байж чадахгүй.
Мөлжөөлийг ашигладаг халдлага нь өндөр өртөгтэй бөгөөд ихэвчлэн систем эсвэл байгууллагыг ашиглах боломжгүй болгодог. Байгууллага доторх SecDevOps нь дамжуулах хоолойн түвшин бүрт аюулгүй байдлын тасралтгүй онцлох боломжийг олгодог.
Хэрэглэгчдэд хэрэгтэй функц, функц бүхий тусгай программууд болон системүүдийг бүтээж байгаагаа мэдэх нь таны сэтгэлийг тайвшруулна.
Бизнес нь аюулгүй байдлын шилдэг туршлага, стандарт, хууль тогтоомжид нийцэж байгаа эсэхийг шалгахын тулд Аюулгүй байдлын багийг инженерийн болон инженерийн бус бүх санаачлагад эрт, ойр ойрхон оролцохыг зөвлөж байна.
SecDevOps хэрхэн ажилладаг вэ?
SecDevOps нь аюулгүй байдлыг зүүн тийш шилжүүлэхтэй холбоотой. Энэ нь хүн бүр аюул ослын хариу арга хэмжээ авах системийг хэрэгжүүлэхээс илүүтэйгээр төлөвлөлтийн үе шатанд ч гэсэн эхнээсээ аюулгүй байдлыг хариуцах ёстой гэсэн үг юм.
Ердийнхтэй харьцуулахад хүрхрээ ойртож байна, амьдралын мөчлөгийн төгсгөлд аюулгүй байдлыг тавьдаг, энэ нь чухал өөрчлөлт юм. Аюулгүй байдлыг бүх сонголт, хөгжлийн амьдралын туршид авч үзэх ёстой.
Тэд аюул заналхийллийн загваруудыг ашиглахаас гадна аюулгүй байдлын туршилтын тохиолдлууд бүхий туршилтад суурилсан хөгжлийн орчныг дэмждэг.
Аюулгүй байдлын автоматжуулсан туршилт, тасралтгүй интеграцчлалыг процесст нэгтгэсэн эсэхийг шалгах ёстой.
Програмын боломжит сул талуудыг олохын тулд SecDevOps нь хэрхэн ажилладаг талаар бүрэн ойлголттой байх шаардлагатай.
Та үүнийг мэдэж байгаа тул аюулгүй байдлын эрсдэлээс илүү сайн хамгаалж чадна. Аюул заналхийллийн загваруудыг хөгжүүлэлтийн амьдралын туршид үүнийг хийхэд ихэвчлэн ашигладаг.
Энэ нь хэрхэн ажилладагийг илүү сайн ойлгохын тулд ердийн SecDevOps процедурыг харцгаая.
Хувилбарын удирдлагын системийг хөгжүүлэгчид ашигладаг. Үүний үр дүнд ийм төслүүдийн харилцаа холбоог хөнгөвчлөх бөгөөд тэд програм хангамж хөгжүүлэх санаачлагын аливаа өөрчлөлтийг хянах боломжтой болсон.
Кодлох төсөл дээр хамтран ажиллахдаа хөгжүүлэгчид салбаруудыг ашиглан ажлаа хялбархан хувааж болно.
- Хөгжүүлэгч эхлээд системийн код бичнэ.
- Дараа нь систем нь тохируулгыг хүлээн авах болно.
- Дараа нь кодыг системээс татаж аваад өөр хөгжүүлэгч шалгана. Аюулгүй байдлын дутагдал эсвэл эмзэг байдлыг олохын тулд энэ үе шатанд статик кодыг шинжлээрэй.
Ердийн SecDevOps процедур нь энэ үе шатны дараа дараах байдлаар үргэлжилнэ.
- Puppet, Chef, Ansible зэрэг IaC технологийг ашиглан програмыг байршуулах орчинг бүрдүүлж, аюулгүй байдлын тохиргоог системд ашиглах.
- шинээр суулгасан програмын эсрэг туршилтын автоматжуулалтын багцын нэг хэсэг болгон backend, интеграцчлал, API, аюулгүй байдал, UI тестүүдийг хийх.
- програмыг байрлуулж, туршилтын орчинд автомат динамик туршилтыг ажиллуулах.
- Эдгээр туршилтууд амжилттай болсны дараа програмыг үйлдвэрлэлийн орчинд байрлуулна уу.
- Үйлдвэрлэлийн орчинд аюулгүй байдлын идэвхтэй асуудлуудыг байнга хянаж байх.
SecDevOps-ийн ашиг тус
SecDevOps-д аюулгүй байдлын баг үндсэн бодлогуудыг урьдчилан тогтоодог.
Эдгээр зохицуулалт нь кодын стандарт, туршилтын зөвлөмж, статик болон динамик дүн шинжилгээ хийх заавар, сул шифрлэлт, аюултай API ашиглахыг хориглох гэх мэт зүйлсийг хамарч болно.
Нэмж дурдахад тэдгээр нь аюулгүй байдлын багийн гарын авлагын арга хэмжээ авах шаардлагатай хүчин зүйлсийг (жишээ нь, баталгаажуулалт эсвэл зөвшөөрлийн загварт өөрчлөлт оруулах, эсвэл аюулгүй байдлын чухал хэсгүүдэд) тусгадаг.
Хөгжүүлэлтийн баг нь аюулгүй байдлын чиглэлээр туршлага хуримтлуулж, үүнийг үйл явцад оруулсан болно.
Үүнийг хийснээр дамжуулах хоолойн төгсгөл нь аюулгүй байдлын хамгийн бага алдаатай эсэхийг баталгаажуулдаг. Хэрэв эмзэг байдал хэвээр байвал шалгалт хийж, процедурыг шинэчлэх, сайжруулахад хялбар байх болно.
Аюулгүй байдлын дүрэм, стандартад шаардлагатай өөрчлөлтийг үндсэн шалтгааныг шинжлэхийн тусламжтайгаар хялбаршуулдаг.
Өөрөөр хэлбэл, мөчлөг бүрт үр дүн нь сайжирна. Хожуу мөчлөгийн өсөлтийг бага тасалдуулах нь давтагдах сайжруулалтын бас нэг зорилго юм.
Дараах нь SecDevOps-ийн хамгийн алдартай давуу талууд юм.
- Өөрчлөлт, эрэлт хэрэгцээнд хурдан хариу үйлдэл үзүүлэх чадвар
- Кодын эмзэг байдлыг эрт илрүүлэх
- Хамгаалалтын нэгжийн авхаалж самбаа, хурдыг сайжруулсан
- Илүү олон багийн хамтын ажиллагаа, харилцаа холбоо
- Автоматжуулалтаар дамжуулан өндөр үнэ цэнэтэй үйл ажиллагаан дээр ажиллах багийн гишүүдийн нөөцийг чөлөөлөх
- Чанар, аюулгүй байдлын туршилт хийх, түүнчлэн автоматжуулсан бүтээц хийх боломж
SecDevOps-ийн үр дүнтэй стратеги
SecDevOps нь аюулгүй байдал, хөгжүүлэлт, үйл ажиллагааг нэгтгэн багаар ажиллах, журам, багаж хэрэгслийг сайжруулах замаар нэг зорилгын төлөө ажиллахад нь тусалдаг.
Соёлын дургүйцэл, багийн зохисгүй харилцаа эсвэл цаг хугацааны хязгаарлалт зэргээс шалтгаалан DevOps ажлын урсгалдаа аюулгүй байдлыг оруулах нь бага зэрэг айдас төрүүлж магадгүй юм.
SecDevOps програмыг боловсруулахад пүүс болгон ашиглаж болох ганц амжилттай арга байхгүй ч ашигтай байж болох тодорхой заавар, стратеги байдаг.
Аюулгүй хөгжил, сургалтыг хэрэгжүүлж эхэл.
Энэ нь та инженерүүдээ аюулгүй байдлын мэргэжилтэн болгох эсвэл хамгийн сүүлийн үеийн аюулгүй байдлын хэрэгслүүдийг эзэмшүүлэхийг албадах ёстой гэсэн үг биш юм.
Гэхдээ та тэдэнд хөтөлбөрөө хамгаалахад туслах аюулгүй байдлын журам заах талаар бодохыг хүсч байна. Т
o Таны хөгжүүлэгчид аюулгүй байдлын найдвартай горимуудыг хурдан ойлгож, ашиглах боломжтой эсэхийг баталгаажуулахын тулд та тэдэнд тусгайлан тохируулсан аюулгүй байдлын сургалтыг санал болгох хэрэгтэй.
Бүх тохиолдолд хувилбарын хяналтыг ашиглана уу.
DevOps-ийн хүрээнд хэрэглээний программ хангамж, загвар, диаграмм, скрипт бүр нь үр ашигтай хувилбар гаргах хэрэгсэл, стратегийг ашиглах ёстой.
Аюулгүй байдлын олон давуу тал нь хувилбарын хяналттай хамт ирдэг бөгөөд энэ нь дараах зааварчилгааг олгодог:
- Аюулгүй байдлын асуудал гарсан үед аль бүтэц, функцийг ашигласан болохыг тодорхойлох.
- Хуулийн стандартад нийцүүлэн хөгжүүлэх үйл ажиллагааг хянаж байх.
- Хөгжүүлэлтийн явцад нэмсэн аливаа хортой эсвэл эмзэг бүрэлдэхүүн хэсгүүдийг хайж олоорой.
Хүн төвтэй аюулгүй байдлын үзэл баримтлалыг хүлээн зөвшөөр
Аюулгүй байдлын хэрэгжилт нь нэг багийн мэдэлд байх ёсгүй.
Хүн бүр аюулгүй байдлын стандартыг дагаж мөрдөх үүрэгтэй байхын тулд танай компани хүн төвтэй аюулгүй байдлын соёлыг нэвтрүүлэх ёстой.
Хөгжүүлэгчид, тестерүүд болон бусад ажилтнуудыг аюулгүй байдлын сургалтаас гадна аюулгүй байдлын талаар хувийн хариуцлага хүлээхийг урамшуулан дэмж.
SҮнэт цаасны хяналт нь маш чухал боловч энэ нь хувь хүний дотроос үүсэх ёстой бөгөөд багийн гишүүн бүр үүнд хариуцлага хүлээх ёстой.
Тогтмол ажлыг автоматжуулах
Ихэнх байгуулагдсан DevSecOps системүүд автоматжуулалтыг байнга, эрт ашигладаг.
Жишээлбэл, аюулгүй байдлын тестийг автоматжуулах нь таны кодын алдаа дутагдлыг илрүүлэхэд хялбар болгодог бөгөөд энэ нь хөгжлийг хурдасгаж, хөгжүүлэгчийн бүтээмжийг нэмэгдүүлдэг.
Энэ нь ялангуяа инженерүүд өдрийн турш хэд хэдэн кодын хувилбар ажиллуулдаг томоохон пүүсүүдэд үнэн юм.
SecDevOps-ийн хязгаарлалт
SecDevOps нь програм хөгжүүлэх хамгийн сүүлийн үеийн аргачлал бөгөөд ердийн техникээс хэд хэдэн давуу талтай байдаг.
Гэсэн хэдий ч энэ нь хэд хэдэн хязгаарлалттай бөгөөд доор жагсаасан болно.
- Энэ нь урт хугацаа шаардагддаг тул үүнийг хурдан ашиглах боломжгүй юм.
- Хөгжүүлэгчдийг аюулгүй кодчилох арга техник, байнгын эмзэг байдалд сургах шаардлагатай бөгөөд энэ нь цаг хугацаа, нэмэлт нөөц шаарддаг.
- Аюулгүй байдлын бие даасан үнэлгээнд хамрагдаагүй тохиолдолд ашиг сонирхлын зөрчил үүсч болно.
- Бодлого, үйл явцын өргөн хүрээтэй тодорхойлолтоос шалтгаалан програмыг боловсруулах төлөвлөлтийн үе шат эхлээд удаан үргэлжилж магадгүй юм.
Дүгнэлт
Аюулгүй байдлын багууд ажиллах шинэ арга замыг байнга хайж байдаг тул SecDevOps нь урам зоригийг бадрааж, бүтээлч сэтгэлгээг хөгжүүлж байна.
Хэлтсүүд хоорондоо өрсөлдөхүйц холбоо тогтоохоос илүүтэй хамтран ажилладаг нь байгууллагын өсөлтийг дэмждэг.
SecDevOps хэрэгжилт нь аж ахуйн нэгжүүдэд техникийн болон санхүүгийн томоохон давуу талуудыг санал болгодог.
SecDevOps-ийн үзэл бодлын дагуу аюулгүй байдлын үндэс суурь бол хэрэглээний хөгжүүлэлт болон холбогдох процессууд нь илүү аюулгүй бөгөөд илүү бүтээмжтэй байдаг.
хариу үлдээх