Омӯзиши тарзи эҷоди филиал дар GitHub қадами аввал аст. Аммо, омӯхтани тарзи муттаҳид кардани филиалҳо дар GitHub барои ҳар як филиал ба мисли бехатар муҳим аст. GitHub ҷараёни кор. Пас, дар ин паём, мо шуморо дар тамоми раванд, аз он сар карда, роҳнамоӣ мекунем. чӣ гуна дар GitHub филиал эҷод кардан мумкин аст ва сипас ба шумо нишон медиҳад Чӣ тавр филиалҳоро дар GitHub муттаҳид кардан мумкин аст бехатар. Мо инчунин дар бораи чӣ гуна бекор кардани муттаҳидшавӣ дар сурати пайдо кардани ягон мушкилот ва дар ниҳоят, чӣ гуна Xygeni метавонад ба шумо дар ҳалли ҳар як мушкилот пеш аз ворид шудан ба шохаи асосии шумо кӯмак расонад, баррасӣ хоҳем кард.
Биёед онро қадам ба қадам дида бароем.
1. Чӣ тавр филиалро дар GitHub дуруст эҷод кардан мумкин аст
Ҳар як ҷараёни кори бехатар ҳангоми эҷоди филиал дар GitHub оғоз мешавад. Он ба таҳиягарон имкон медиҳад, ки хусусиятҳо, ислоҳот ё таҷрибаҳоро бидуни таъсир ба рамзи истеҳсолӣ ҷудо кунанд.
Барои эҷоди филиал дар GitHub:
1. Ба анбори худ равед
2. Менюи афтандаи интихобкунандаи шохаро клик кунед

3. Номи филиали нави худро ворид кунед
4. ангуштзании Шоха эҷод кунед

Аз ин ҷо, шохаи нави шумо барои кор омода аст. Акнун шумо метавонед рамзро пахш кунед, дар тағиротҳо ҳамкорӣ кунед ва дар ниҳоят ... кушоед. pull requestГарчанде ки ин як амали асосии GitHub аст, он заминаро барои таҳияи бехатар фароҳам меорад.
Муҳим он аст, ки ҳар дафъае, ки шумо дар GitHub филиал эҷод мекунед, он бояд қисми ҷараёни кории такроршаванда ва ҳифзшаванда бошад.
2. Сканкунӣ Pull Requests Пеш аз якҷояшавӣ ба таври худкор
Вақте ки шумо дар GitHub филиал эҷод мекунед ва барои баррасӣ омода мешавед, қадами навбатӣ фаҳмидани он аст, ки чӣ тавр филиалҳоро дар GitHub бехатар муттаҳид кардан мумкин аст. Ҳар як филиали GitHub бояд санҷишҳои автоматиро ба кор барад. Аммо пеш аз муттаҳидшавӣ, муҳим аст, ки санҷед он код ягон осебпазириро ба вуҷуд намеорад. Як чизи ноамн commit метавонад дархости шуморо ошкор кунад, leak secretс, ё инфрасохтори муҳимро вайрон кунед.
Якҷоя кардани код ба шохаи асосии шумо як амалиёти хеле таъсирбахш аст. Бе санҷиши дуруст, он метавонад ба оқибатҳои ҷиддӣ, ба монанди:
- Осебпазириҳои рӯзи сифрӣ ба истеҳсолот ворид шудан
- Маълум CVE-ҳо тавассути бастаҳои кушодаасос муаррифӣ шудааст
- Асрори сахт рамзгузорӣшуда ба анбор тела дода шуд
- Конфигуратсияҳои нодурусти инфрасохтор ки дифоъи шуморо суст мекунанд
- Рамзи зараровар ё вайроншуда воридшавӣ тавассути вобастагӣ
Ин ҷоест, ки Xygeni тафовути воқеӣ ба вуҷуд меорад
Бо истифода аз Амалҳои GitHub, шумо метавонед ангеза диҳед сканҳои автоматии Xygeni ҳар вақте ки таҳиягар як pull request ба шохаи ҳифзшуда. Шохаи ҳифзшуда дар GitHub шохаест, ки пеш аз иҷозат додани муттаҳид кардани тағйирот санҷишҳо ё тасдиқҳои мушаххасро талаб мекунад.
Xygeni таҳлил мекунад иҷрои охирини pull request тезонад барои тасдиқи вазъи амниятии тағйироти пешниҳодшуда. Ин санҷишро дар бар мегирад масъалаҳо дар рамз, вобастагиҳо, асрор ва CI/CD конфигуратсияҳоШохаи пурра аз нав скан карда намешавад, аммо натиҷаи охирини ҷараёни корӣ барои татбиқи сиёсатҳо ва масдуд кардани якҷояшавии ноамн истифода мешавад.
Ин сканҳо тасдиқ мекунанд, ки рамз бехатар ва барои истеҳсол омода аст. Онҳо муайян мекунанд:
- Осебҳои кодӣ (SAST)
- Бастаҳои осебпазири манбаъҳои кушода (SCA)
- Асрори сахт рамзгузорӣшуда
- IaC конфигуратсияҳои нодуруст
- Нармафзори эҳтимолии зараровар барои нармафзори эҳтимолӣ
Ҳамгироӣ ин санҷишҳо барвақт кафолат медиҳанд ки ҳар дафъае, ки шумо дар GitHub филиал эҷод мекунед ва барои муттаҳидшавӣ омода мешавед, шумо ин корро бо аёният ва назорати пурра.
Ин аст як танзимоти соддакардашуда:
on:
pull_request:
branches: [ main ]
jobs:
xygeni-scan:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Xygeni Scanner
uses: xygeni/xygeni-action@3.2.0
with:
token: ${{ secrets.XYGENI_TOKEN }}
3. Якҷояшавии ноамниро бо Guardrails
Guardrails, боварӣ ҳосил кунед, ки ҳангоми эҷоди филиал дар GitHub ё кӯшиши муттаҳид кардани филиалҳо дар GitHub, танҳо тағйироти бехатар ба филиали асосии шумо дар танзимоти GitHub мерасанд. Xygeni ба шумо медиҳад назорати пурра бар он чизе, ки якҷоя карда мешавадШумо метавонед пешакӣ муайян кунед.cisқоидаҳои электронӣ, ки ба сиёсатҳои амниятии шумо ва таҳаммулпазирии хатар мутобиқ карда шудаанд. Масалан:
- Агар сирри муҳим бошад, блок кунед ёфт мешавад (масалан, калидҳои AWS, токенҳо)
- Нокомӣ дар сохтмон агар як хатари нави баланд бастаи кушодаасос муаррифӣ мешавад
- Рад кардан pull requests он тағйир додани роҳҳои ҳассос мисли
.github/workflows/,infrastructure/, ёsecrets.env - Пешгирӣ аз якҷояшавӣ агар як паст кардани сатҳи нав дубора ҷорӣ мекунад маълум осебпазирӣ
- Блок CI/CD тағйироти конфигуратсия агар дуруст нишонгузорӣ нашуда бошад
- Агар якҷояшавиро қатъ кунед SAST баланд ё масъалаҳои муҳим
- Қатъитар истифода баред Guardrails дар шохаҳои истеҳсолӣ дар айни замон нигоҳ доштани чандирӣ дар рушд
Ин қоидаҳо ҳамчун дарвозабонҳои автоматӣ амал мекунанд. Онҳо ба дастаи шумо кӯмак мекунанд, ки танҳо он чизеро, ки бехатар аст, муттаҳид кунанд, бе ягон сюрприз, бе баррасиҳои дастӣ ва бе сӯхторхомӯшкунии дақиқаи охир.
Намунаи қоидаи паноҳгоҳ:
guardrail block_critical_secrets
on secrets
when severity = critical
then @fail()
Фикру мулоҳизаҳои визуалӣ дар Dashboard

Барои таъмини намоёнии пурра, Xygeni натиҷаи арзёбии охирини ҳолати Guardrail-ро нишон медиҳад.
- Дар ҷои аввал, нишонаи сабз маънои ҳамаи сиёсатҳои қабулшударо дорад.
- Назар ба, нишонаи сурх нишон медиҳад, ки як ё якчанд шартҳои Guardrail вайрон карда шудаанд.
Дар натиҷа, ҳам таҳиягарон ва ҳам гурӯҳҳои амниятӣ бидуни таҳқиқи гузоришҳои CI фавран дарки масдудияти сабаби муттаҳидшавӣ пайдо мекунанд.
Мисоли воқеӣ аз Dashboard:
Масалан, биёед бигӯем, ки анбор ягон шохаҳои ҳифзшуда надорад, ки ин як конфигуратсияи нодурусти маъмул аст, ки ба таҳиягарон имкон медиҳад, ки ...-ро тела диҳанд. commitс бе тасдиқ. Ин хатари ҷиддӣ аст.
Xygeni инро ба таври худкор муайян ва қайд мекунад имзошуда_commits масъала дар доираи CI/CD категория. Дар dashboard барҷаста:
- Ҷиддият: баланд
- Намуд: Имзо Commits
- Шарҳ: Анбор шохаҳои ҳифзшуда надорад
- Status: кушодан
Аз ин рӯ, бо ин фикру мулоҳизаҳои бой аз контекст, дастаҳо метавонанд хатарро зуд муайян кунанд, таъсири онро дарк кунанд ва чораҳои ислоҳӣ андешанд, ки ҳама аз интерфейси корбарии Xygeni мебошанд.
Шохаи Рафтори иҷрои қонун
Шумо ҳамеша назорат доред. Интихоб кунед, ки то чӣ андоза қатъӣ аст Guardrails бояд:
--fail-on=critical: Блок танҳо дар сурати пайдоиши ҷиддӣ якҷоя мешавад--never-fail: давидан Guardrails дар ҳолати хушки корӣ барои санҷидани сиёсатҳо пеш аз татбиқ
Пас, дафъаи оянда шумо дар GitHub филиал эҷод мекунед, шумо Guardrails аллакай дар он ҷо ҳастанд, шуморо муҳофизат мекунанд pipeline ва сиёсати шуморо ба таври худкор амалӣ мекунад.
Чӣ тавр ман метавонам донам, ки барномаи GitHub бехатар аст?
Пеш аз насб кардани барномаҳои GitHub, чӣ гуна онҳоро арзёбӣ кардан мумкин аст.
4. Ҳангоми ошкор шудани хатарҳо, пайвастшавиро дар GitHub ба таври худкор бекор кунед
Агар хатарҳо ошкор карда шаванд, муттаҳидсозӣ бекор карда мешавад. Ин чораи муҳофизатӣ ҳар як филиали лоиҳаи GitHub-ро муҳофизат мекунад ва таҷрибаҳои беҳтаринро дар бораи чӣ гуна муттаҳид кардани филиалҳо дар GitHub татбиқ мекунад.
Xygeni мустақиман ба интерфейси корбарии GitHub ҳамгиро мешавад. Вақте ки хатар пайдо мешавад:
- GitHub чекро ҳамчун ноком нишон медиҳад
- Муҳофизаҳои GitHub аз муттаҳидшавӣ пешгирӣ мекунанд
- Навбати якҷояшавӣ рамзи ноамнро аз назар мегузаронад
Новобаста аз он ки ин махфӣ, CVE ё хатарнок аст CI/CD намуна, натиҷа якхела аст: якҷоякунӣ дар GitHub бекор карда шуд ва барои баррасӣ қайд карда шуд.
Шумо инчунин метавонед натиҷаҳои муфассалро дар Xygeni бубинед:
- Ҳолати амниятии ҳар як филиал
- Чаро муттаҳидшавӣ манъ карда шуд
- Таърихи пурраи сканкунӣ
- Ҳолати девори муҳофизатӣ тавассути нишонаҳои сабз (гузаштан) ё сурх (ноком) дар саҳифаи лоиҳа нишон дода мешавад
Ин фикру мулоҳизаҳои визуалӣ барои таҳиягарон ва гурӯҳҳои амниятӣ имкон медиҳанд, ки бо эътимод амал кунанд. Ва вақте ки ба шумо контексти амиқтар лозим аст, ҳар як масъала бо ҳуҷҷатҳо бо ҷиддият, барчаспҳо, макон ва роҳнамоии коҳиши хатар пайванд дорад.
Танҳо он чизе, ки бехатар аст, якҷояшавии Tldr
Хулоса, ин аст, ки чӣ тавр пас аз эҷоди филиал дар GitHub, онро бо бехатарӣ муттаҳид кардан мумкин аст:
- Тавассути UI дар GitHub филиал эҷод кунед
- Сканҳои худкорро бо ҳар як pull request бо Xygeni
- Омезишҳои ноамнро бо истифода аз инҳо манъ кунед Guardrails
- Барои назорати амиқтар аз сиёсатҳои аудити тарафи сервер истифода баред
- Вақте ки чизе ноком мешавад, якҷоякуниро дар GitHub бекор кунед
- Ҳама натиҷаҳоро дар Xygeni визуалӣ кунед dashboard
Барои таҷрибаҳои беҳтарини бештар оид ба ҳифзи анборҳо, моро хонед Саволҳои зуд-зуд додашаванда дар бораи амнияти GitHub: Он чизе ки ҳар як таҳиягар бояд донад.
Гарчанде ки муттаҳидсозӣ як амалиёти оддӣ аст, анҷом додани он ба таври бехатар намоёнӣ ва автоматикунонии воқеиро талаб мекунад. Бо Xygeni, шумо на танҳо рамзро муттаҳид мекунед, балки эътимодро муттаҳид мекунед.
Ҳар як филиали GitHub-ро бо эътимод ҳифз кунед
Як масъалаи нодида гирифташуда дар pull request метавонад шохаи асосии шуморо зери хатар гузорад. Сканнерҳои анъанавӣ аксар вақт хеле дер кор мекунанд, хатарҳои муҳимро аз даст медиҳанд ё сиёсати пурмазмунро татбиқ намекунанд.
Аз ин рӯ, ҳифзи шохаҳои GitHub-и шумо на танҳо сканкунӣ, балки корҳои бештарро талаб мекунад.
Xygeni иҷрои воқеиро таъмин мекунад. Вақте ки а pull request Xygeni ба шохаи ҳифзшуда нигаронида шудааст, иҷрои охирини шуморо таҳлил мекунад CI/CD ҷараёни корӣ. Он тамоми шохаро аз нав скан намекунад. Ба ҷои ин, он натиҷаҳои охиринро барои санҷидани мушкилоти амниятӣ дар код, вобастагӣ, асрор ва конфигуратсияҳои ҷараёни корӣ арзёбӣ мекунад. Шумо на танҳо огоҳ карда мешавед. Шумо ҳифз карда мешавед.
Он чӣ фарқ мекунад:
- Тасдиқи пурраи контекст: Guardrails сиёсатро бо истифода аз контексти бой ба монанди ҷиддӣ, истифодашавандагӣ ва метамаълумоти шоха амалӣ кунед.
- Интегратсияи дарунсохти GitHub: Ҳама чиз, аз сканкунӣ то татбиқ, дар дохили ҷараёнҳои кории GitHub-и шумо кор мекунад, бе ниёз ба скриптҳои фармоишӣ ё рамзи часпак.
- Аудитҳои тарафи сервер: Тарафи сервер Guardrails натиҷаҳоро пас аз боргузорӣ тасдиқ кунед, қабати дуюми назоратро берун аз он илова кунед pipeline.
Ба ҷои он ки ба танзимоти CI-и худ барои гирифтани ҳама чиз такя кунед, Xygeni технологияи автоматикунонидашуда ва сиёсатгузориро истифода мебарад.cisионҳо пеш аз он ки чизе ба шохаи асосии шумо бирасад.
Гарчанде ки муттаҳидсозӣ як амалиёти оддӣ аст, анҷом додани он боэътимод намоёнии воқеӣ ва автоматикунониро талаб мекунад. Бо Xygeni, шумо на танҳо анборҳои худро, балки ҳар як шохаи GitHub-ро бо эътимод муҳофизат мекунед.







