Az Azure Cosmos DB adatbázis-biztonságának áttekintése

A KÖVETKEZŐKRE VONATKOZIK: Nosql MongoDB Cassandra Gremlin Táblázat

Ez a cikk az Azure Cosmos DB által az adatbázis feltörésének megakadályozása, észlelése és kezelése érdekében biztosított adatbázis-biztonsági ajánlott eljárásokat és fő funkciókat írja le.

Az Azure Cosmos DB-biztonság újdonságai

A inaktív titkosítás mostantól minden Azure-régióban elérhető az Azure Cosmos DB-ben tárolt dokumentumokhoz és biztonsági másolatokhoz. A rendszer automatikusan alkalmazza a inaktív titkosítást az új és a meglévő ügyfelekre is ezekben a régiókban. Nincs szükség semmi konfigurálására. Ugyanolyan nagy késést, átviteli sebességet, rendelkezésre állást és funkciókat kap, mint korábban, azzal az előnnyel, hogy az adatok biztonságosak és biztonságosak a inaktív titkosítással. Az Azure Cosmos DB-fiókban tárolt adatok automatikusan és zökkenőmentesen titkosítva lesznek a Microsoft által szolgáltatás által felügyelt kulcsokkal. Igény szerint hozzáadhat egy második titkosítási réteget az ügyfél által felügyelt kulcsokkal vagy CMK-val kezelt kulcsokkal.

Hogyan biztonságossá tenni az adatbázist?

Az adatbiztonság az Ön, az ügyfél és az adatbázis-szolgáltató közös felelőssége. A választott adatbázis-szolgáltatótól függően az Ön által viselt felelősség mértéke eltérő lehet. Ha helyszíni megoldást választ, mindent meg kell adnia a végpontvédelemtől a hardver fizikai biztonságán át, ami nem egyszerű feladat. Ha szolgáltatásként (PaaS) felhőadatbázis-szolgáltatót választ, például az Azure Cosmos DB-t, az érintett terület jelentősen csökken. Az alábbi kép, amelyet a Microsoft Megosztott felelősségek a felhőalapú számítástechnikához című tanulmányából vettünk kölcsön, azt mutatja be, hogyan csökken az Ön felelőssége egy PaaS-szolgáltatóval, például az Azure Cosmos DB-vel.

Screenshot that shows customer and database provider responsibilities.

Az előző diagram magas szintű felhőbiztonsági összetevőket mutat be, de milyen elemek miatt kell különösen az adatbázis-megoldással foglalkoznia? Hogyan lehet összehasonlítani a megoldásokat egymással?

A következő ellenőrzőlistát javasoljuk az adatbázisrendszerek összehasonlítására vonatkozó követelményekről:

  • Hálózati biztonsági és tűzfalbeállítások
  • Felhasználói hitelesítés és részletes felhasználói vezérlők
  • Az adatok globális replikálásának képessége regionális hibák esetén
  • Feladatátvétel lehetősége egyik adatközpontból a másikba
  • Helyi adatreplikálás egy adatközponton belül
  • Automatikus adatmentések
  • Törölt adatok visszaállítása biztonsági másolatokból
  • Bizalmas adatok védelme és elkülönítése
  • Támadások monitorozása
  • Reagálás a támadásokra
  • Adatok geokerítésének képessége az adatszabályozási korlátozások betartásához
  • Kiszolgálók fizikai védelme védett adatközpontokban
  • Tanúsítványok

Bár nyilvánvalónak tűnhet, a legutóbbi nagy léptékű adatbázis-incidensek emlékeztetnek minket az alábbi követelmények egyszerű, de kritikus fontosságára:

  • Javított kiszolgálók, amelyek naprakészek
  • HTTPS alapértelmezés szerint/TLS-titkosítás
  • Rendszergazda a szigorú jelszóval rendelkező fiókok

Hogyan védi az Azure Cosmos DB az adatbázisomat?

Tekintsük át az előző listát. Hány biztonsági követelményt biztosít az Azure Cosmos DB? Minden egyes.

Tekintsük át ezeket részletesen.

Biztonsági követelmény Az Azure Cosmos DB biztonsági megközelítése
Hálózati biztonság Az IP-tűzfal használata az adatbázis védelmének első rétege. Az Azure Cosmos DB támogatja a házirendalapú IP-alapú hozzáférés-vezérlést a bejövő tűzfalak támogatásához. Az IP-alapú hozzáférés-vezérlők hasonlóak a hagyományos adatbázisrendszerek által használt tűzfalszabályokhoz. Ezek azonban ki vannak bővítve, így egy Azure Cosmos DB-adatbázisfiók csak jóváhagyott gépekről vagy felhőszolgáltatásokból érhető el. További információ: Azure Cosmos DB tűzfaltámogatás.

Az Azure Cosmos DB-vel engedélyezheti egy adott IP-címet (168.61.48.0), egy IP-tartományt (168.61.48.0/8), valamint IP-címek és tartományok kombinációját.

Az Azure Cosmos DB letiltja az engedélyezett listán kívüli gépekről érkező összes kérést. A jóváhagyott gépektől és felhőszolgáltatásoktól érkező kéréseknek ezután végre kell hajtaniuk a hitelesítési folyamatot, hogy hozzáférés-vezérlést kapjanak az erőforrásokhoz.

A virtuális hálózati szolgáltatáscímkék használatával hálózatelkülönítést érhet el, és megvédheti az Azure Cosmos DB-erőforrásokat az általános internetről. Biztonsági szabályok létrehozása során használjon szolgáltatáscímkéket az egyes IP-címek helyett. Ha megadja a szolgáltatáscímke nevét (például AzureCosmosDB) egy szabály megfelelő forrás- vagy célmezőjében, engedélyezheti vagy letilthatja a megfelelő szolgáltatás forgalmát.
Authorization Az Azure Cosmos DB kivonatalapú üzenethitelesítési kódot (HMAC) használ az engedélyezéshez.

Minden kérés kivonatolása a titkos fiók kulcsával történik, és a rendszer minden egyes hívással elküldi a 64-es base-64 kódolt kivonatot az Azure Cosmos DB-nek. A kérés érvényesítéséhez az Azure Cosmos DB a megfelelő titkos kulcsot és tulajdonságokat használja a kivonat létrehozásához, majd összehasonlítja az értéket a kérelemben szereplő értékkel. Ha a két érték egyezik, a művelet sikeresen engedélyezve van, és a kérés feldolgozása folyamatban van. Ha nem egyeznek meg, engedélyezési hiba történik, és a kérést elutasítja a rendszer.

Használhat elsődleges kulcsot vagy erőforrás-jogkivonatot, így részletes hozzáférést biztosít egy erőforráshoz, például egy dokumentumhoz.

További információ: Biztonságos hozzáférés az Azure Cosmos DB-erőforrásokhoz.
Felhasználók és engedélyek A fiók elsődleges kulcsának használatával adatbázisonként hozhat létre felhasználói erőforrásokat és engedélyerőforrásokat. Az erőforrás-jogkivonat egy adatbázis engedélyéhez van társítva, és meghatározza, hogy a felhasználó rendelkezik-e hozzáféréssel (írásvédett, írásvédett vagy nincs hozzáférés) az adatbázis alkalmazáserőforrásához. Az alkalmazáserőforrások közé tartoznak a tárolók, a dokumentumok, a mellékletek, a tárolt eljárások, az eseményindítók és az UDF-ek. Az erőforrás-jogkivonat ezután a hitelesítés során az erőforráshoz való hozzáférés biztosítására vagy megtagadására szolgál.

További információ: Biztonságos hozzáférés az Azure Cosmos DB-erőforrásokhoz.
Active Directory-integráció (Azure szerepköralapú hozzáférés-vezérlés) Az Azure Cosmos DB-fiókhoz, adatbázishoz, tárolóhoz és ajánlatokhoz (átviteli sebesség) való hozzáférést az Azure Portal hozzáférés-vezérléssel (IAM) is biztosíthatja vagy korlátozhatja. Az IAM szerepköralapú hozzáférés-vezérlést biztosít, és integrálható az Active Directoryval. Egyéni és egyéni szerepköröket is használhat egyéni és egyéni szerepkörökhöz. További információ: Active Directory-integráció.
Globális replikáció Az Azure Cosmos DB kulcsrakész globális disztribúciót kínál, amellyel kulcsrakész módon replikálhatja adatait az Azure bármely globális adatközpontjára. A globális replikáció lehetővé teszi a globális skálázást, és alacsony késésű hozzáférést biztosít az adatokhoz világszerte.

A biztonság összefüggésében a globális replikáció biztosítja a regionális hibák elleni adatvédelmet.

További információ: Adatok globális elosztása.
Régiónkénti feladatátvétel Ha több adatközpontban replikálta az adatokat, az Azure Cosmos DB automatikusan átgörgeti a műveleteket, ha egy regionális adatközpont offline állapotba kerül. A feladatátvételi régiók rangsorolt listáját az adatok replikálási régióinak használatával hozhatja létre.

További információ: Regionális feladatátvételek az Azure Cosmos DB-ben.
Helyi replikáció Az Azure Cosmos DB még egyetlen adatközponton belül is automatikusan replikálja az adatokat a magas rendelkezésre állás érdekében, így a konzisztenciaszintek közül választhat. Ez a replikáció 99,99%-os rendelkezésre állási SLA-t biztosít az összes egyrégiós fiókhoz és az összes többrégiós fiókhoz nyugodt konzisztenciával, és 99,999%-os olvasási rendelkezésre állást biztosít az összes többrégiós adatbázisfiókon.
Automatikus online biztonsági mentések Az Azure Cosmos DB-adatbázisokról rendszeresen készítünk biztonsági másolatot, és georedundáns tárolóban tároljuk őket.

További információ: Automatikus online biztonsági mentés és visszaállítás az Azure Cosmos DB-vel.
Törölt adatok visszaállítása Az automatikus online biztonsági mentésekkel helyreállíthatja azokat az adatokat, amelyeket véletlenül törölt, akár ~30 nappal az esemény után.

További információ: Automatikus online biztonsági mentés és visszaállítás az Azure Cosmos DB-vel
Bizalmas adatok védelme és elkülönítése A Mi az újdonságok területen felsorolt összes adat? most már inaktív állapotban van titkosítva.

A személyes adatok és egyéb bizalmas adatok meghatározott tárolókhoz különíthetők el, és írás-olvasás, illetve írásvédett hozzáférés adott felhasználókra korlátozható.
Támadások figyelése Az auditnaplók és a tevékenységnaplók használatával figyelheti a fiókját a normál és rendellenes tevékenységekre. Megtekintheti, hogy milyen műveleteket hajtottak végre az erőforrásokon. Ezek az adatok magukban foglalják a műveletet kezdeményező személyeket, a művelet bekövetkeztét, a művelet állapotát és még sok mást.
Reagálás a támadásokra Miután felvette a kapcsolatot Azure-támogatás egy lehetséges támadás bejelentéséhez, megkezdődik egy ötlépéses incidenskezelési folyamat. A cél a normál szolgáltatásbiztonság és -műveletek visszaállítása. A folyamat a probléma észlelése és a vizsgálat megkezdése után a lehető leggyorsabban visszaállítja a szolgáltatásokat.

További információ: Microsoft Azure biztonsági válasz a felhőben.
Geokerítés Az Azure Cosmos DB biztosítja a szuverén régiók (például Németország, Kína és az USA kormánya) adatszabályozását.
Védett létesítmények Az Azure Cosmos DB-ben tárolt adatok az Azure védett adatközpontjaiban található szilárd állapotú meghajtókon találhatók.

További információkért tekintse meg a Microsoft globális adatközpontjait.
HTTPS/SSL/TLS-titkosítás Az Azure Cosmos DB-hez csatlakozó összes kapcsolat támogatja a HTTPS-t. Az Azure Cosmos DB legfeljebb 1,2 TLS-szinteket támogat (beleértve).
A kiszolgálóoldalon minimális TLS-szintet lehet érvényesíteni. Ehhez tekintse meg az önkiszolgáló útmutatót , amely az Azure Cosmos DB minimális TLS-verziójának önkiszolgáló érvényesítését ismerteti.
Titkosítás inaktív állapotban Az Azure Cosmos DB-ben tárolt összes adat titkosítva van. További információ az Inaktív Azure Cosmos DB-titkosításról.
Javított kiszolgálók Felügyelt adatbázisként az Azure Cosmos DB szükségtelenné teszi a kiszolgálók kezelését és javítását, mert az automatikusan megtörténik.
Rendszergazda a szigorú jelszóval rendelkező fiókok Az Azure Cosmos DB-ben nem lehet jelszó nélküli rendszergazdai fiókkal rendelkezni.

A TLS és hMAC titkos hitelesítésen keresztüli biztonság alapértelmezés szerint be van kapcsolva.
Biztonsági és adatvédelmi tanúsítványok A tanúsítványok legfrissebb listájáért tekintse meg az Azure-megfelelőséget és a legújabb Azure-megfelelőségi dokumentumot az összes Azure-tanúsítvánnyal, beleértve az Azure Cosmos DB-t is.

Az alábbi képernyőkép bemutatja, hogyan használhat naplózási és tevékenységnaplókat a fiók figyeléséhez. Screenshot that shows activity logs for Azure Cosmos DB.

Elsődleges/másodlagos kulcsok

Az elsődleges/másodlagos kulcsok hozzáférést biztosítanak az adatbázisfiók összes felügyeleti erőforrásához. Elsődleges/másodlagos kulcsok:

  • Hozzáférés biztosítása fiókokhoz, adatbázisokhoz, felhasználókhoz és engedélyekhez.
  • Nem használható a tárolókhoz és dokumentumokhoz való részletes hozzáférés biztosítására.
  • A fiók létrehozásakor jönnek létre.
  • Bármikor újragenerálható.

Minden fiók két kulcsból áll: egy elsődleges és egy másodlagos kulcsból. A kettős kulcsok célja, hogy újragenerálhassa vagy összesítse a kulcsokat, és folyamatos hozzáférést biztosítson a fiókjához és adataihoz.

Az elsődleges/másodlagos kulcsok két verzióban érhetőek el: írásvédett és írásvédett. Az írásvédett kulcsok csak olvasási műveleteket engedélyeznek a fiókon. Nem biztosítanak hozzáférést az olvasási engedélyekkel kapcsolatos erőforrásokhoz.

Kulcsváltás és -regeneráció

A kulcsváltás és a regeneráció folyamata egyszerű. Először győződjön meg arról, hogy az alkalmazás következetesen az elsődleges vagy a másodlagos kulcsot használja az Azure Cosmos DB-fiók eléréséhez. Ezután kövesse a következő szakasz lépéseit. A kulcsfrissítések és kulcsregenerációk figyeléséhez tekintse meg a kulcsfrissítések figyelése metrikákkal és riasztásokkal című témakört.

Ha az alkalmazás jelenleg az elsődleges kulcsot használja

  1. Nyissa meg Azure Cosmos DB-fiókját az Azure Portalon.

  2. A bal oldali menüben válassza a Kulcsok lehetőséget, majd a másodlagos kulcs jobb oldalán található három pontból válassza a Másodlagos kulcs újragenerálása (...) lehetőséget.

    Screenshot showing how to regenerate the secondary key in the Azure portal when used with the NoSQL API.

  3. Ellenőrizze, hogy az új másodlagos kulcs következetesen működik-e az Azure Cosmos DB-fiókkal. A kulcsok újragenerálása az Azure Cosmos DB-fiók méretétől függően akár egy perctől akár több óráig is eltarthat.

  4. Cserélje le az elsődleges kulcsot az alkalmazás másodlagos kulcsára.

  5. Térjen vissza az Azure Portalra, és aktiválja az elsődleges kulcs újragenerálását.

    Screenshot showing how to regenerate the primary key in the Azure portal when used with the NoSQL API.

Ha az alkalmazás jelenleg a másodlagos kulcsot használja

  1. Nyissa meg Azure Cosmos DB-fiókját az Azure Portalon.

  2. A bal oldali menüben válassza a Kulcsok lehetőséget, majd az elsődleges kulcs jobb oldalán található három pontból (...) válassza az Elsődleges kulcs újragenerálása lehetőséget.

    Screenshot that shows how to regenerate the primary key in the Azure portal when used with the NoSQL API.

  3. Ellenőrizze, hogy az új elsődleges kulcs következetesen működik-e az Azure Cosmos DB-fiókon. A kulcsok újragenerálása az Azure Cosmos DB-fiók méretétől függően akár egy perctől akár több óráig is eltarthat.

  4. Cserélje le a másodlagos kulcsot az alkalmazás elsődleges kulcsára.

  5. Térjen vissza az Azure Portalra, és aktiválja a másodlagos kulcs újragenerálását.

    Screenshot that shows how to regenerate the secondary key in the Azure portal when used with the NoSQL API.

Kulcsregeneráció állapotának nyomon követése

A kulcs elforgatása vagy újragenerálása után nyomon követheti annak állapotát a tevékenységnaplóból. Az állapot nyomon követéséhez kövesse az alábbi lépéseket.

  1. Jelentkezzen be az Azure Portalra , és lépjen az Azure Cosmos DB-fiókjába.

  2. A bal oldali menüben válassza a Kulcsok lehetőséget. Az egyes kulcsok alatt az utolsó kulcs-újragenerálási dátumnak kell megjelennie.

    Screenshot that shows status of key regeneration from the activity log.

    Javasoljuk, hogy legalább 60 naponta újragenerálja a kulcsokat. Ha az utolsó regeneráció több mint 60 nappal ezelőtt történt, megjelenik egy figyelmeztető ikon. Azt is láthatta, hogy a kulcs nem lett rögzítve. Ebben az esetben a fiókja 2022. június 18. előtt jött létre, és a dátumok nem lettek regisztrálva. Azonban képesnek kell lennie az új kulcs újragenerálására és az új kulcs legutóbbi újragenerálási dátumának megtekintésére.

  3. Látnia kell a kulcsregenerálási eseményeket az állapotával, a művelet kiadásának időpontjával és a kulcsregenerálást kezdeményező felhasználó adataival együtt. A kulcsgenerálási művelet elfogadott állapottal indul el. A művelet befejeztével a művelet elindítva, majd sikeresre változik.

Következő lépések