A клиникасы менен B клиникасы бир коддук базаны, эки субдоменди жана кеңседен жана VPN аркылуу келген коноктордун аралашмасын бөлүшөт. Тармак топтору адатта эки кирүүнү өзүнчө жөндөйт, жана бул кадимки, колдонмо ошондой кылбаса. Төмөнкү текшерүүлөр колдонмодо болушу керек жана сурам кайсы эшикти колдонгонуна карабастан бирдей жүрүшү керек.

Биринчи: хост аты жалдоочун гана атайт

Суралган хост атын администратор кармаган карта боюнча чечип, белгисиздин баарын четке кагыңыз. Чийки аталыштын ордуна фреймворктун текшерилген хост маанисин колдонуңуз, ошондо жасалма Host издөө ачкычын киргизе албайт. Ийгиликтүү дал келүү кодго кайсы жалдоочу конфигурациясын жана кайсы брендингди жүктөөнү айтат. Бирок ал чакыруучу ошол жалдоочунун маалыматтарын көрө алабы же жокпу, аны айтпайт. Ошол экинчи суроону өзүнчө киргизүүсү бар өзүнчө функцияда кармаңыз.

Бир хост аты издөөдөн контекстти да, уруксатты да кайтарган жалпы жардамчы функция катанын башталышы.

Экинчи: мүчөлүк сессиядан келет

Аутентификацияланган колдонуучунун активдүү мүчөлүктөрүн таап, аларды биринчи текшерүүнүн жалдоочусу менен салыштырыңыз. Эки клиникага тең таандык колдонуучу алмаша алат, бирок алмашуу URL'ден чыгарылган тыянак эмес, сурам контекстинде жазылган ачык аракет болушу керек. Бир клиникага таандык колдонуучу экинчисин сураса, ага баш тартылат, анын ичинде жүктөөлөр жана API чакыруулары үчүн да.

Терс учурду жазуу идентификаторун жана жалдоочу параметрин өзгөртүү менен текшериңиз. Эки өзгөртүүнүн кайсынысы болбосун маалымат кайтарса, алкак ырасталган мүчөлүктөн эмес, сурамдан окулат.

Cookie алкагы жана бир жолку кирүү аккаунтту кайда көрсөтүүгө болорун аныктайт. Алар ошол аккаунт эмнени окуй аларын аныктабайт.

Үчүнчү: тармак адам жөнүндө эч нерсени далилдебейт

VPN дарбазасы туннелди аутентификациялайт, ал эми ачык уруксат тизмеси дарек диапазонун аутентификациялайт. Экөө тең адамды аныктабайт. NAT көптөгөн колдонуучуларды бир булак дарегине бириктирет, кеңсе диапазону имараттагы бардыгы үчүн ушундай эле кылат. Экөөнү тең ташуу фактысы катары карап, авторизацияны колдонмодо кармаңыз, же инсандыкты ачык билдирген жана ошого жараша каралган интеграцияда кармаңыз.

DNS үчүнчү ташуу фактысы. Жеке жоопко жеке маршрут керек, ал эми ачык фронтендге колдоого алынган баштапкы жол керек. Алардын эч бири уруксат алып жүрбөйт.

Дубалга илинген бир сүйлөм: тармак сурамдын кантип келээрин аныктайт, колдонмо эмнени окуй аларын аныктайт.

Төртүнчү: матрицаны эки кирүүдө тең иштетиңиз

Көзөмөлдөнгөн аккаунттар менен A ны A да, B ни B де, A ны B де, белгисиз хост атын жана мүчөлүгү жок аутентификацияланган аккаунтту текшериңиз. Төртүнчү жана бешинчи жабык түрдө ийгиликсиз болушу керек жана эч качан демейки жалдоочуга түшпөшү керек. Ошол эле матрицаны VPN кирүүсү аркылуу да иштетиңиз, ар бир аккаунт үчүн бир сессия кутусу менен:

curl -s -o /dev/null -w '%{http_code}' -b jar.txt https://clinic-b.example.com/records/42
curl -s -o /dev/null -w '%{http_code}' -b jar.txt https://clinic-a.example.com/records/42

Андан кийин уруксат тизмесиндеги бир жазууну өзгөртүп, кайра иштетиңиз. Жылган жыйынтык тармактык көзөмөл авторизация чечимин кабыл алып жатканын билдирет.

Фронтенддеги ар кандай өзгөртүүдөн кийин матрицаны кайталаңыз, анткени текшерүүнү аттап өткөн экинчи код жолу бул чектин эрозиясынын эң кеңири тараган жолу. Күтүлгөн жыйынтык зериктирет: ар бир кирүү бирдей жоопторду берет.

Тектеш макалалар