Mikroszolgáltatások biztonsága Hogyan biztosítható a mikroszolgáltatások infrastruktúrája?



Ez a cikk a Microservices Securityről részletesen bemutatja a mikroszolgáltatások biztonságának biztosítására vonatkozó legjobb gyakorlatokat.

A mai piacon, ahol az iparágak különféle szoftverarchitektúrákat és alkalmazásokat használnak, szinte lehetetlen ezt érezni, az adatok teljesen biztonságosak. Tehát, miközben alkalmazásokat épít a , a biztonsági kérdések egyre jelentősebbé válnak, mivel az egyes szolgáltatások kommunikálnak egymással és az ügyféllel. Tehát ebben a cikkben a mikroszolgáltatások biztonságáról a következő sorrendben fogom megvitatni a mikroszolgáltatások biztonságának biztosításának különböző módjait.

Mik azok a mikroszolgáltatások?

Mikroszolgáltatások, más néven mikroszolgáltatás architektúrája , egy építészeti stílus, amely egy alkalmazást kis autonóm szolgáltatások gyűjteményeként strukturál, a mintájára üzleti domain. Tehát megértheti a mikroszolgáltatásokat, mint kis egyéni szolgáltatásokat, amelyek egymással kommunikálnak az egységes üzleti logika mentén. Ha többet szeretne megtudni a mikroszolgáltatásokról, akkor megteheti





Mik azok a Microservices - Microservice Security - Edureka

Most, amikor a vállalatok a monolit architektúráról a mikroszolgáltatásokra térnek át, sok előnyt látnak, például méretezhetőséget, rugalmasságot és rövid fejlesztési ciklusokat. Ugyanakkor ez az architektúra néhány összetett problémát is felvet.



Tehát, ebben a cikkben, amely a mikroszolgáltatások biztonságáról szól, ismerjük meg a mikroszolgáltatások architektúrájában felmerülő problémákat.

A mikroszolgáltatások problémái

A mikroszolgáltatások problémái a következők:

1. feladat:

Vegyünk egy forgatókönyvet, amikor a felhasználónak be kell jelentkeznie az erőforrás eléréséhez. Most, a mikroszolgáltatások architektúrájában a felhasználói bejelentkezési adatokat úgy kell menteni, hogy a felhasználót ne kérjék meg minden egyes alkalommal, amikor megpróbál hozzáférni egy erőforráshoz. Ez problémát okoz, mivel a felhasználói adatok nem biztos, hogy biztonságosak, és a 3 is hozzáférhet hozzájukrdbuli.



2. feladat:

Amikor egy ügyfél kérést küld, akkor ellenőrizni kell az ügyfél adatait, és ellenőrizni kell az ügyfélnek adott engedélyeket is. Tehát, amikor mikroszolgáltatásokat használ, előfordulhat, hogy minden egyes szolgáltatáshoz hitelesítenie és hitelesítenie kell az ügyfelet. Ehhez a fejlesztők ugyanazt a kódot használhatják minden szolgáltatáshoz. De nem gondolja, hogy egy adott kódra való támaszkodás csökkenti a mikroszolgáltatások rugalmasságát? Nos, határozottan megteszi. Tehát ez az egyik fő probléma, amellyel gyakran találkoznak ebben az architektúrában.

3. feladat:

A következő probléma, amely nagyon szembetűnő, az egyes mikroszolgáltatások biztonsága. Ebben az architektúrában az összes mikroszolgáltatás egyszerre kommunikál egymással a 3 mellettrdpártalkalmazások. Tehát, amikor az ügyfél egy 3-ból jelentkezik berdfél alkalmazás, meg kell győződnie arról, hogy az ügyfél nem fér hozzá a mikroszolgáltatások adataihoz, oly módon, hogy kihasználhatja azokat.

A system.exit (0) a program leállítására használható.

Rendben, nem csak a fent említett problémák találhatók meg a mikroszolgáltatás architektúrájában. Azt mondanám, hogy számos más, a biztonsággal kapcsolatos problémával szembesülhet az alkalmazás és a architektúra alapján. E tekintetben haladjunk tovább a mikroszolgáltatások biztonságával foglalkozó cikkünkkel, és ismerjük meg a kihívások csökkentésének legjobb módját.

Bevált módszerek a mikroszolgáltatások biztonságára

A mikroprogramok biztonságának javítására szolgáló legjobb gyakorlatok a következők:

Védelem a mélység mechanizmusában

Mivel a mikroszolgáltatásokról ismert, hogy bármilyen mechanizmust granuláltan alkalmaznak, alkalmazhatja a Defence in Depth mechanizmust a szolgáltatások biztonságosabbá tétele érdekében. Világi szempontból a Defence in Depth mechanizmus alapvetően egy olyan technika, amelyen keresztül biztonsági ellenintézkedéseket alkalmazhat az érzékeny szolgáltatások védelme érdekében. Fejlesztőként tehát csak meg kell határoznia a legérzékenyebb információkat tartalmazó szolgáltatásokat, majd számos biztonsági réteget kell alkalmaznia azok védelmére. Így megbizonyosodhat arról, hogy egyetlen potenciális támadó sem képes egyszerre feltörni a biztonságot, és előre kell lépnie, és meg kell próbálnia feltörni az összes réteg védelmi mechanizmusát.

informatica powercenter oktató kezdőknek

Továbbá, mivel egy mikroszolgáltatási architektúrában különböző biztonsági szinteket valósíthat meg különböző szolgáltatásokon, a támadó, aki sikeresen kihasznál egy adott szolgáltatást, nem képes feltörni a többi szolgáltatás védelmi mechanizmusát.

Tokenek és API Gateway

Gyakran az alkalmazás megnyitásakor megjelenik egy párbeszédpanel, amely azt mondja: „Fogadja el a licencszerződést és a sütik engedélyét”. Mit jelent ez az üzenet? Nos, miután elfogadta, a felhasználói adatok tárolódnak, és munkamenet jön létre. Most, amikor legközelebb ugyanazon az oldalon jár, az oldal nem a szerverek, hanem a gyorsítótárból kerül betöltésre. Mielőtt ez a koncepció képbe került, a munkameneteket a szerver oldalon központilag tárolták. De ez volt az egyik legnagyobb akadály a vízszintes méretezésben, az alkalmazásban.

Tokenek

Tehát a probléma megoldása tokenek használata, a felhasználói adatok rögzítése. Ezeket a tokeneket a felhasználó könnyű azonosítására használják, és cookie-k formájában tárolják őket. Most, amikor egy ügyfél weboldalt kér, a kérést továbbítják a kiszolgálónak, majd a kiszolgáló meghatározza, hogy a felhasználó hozzáfér-e a kért erőforráshoz.

Most a fő probléma a tokenek, ahol a felhasználói információkat tárolják. Tehát a tokenek adatait titkosítani kell, hogy elkerülhető legyen a 3-tól való kizsákmányolásrdpártforrások. A Jason Web Format vagy a leggyakrabban JWT néven ismert nyílt szabvány, amely meghatározza a token formátumot, könyvtárakat biztosít a különböző nyelvekhez, és titkosítja azokat is.

API-átjárók

Az API-átjárók további elemként hozzáadják a szolgáltatásokat token-hitelesítéssel. Az Az átjáró belépési pontot ad az összes ügyfélkéréshez, és hatékonyan elrejti a mikroszolgáltatásokat az ügyfél elől. Tehát az ügyfélnek nincs közvetlen hozzáférése a mikroszolgáltatásokhoz, és ily módon egyetlen ügyfél sem tudja kihasználni a szolgáltatások egyikét sem.

Elosztott nyomkövetés és munkamenet-kezelés

Elosztott nyomkövetés

Mikroszolgáltatások használata közben folyamatosan figyelnie kell ezeket a szolgáltatásokat. De amikor egyszerre kell rengeteg szolgáltatást figyelni, akkor ez problémává válik. Az ilyen kihívások elkerülése érdekében használhatja az Elosztott nyomkövetés néven ismert módszert. Az elosztott nyomkövetés a hibák pontos meghatározására és a mögöttes okok azonosítására szolgáló módszer. Nem csak ez, hanem azonosíthatja a kudarc helyét is. Tehát nagyon könnyű felkutatni, melyik mikroszolgáltatásnak van biztonsági problémája.

Session Management

A munkamenet-kezelés egy fontos paraméter, amelyet figyelembe kell vennie a mikroszolgáltatások biztonsága során. Most egy munkamenet jön létre, amikor a felhasználó belép az alkalmazásba. Tehát a munkamenet adatait a következő módszerekkel kezelheti:

  1. Egyetlen felhasználó munkameneti adatait tárolhatja egy adott szerveren. De ez a fajta rendszer teljesen függ a szolgáltatások közötti terheléselosztástól, és csak a vízszintes méretezésnek felel meg.
  2. A teljes munkamenetadatok egyetlen példányban tárolhatók. Ezután az adatok a hálózaton keresztül szinkronizálhatók. Az egyetlen probléma az, hogy ebben a módszerben a hálózati erőforrások kimerülnek.
  3. Gondoskodhat arról, hogy a felhasználói adatok megszerezhetők legyenek a megosztott munkamenet-tárolóból, annak biztosítása érdekében, hogy az összes szolgáltatás olvashassa ugyanazokat a munkamenet-adatokat. De mivel az adatokat a megosztott tárhelyről szerzik be, meg kell győződnie arról, hogy van valamilyen biztonsági mechanizmusa, hogy biztonságos módon férhessen hozzá az adatokhoz.

Első munkamenet és kölcsönös SSL

Az első ülés ötlete nagyon egyszerű. A felhasználóknak egyszer be kell jelentkezniük az alkalmazásba, majd hozzáférhetnek az alkalmazás összes szolgáltatásához. De minden felhasználónak eleinte kommunikálnia kell egy hitelesítési szolgáltatással. Nos, ez mindenképpen nagy forgalmat eredményezhet az összes szolgáltatás között, és nehézkes lehet a fejlesztők számára egy ilyen forgatókönyv esetén a hibák megismerése.

A kölcsönös SSL-hez érkezve az alkalmazások gyakran szembesülnek a felhasználók forgalmával, 3rdfelek és egymással kommunikáló mikroszolgáltatások is. De mivel ezeket a szolgáltatásokat a 3rdpártok, mindig fennáll a támadások veszélye. Az ilyen esetek megoldása a kölcsönös SSL vagy a mikroszolgáltatások közötti kölcsönös hitelesítés. Ezzel a szolgáltatások között továbbított adatok titkosításra kerülnek. Az egyetlen probléma ezzel a módszerrel az, hogy amikor a mikroszolgáltatások száma megnő, mivel minden szolgáltatásnak saját TLS-tanúsítványa lesz, a fejlesztők számára nagyon nehéz lesz frissíteni a tanúsítványokat.

3rdpártalkalmazás-hozzáférés

Mindannyian hozzáférünk a 3 alkalmazáshozrdpártalkalmazások. A 3rda félalkalmazások a felhasználó által az alkalmazásban létrehozott API-tokent használják a szükséges erőforrások eléréséhez. Tehát a harmadik féltől származó alkalmazások elérhetik az adott felhasználók adatait, és nem a többi felhasználó hitelesítő adatait. Nos, ez egyetlen felhasználóra vonatkozott. De mi van akkor, ha az alkalmazásoknak több felhasználó adataihoz kell hozzáférniük? Mit gondol, hogyan fogadják el egy ilyen kérést?

Az OAuth használata

A megoldás az OAuth használata. Az OAuth használatakor az alkalmazás arra kéri a felhasználót, hogy engedélyezze a 3-atrdfélalkalmazások, a szükséges információk felhasználásához és egy token előállításához. Általában egy engedélyezési kódot használnak a token kérésére annak biztosítására, hogy a felhasználó visszahívási URL-jét ne lopják el.

mysql workbench bemutató kezdőknek

Tehát a hozzáférési token megemlítése közben az ügyfél kommunikál az engedélyezési szerverrel, és ez a szerver felhatalmazza az ügyfelet, hogy megakadályozza, hogy mások hamisítsák az ügyfél identitását. Tehát, amikor a Microservice-eket használja az OAuth-szal, a szolgáltatások ügyfélként működnek az OAuth-architektúrában a biztonsági kérdések egyszerűsítése érdekében.

Nos, emberek, nem mondanám, hogy csak így biztosíthatja szolgáltatásait. A mikroszolgáltatásokat az alkalmazás architektúrája alapján sokféleképpen védheti. Tehát, ha valaki olyan ember, aki mikroszolgáltatásokon alapuló alkalmazás létrehozására vágyik, ne feledje, hogy a szolgáltatások biztonsága az egyik fontos tényező, amelyre körültekintően kell figyelni. Ebből a szempontból a mikroszolgáltatások biztonságáról szóló cikk végéhez érkeztünk. Remélem, informatívnak találta ezt a cikket.

Ha meg szeretné tanulni a Mikroszolgáltatásokat és saját alkalmazásokat szeretne létrehozni, akkor nézze meg a mi oldalunkat amely oktató által vezetett élő képzéssel és valós projekt-tapasztalattal jár. Ez a képzés segít megérteni a mikroszolgáltatásokat mélyebben, és elsajátítja a témát.

Van egy kérdésünk? Kérjük, említse meg a megjegyzések részben. ” Microservice Security ”És visszatérek hozzád.