Az Azure Database for PostgreSQL biztonsági mentésének bemutatása

Az Azure Backup és az Azure Database Services egy nagyvállalati szintű biztonsági mentési megoldást hoz létre az Azure Database for PostgreSQL-kiszolgálókhoz, amelyek akár 10 évig is megőrzik a biztonsági mentéseket. A hosszú távú megőrzés mellett a megoldás a következő képességeket kínálja:

  • Az ügyfél által felügyelt ütemezett és igény szerinti biztonsági mentések az egyes adatbázis szintjén.
  • Adatbázisszintű visszaállítás bármely PostgreSQL-kiszolgálóra vagy blobtárolóba.
  • Az összes művelet és feladat központi monitorozása.
  • Különálló biztonsági és tartalék tartományban tárolt biztonsági másolatok. Ha a forráskiszolgáló vagy az előfizetés bármilyen körülmények között sérül, a biztonsági másolatok biztonságban maradnak a Backup-tárolóban (az Azure Backup felügyelt tárfiókjaiban).
  • A pg_dump használata nagyobb rugalmasságot tesz lehetővé a visszaállításokban. Ez segít az adatbázis-verziók közötti visszaállításban

Ezt a megoldást önállóan vagy az Azure PostgreSQL által kínált natív biztonsági mentési megoldáson kívül is használhatja, amely akár 35 napig is megőrzést biztosít. A natív megoldás alkalmas működési helyreállításokra, például amikor a legújabb biztonsági másolatokból szeretne helyreállni. Az Azure Backup megoldás segít a megfelelőségi igényeknek való megfelelésben, valamint részletesebb és rugalmasabb biztonsági mentésben/visszaállításban.

Biztonsági mentési folyamat

  1. Biztonsági mentési rendszergazdaként megadhatja azokat az Azure PostgreSQL-adatbázisokat, amelyekről biztonsági másolatot szeretne készíteni. Emellett megadhatja annak az Azure Key Vaultnak a részleteit is, amely a megadott adatbázis(ok)hoz való csatlakozáshoz szükséges hitelesítő adatokat tárolja. Ezeket a hitelesítő adatokat az adatbázis-rendszergazda biztonságosan magozza az Azure Key Vaultban.
  2. A biztonsági mentési szolgáltatás ezután ellenőrzi, hogy rendelkezik-e megfelelő engedélyekkel a megadott PostgreSQL-kiszolgálóval való hitelesítéshez és az adatbázisok biztonsági mentéséhez.
  3. Az Azure Backup elindít egy feldolgozói szerepkört (VM) egy biztonsági mentési bővítményrel, amely telepítve van a védett PostgreSQL-kiszolgálóval való kommunikációhoz. Ez a bővítmény egy koordinátorból és egy PostgreSQL beépülő modulból áll. A koordinátor munkafolyamatokat indít el különböző műveletekhez, például biztonsági mentéshez és visszaállításhoz, és a beépülő modul kezeli a tényleges adatfolyamot.
  4. Az ütemezett időpontban a koordinátor kommunikál a beépülő modullal, hogy megkezdje a biztonsági mentési adatok átvitelét a PostgreSQL-kiszolgálóról pg_dump (egyéni) használatával.
  5. A beépülő modul közvetlenül az Azure Backup felügyelt tárfiókjainak küldi el az adatokat (a Backup-tároló maszkolja), így nincs szükség átmeneti helyre. Az adatok titkosítása Microsoft által felügyelt kulcsokkal történik, és az Azure Backup szolgáltatás tárolja a tárfiókokban.

Diagram showing the backup process.

Azure Backup-hitelesítés a PostgreSQL-kiszolgálóval

Az Azure Backup az Azure által meghatározott szigorú biztonsági irányelveket követi; a biztonsági mentéshez szükséges erőforrás engedélyeit nem feltételezzük, és a felhasználónak explicit módon kell megadnia.

Kulcstartóalapú hitelesítési modell

Az Azure Backup szolgáltatásnak minden biztonsági mentés során csatlakoznia kell az Azure PostgreSQL-hez. Bár az adatbázisnak megfelelő felhasználónév + jelszó (vagy kapcsolati sztring) használja ezt a kapcsolatot, ezek a hitelesítő adatok nem az Azure Backupban vannak tárolva. Ehelyett ezeket a hitelesítő adatokat az adatbázis rendszergazdájának titkos kulcsként kell megadnia az Azure Key Vaultban. A számítási feladat rendszergazdája felelős a hitelesítő adatok kezeléséért és elforgatásáért; Az Azure Backup a kulcstartó legfrissebb titkos adatait kéri a biztonsági mentéshez.

Diagram showing the workload or database flow.

Az Azure PostgreSQL-adatbázis biztonsági mentéséhez szükséges engedélyek készlete

  1. Adja meg a következő hozzáférési engedélyeket a Backup-tároló MSI-jének:

    • Olvasói hozzáférés az Azure PostgreSQL-kiszolgálón.
    • A Key Vault titkos kulcsainak felhasználói (vagy titkos kulcsok lekérése, listázása) hozzáférése az Azure Key Vaultban.
  2. Hálózati látóvonal-hozzáférés a következőn:

    • Az Azure PostgreSQL-kiszolgáló – Az Azure-szolgáltatások jelzőjének engedélyezése igen értékre van állítva.
    • A kulcstartó – Engedélyezi, hogy a megbízható Microsoft-szolgáltatások jelző igen értékre legyen állítva.
  3. Adatbázis-felhasználó biztonsági mentési jogosultságai az adatbázisban

Feljegyzés

Ezeket az engedélyeket egyetlen kattintással megadhatja a biztonsági mentési folyamat konfigurálásához, ha Ön (a biztonsági mentési rendszergazda) "írási" hozzáféréssel rendelkezik a kívánt erőforrásokhoz, vagy használjon ARM-sablont, ha nem rendelkezik a szükséges engedélyekkel (ha több személy is érintett).

Az Azure PostgreSQL-adatbázis visszaállításához szükséges engedélyek készlete

A visszaállítási engedélyek hasonlóak a biztonsági mentéshez szükséges engedélyekhez, és meg kell adnia az engedélyeket a cél PostgreSQL-kiszolgálón és annak megfelelő kulcstartóján. A biztonsági mentési folyamat konfigurálásához hasonlóan az engedélyek beágyazott engedélyezésének felülete jelenleg nem érhető el. Ezért manuálisan kell megadnia a hozzáférést a Postgres-kiszolgálón és a megfelelő kulcstartóban.

Emellett győződjön meg arról, hogy az adatbázis-felhasználó (a kulcstartóban tárolt hitelesítő adatoknak megfelelően) a következő visszaállítási jogosultságokkal rendelkezik az adatbázisban:

  • ALTER U Standard kiadás R felhasználónév CREATEDB;
  • Rendelje hozzá a szerepkört azure_pg_admin az adatbázis-felhasználóhoz.

Microsoft Entra ID alapú hitelesítési modell

Korábban elindítottunk egy másik hitelesítési modellt, amely teljes egészében a Microsoft Entra ID-n alapult. Most azonban alternatív lehetőségként biztosítjuk az új kulcstartó-alapú hitelesítési modellt (a fent leírtak szerint), ami megkönnyíti a konfigurációs folyamatot.

Töltse le ezt a dokumentumot , hogy lekérjen egy automatizált szkriptet és a kapcsolódó utasításokat a hitelesítési modell használatához. Megfelelő engedélyeket ad egy Azure PostgreSQL-kiszolgálónak a biztonsági mentéshez és a visszaállításhoz.

Feljegyzés

Az összes új konfigurálási védelem csak az új key vault hitelesítési modellel történik. A Microsoft Entra ID-alapú hitelesítéssel konfigurált összes meglévő biztonsági mentési példány azonban továbbra is létezik, és rendszeres biztonsági másolatokat készít. A biztonsági másolatok visszaállításához a Microsoft Entra ID-alapú hitelesítést kell követnie.

Hozzáférés manuális biztosítása az Azure PostgreSQL-kiszolgálóhoz és a kulcstartóhoz

Az Azure Backuphoz szükséges összes hozzáférési engedély megadásához tekintse meg a következő szakaszokat:

Hozzáférési engedélyek az Azure PostgreSQL-kiszolgálón

  1. Állítsa be a Backup-tároló MSI-olvasó hozzáférését az Azure PostgreSQL-kiszolgálón.

    Screenshot showing the option to set Backup vault’s M S I Reader access on the Azure PostgreSQL server.

  2. Hálózati látóvonal-hozzáférés az Azure PostgreSQL-kiszolgálón: Állítsa az "Azure-szolgáltatásokhoz való hozzáférés engedélyezése" jelzőt "Igen" értékre.

    Screenshot showing the option to set network line of sight access on the Azure PostgreSQL server.

Hozzáférési engedélyek az Azure Key Vaulton (a PostgreSQL-kiszolgálóhoz társítva)

  1. Állítsa be a Backup-tároló MSI Key Vault titkos kulcsainak felhasználói (vagy titkos kulcsok lekérése, listázása ) hozzáférését az Azure Key Vaultban. Engedélyek hozzárendeléséhez szerepkör-hozzárendeléseket vagy hozzáférési szabályzatokat használhat. Nem szükséges mindkét beállítással hozzáadni az engedélyt, mivel az nem segít.

    • Azure szerepköralapú hozzáférés-vezérlés (Azure RBAC) engedélyezése (azaz az engedélymodell azure-beli szerepköralapú hozzáférés-vezérlésre van beállítva):

    Screenshot showing the option to provide secret user access.

    Screenshot showing the option to grant the backup vault’s M S I Key Vault Secrets User access on the key vault.

    • Hozzáférési szabályzatok használata (azaz az engedélymodell tárolóelérési szabályzatra van állítva):

      • Titkos kódok beolvasási és listázási engedélyeinek beállítása.
      • Tudnivalók az Azure Key Vault hozzáférési szabályzatának hozzárendeléséről

      Screenshot showing the option to grant permission using Permission model is set to Vault access policy model.

  2. Hálózati látóvonal-hozzáférés a kulcstartón: Állítsa a Megbízható Microsoft-szolgáltatások jelzőt Igen értékre.

    Screenshot showing to set the Allow trusted Microsoft services flag to yes for Network line of sight access on the key vault.

Adatbázis-felhasználó biztonsági mentési jogosultságai az adatbázisban

Futtassa a következő lekérdezést a PG felügyeleti eszközben (cserélje le a felhasználónevet az adatbázis felhasználói azonosítójával):

DO $do$
DECLARE
sch text;
BEGIN
EXECUTE format('grant connect on database %I to %I', current_database(), 'username');
FOR sch IN select nspname from pg_catalog.pg_namespace
LOOP
EXECUTE format($$ GRANT USAGE ON SCHEMA %I TO username $$, sch);
EXECUTE format($$ GRANT SELECT ON ALL TABLES IN SCHEMA %I TO username $$, sch);
EXECUTE format($$ ALTER DEFAULT PRIVILEGES IN SCHEMA %I GRANT SELECT ON TABLES TO username $$, sch);
EXECUTE format($$ GRANT SELECT ON ALL SEQUENCES IN SCHEMA %I TO username $$, sch);
EXECUTE format($$ ALTER DEFAULT PRIVILEGES IN SCHEMA %I GRANT SELECT ON SEQUENCES TO username $$, sch);
END LOOP;
END;
$do$

)

Feljegyzés

Ha a UserErrorMissingDBPermissions szolgáltatással meghiúsul egy olyan adatbázis, amelyhez már konfigurálták a biztonsági mentést , tekintse meg ezt a hibaelhárítási útmutatót , amely segítséget nyújt a probléma megoldásához.

A PG felügyeleti eszköz használata

Töltse le a PG felügyeleti eszközt , ha még nem rendelkezik vele. Ezzel az eszközzel csatlakozhat az Azure PostgreSQL-kiszolgálóhoz. Emellett adatbázisokat és új felhasználókat is hozzáadhat ehhez a kiszolgálóhoz.

Screenshot showing the process to connect to Azure PostgreSQL server using P G admin tool.

Hozzon létre egy új kiszolgálót egy tetszőleges névvel. Adja meg a gazdagép nevét/címét az Azure Portal Azure PostgreSQL-erőforrásnézetében megjelenített kiszolgálónévvel megegyező módon.

Screenshot showing the option to create new server using P G admin tool.

Screenshot showing the option to enter the Host name or address name same as the Server name.

Győződjön meg arról, hogy hozzáadja az aktuális ügyfélazonosító-címet a tűzfalszabályokhoz, hogy a kapcsolat áthaladhasson.

Screenshot showing the process to add the current client I D address to the Firewall rules.

Új adatbázisokat és adatbázis-felhasználókat adhat hozzá a kiszolgálóhoz. Adatbázis-felhasználók számára adjon hozzá egy új bejelentkezési/csoportszerepkört". Győződjön meg arról, hogy a Bejelentkezés? beállítás értéke Igen.

Screenshot showing the process to add new databases and database users to the server.

Screenshot showing the process to add a new login or group role for database users.

Screenshot showing the verification of the can login option is set to Yes.

Következő lépések

Azure Database for PostgreSQL biztonsági mentése