Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:Azure SQL Database
Azure SQL Database to w pełni zarządzana platforma jako usługa (PaaS) silnik bazy danych, który obsługuje większość funkcji zarządzania bazą danych, takich jak aktualizacja, łatanie, kopie zapasowe i monitoring, bez udziału użytkownika. Ponieważ często przechowuje kluczowe dane biznesowe, w tym dane klientów, informacje finansowe i własność intelektualną, zabezpieczenie Azure SQL Database jest niezbędne, aby chronić przed naruszeniami danych, nieautoryzowanym dostępem i naruszeniami zgodności.
Ten artykuł zawiera zalecenia dotyczące bezpieczeństwa, które pomogą chronić wdrożenie Azure SQL Database.
Zalecenia dotyczące zabezpieczeń w tym artykule implementują zasady Zero Trust: "Weryfikuj dokładnie", "Stosuj dostęp o najmniejszych uprawnieniach" i "Zakładaj, że doszło do naruszenia". Aby uzyskać kompleksowe wskazówki dotyczące zerowego zaufania, zobacz Centrum wskazówek dotyczących zerowego zaufania.
Zmniejszenie powierzchni ataku i łagodzenie zagrożeń
Ponieważ Azure SQL Database jest zarządzanym silnikiem PaaS, Microsoft wzmacnia system operacyjny i infrastrukturę. Twoja odpowiedzialność polega na ograniczaniu powierzchni aplikacji i danych narażonych na atak oraz na wczesnym wykrywaniu zagrożeń.
Przeprowadzaj oceny podatności SQL: Użyj oceny podatności SQL, aby wykrywać, śledzić i usuwać potencjalne błędy w konfiguracji i lukach bazy danych. Umawiaj się na powtarzające badania i reaguj zgodnie z ustalonym przez nie stanem wyjściowym. Aby uzyskać więcej informacji, zobacz Ocena luk w zabezpieczeniach SQL.
Chroń się przed wtryskiem SQL: Używaj parametryzowanych zapytań i procedur przechowywanych w swoich aplikacjach, nigdy nie łącz danych wejściowych z instrukcjami SQL. Iniekcja SQL pozostaje jednym z najczęściej stosowanych wektorów ataku przeciwko aplikacjom bazodanowym. Aby uzyskać więcej informacji, zobacz wstrzykiwanie SQL.
Zastosowanie obrony w głębi: Połącz izolację sieci, kontrolę tożsamości, ochronę danych i monitoring, aby żadna kontrola nie była jednym punktem awarii. Więcej informacji można znaleźć w dokumencie Przewodnik dotyczący spełniania typowych wymagań bezpieczeństwa.
Bezpieczeństwo sieci
Bezpieczeństwo sieci dla Azure SQL Database pomaga zapobiegać nieautoryzowanym połączeniom i zmniejsza narażenie na ataki, dzięki czemu tylko zaufane źródła mogą dotrzeć do Twoich baz danych.
Korzystaj z prywatnych punktów końcowych: Połącz się z Azure SQL Database przez prywatne adresy IP, korzystając z Azure Private Link, aby uniknąć ekspozycji bazy danych na publiczny internet. Prywatna łączność zmniejsza powierzchnię ataku i ryzyko wydostania się danych. Aby uzyskać więcej informacji, zobacz Usługa Azure Private Link dla usługi Azure SQL Database.
Wyłącz dostęp do sieci publicznej: Gdy polegasz na prywatnych punktach końcowych, całkowicie wyłącz dostęp do sieci publicznej, aby wszystkie połączenia przechodziły przez prywatny punkt. Aby uzyskać więcej informacji, zobacz Odmowa dostępu do sieci publicznej.
Konfiguruj reguły zapory na poziomie serwera: Kontroluj dostęp do swojego logicznego serwera w Azure za pomocą reguł zapory IP, które określają, które adresy lub zakresy mogą się łączyć, zgodnie z zasadą najmniejszych uprawnień. Aby uzyskać więcej informacji, zobacz Reguły zapory IP dla bazy danych Azure SQL i Azure Synapse.
Konfiguruj reguły zapory na poziomie bazy danych: Dla bardziej szczegółowej kontroli skonfiguruj reguły zapory na poziomie bazy danych, które dotyczą poszczególnych baz danych, umożliwiając politykę dostępu do każdej bazy danych. Więcej informacji można znaleźć w artykule Reguły zapory IP na poziomie bazy danych.
Ogranicz ruch do konkretnych sieci wirtualnych: Użyj reguł sieci wirtualnej, aby zezwalać na ruch tylko z określonych podsieci w ramach wirtualnych sieci Azure, dodając izolację sieciową poza reguły oparte na IP. Aby uzyskać więcej informacji, zobacz Reguły sieci wirtualnej dla usługi Azure SQL Database.
Ustaw minimalną wersję TLS: Skonfiguruj minimalną wersję TLS serwera logicznego na 1.2 lub wyższą, aby odrzucać połączenia korzystające ze starszych, słabszych protokołów. Więcej informacji można znaleźć w wersji Minimum TLS.
Wybierz odpowiednią zasadę połączeń: Używaj zasady połączeń Proxy, gdy chcesz, aby cały ruch przechodził przez bramę przez jeden port zamiast udostępniać zakres portów węzłów zaplecza, a zasady Redirect używaj, aby uzyskać mniejsze opóźnienia w środowisku Azure. Poznaj kompromisy, zanim nadpiszesz ustawienie domyślne. Aby uzyskać więcej informacji, zobacz Architektura łączności usługi Azure SQL Database.
Zarządzanie tożsamością i dostępem
Silne kontrole tożsamości i uwierzytelniania ograniczają dostęp do zasobów Azure SQL Database do upoważnionych użytkowników i aplikacji, dzięki scentralizowanemu zarządzaniu tożsamością i łatwiejszej kontroli cyklu życia konta.
Uwierzytelnianie i zarządzanie kontem
Konfiguruj administratora Microsoft Entra: Wyznacz administratora Microsoft Entra dla swojego logicznego serwera, aby umożliwić scentralizowane zarządzanie tożsamością i zaawansowane polityki uwierzytelniania. Aby uzyskać więcej informacji, zobacz Konfigurowanie uwierzytelniania Microsoft Entra.
Korzystaj z uwierzytelniania Microsoft Entra: Preferuj uwierzytelnianie Microsoft Entra zamiast uwierzytelniania SQL do scentralizowanego zarządzania tożsamością i dostępu do funkcji takich jak Conditional Access i uwierzytelnianie wieloskładnikowe. Aby uzyskać więcej informacji, zobacz Microsoft Entra authentication.
Wyłącz uwierzytelnianie SQL, gdy to możliwe: Dla maksymalnego bezpieczeństwa wymagaj, aby wszystkie połączenia korzystały z uwierzytelniania Microsoft Entra i wyłącz uwierzytelnianie SQL, eliminując ryzyko słabych lub przekroczonych haseł SQL. Aby uzyskać więcej informacji, zobacz Microsoft Entra-only authentication (Uwierzytelnianie tylko firmy Microsoft).
Tworzenie zamkniętych użytkowników bazy danych: Przypisywanie użytkowników bazy danych na tożsamości lub grupy Microsoft Entra zamiast logowania na poziomie serwera, jeśli to możliwe, upraszczając zarządzanie uprawnieniami i ograniczając dostęp na poziomie serwera. Aby uzyskać więcej informacji, zobacz Zawarte użytkowników bazy danych.
Egzekwowanie uwierzytelniania wieloskładnikowego: Wymaganie uwierzytelniania wieloskładnikowego (MFA) poprzez Dostęp Warunkowy dla tożsamości Microsoft Entra, które administrują i łączą się z serwerem logicznym, dodając warstwę ochrony wykraczającą poza hasła. Więcej informacji znajdziesz w artykule Jak działa uwierzytelnianie wieloskładnikowe.
Stosuj polityki dostępu warunkowego: Używaj dostępu warunkowego do kontrolowania dostępu na podstawie lokalizacji użytkownika, zgodności urządzenia i ryzyka, zapewniając adaptacyjne bezpieczeństwo dla każdej próby dostępu. Aby uzyskać więcej informacji, zobacz Dostęp warunkowy.
Użyj zarządzanej tożsamości dla serwera logicznego: Przypisz serwerowi logicznego identyfikator zarządzany przypisany przez system lub użytkownika, aby mógł on dotrzeć do Azure Key Vault (dla kluczy zarządzanych przez klienta TDE) oraz Azure Storage (do audytu) bez przechowywanych sekretów. Więcej informacji można znaleźć w artykule Managed identity in Microsoft Entra for Azure SQL.
Egzekwuj silne zasady dotyczące haseł: Jeśli korzystasz z uwierzytelniania SQL, wymagaj skomplikowanych haseł, których nie da się łatwo odgadnąć, regularnie je rotuj i unikaj ich powtarzania między kontami. Aby uzyskać więcej informacji, zobacz Zasady haseł.
Dostęp uprzywilejowany
Przyznaj najmniejsze uprawnienia: Dawaj użytkownikom tylko minimalne uprawnienia wymagane do wykonywania funkcji zawodowych i regularnie je przeglądaj. Aby uzyskać więcej informacji, zobacz Wprowadzenie do uprawnień aparatu bazy danych.
Oddzielne role administracyjne: Unikaj przyznawania szerokich praw administratora wszystkim administratorom. Korzystaj z szczegółowych uprawnień i podziału obowiązków między funkcje administracyjne. Aby uzyskać więcej informacji, zobacz Uprawnienia.
Przydzielaj dostęp za pomocą ról bazy danych: Używaj wbudowanych i niestandardowych ról bazy danych do implementacji bezpieczeństwa opartego na rolach, przypisując użytkownikom role zamiast przyznawać indywidualne uprawnienia. Aby uzyskać więcej informacji, zobacz Role na poziomie bazy danych.
Używaj Azure RBAC do operacji zarządzania: Kontroluj dostęp do operacji zarządzania Azure SQL Database za pomocą kontroli dostępu opartej na rolach Azure, tworząc niestandardowe role, które przyznają tylko uprawnienia potrzebne do konkretnych zadań. Aby uzyskać więcej informacji, zobacz wbudowane role platformy Azure dla baz danych.
Zapewnij uprzywilejowany dostęp na czas: Użyj usługi Microsoft Entra Privileged Identity Management (PIM), aby przyznawać ograniczony czasowo dostęp do ról administracyjnych wymagający zatwierdzenia, dzięki czemu użytkownicy mają podwyższone uprawnienia tylko wtedy, gdy są one potrzebne. Aby uzyskać więcej informacji, zobacz Privileged Identity Management.
Monitorowanie działań uprzywilejowanych: Włącz audyt do śledzenia działań wykonywanych przez konta uprzywilejowane, przeglądaj logi pod kątem podejrzanych zmian oraz ostrzegaj o wrażliwych operacjach. Aby uzyskać więcej informacji, zobacz Auditing for Azure SQL Database (Inspekcja dla usługi Azure SQL Database).
Ochrona danych
Ochrona danych chroni Twoje dane poprzez szyfrowanie, maskowanie i klasyfikację, aby zapobiec nieautoryzowanemu ujawnieniu, manipulacji lub utracie wrażliwych informacji.
Włącz Transparent Data Encryption (TDE): Zaszyfruj bazę danych, logów i kopie zapasowe w spoczynku. TDE jest domyślnie włączone dla nowych baz danych; używaj kluczy zarządzanych przez klienta w Azure Key Vault dla dodatkowej kontroli nad kluczami szyfrującymi. Więcej informacji można znaleźć w artykule Transparentne szyfrowanie danych (TDE) oraz TDE z kluczami zarządzanymi przez klienta.
Chroń wrażliwe dane za pomocą Always Encrypted: Używaj Always Encrypted do ochrony wysoce wrażliwych danych używanych, spoczynkowych i transportowych, tak aby nawet administratorzy nie mogli zobaczyć wartości tekstu jawnego. Korzystaj z bezpiecznych enklaw dla bogatszej funkcjonalności. Aby uzyskać więcej informacji, zobacz Always Encrypted.
Tworzenie danych z widocznymi śladami manipulacji przy użyciu księgi rejestrowej: Włącz księgę rejestrową, aby tworzyć niezmienny, kryptograficznie weryfikowalny zapis zmian w danych wrażliwych, co może pomóc w spełnieniu wymogów regulacyjnych. Aby uzyskać więcej informacji, zobacz Rejestr.
Maskuj dane wrażliwe za pomocą dynamicznego maskowania danych: Stosuj dynamiczne maskowanie danych, aby zaciemnić wrażliwe dane dla użytkowników nieuprzywilejowanych, jednocześnie zachowując funkcjonalność aplikacji, bez zmiany kodu aplikacji. Aby uzyskać więcej informacji, zobacz Dynamiczne maskowanie danych.
Klasyfikuj i oznaczaj dane wrażliwe: Użyj SQL Data Discovery and Classification do identyfikacji, klasyfikacji i oznaczania danych wrażliwych, tak aby funkcje takie jak audyt i maskowanie mogły wykorzystywać metadane, a Ty raportować, gdzie znajdują się wrażliwe dane. Aby uzyskać więcej informacji, zobacz Odnajdywanie i klasyfikacja danych.
Ograniczaj dostęp uprawnień na poziomie kolumn: Przyznaj lub odmawiaj uprawnień na poziomie kolumn, aby tylko użytkownicy potrzebujący wrażliwej kolumny mogli ją czytać lub modyfikować. Aby uzyskać więcej informacji, zobacz uprawnienia obiektu GRANT.
Ograniczenie wierszy za pomocą Row-Level Security (RLS): Wdroż RLS, aby użytkownicy mogli uzyskać dostęp tylko do wierszy danych istotnych dla nich, zapewniając bezpieczeństwo na poziomie aplikacji idealne dla scenariuszy multitenant. Aby uzyskać więcej informacji, zobacz zabezpieczeniaRow-Level.
Rejestrowanie i monitorowanie
Kompleksowe logowanie i monitorowanie pomagają wykrywać anomalie, badać incydenty i wykazywać zgodność z przepisami dla baz danych.
Włącz Microsoft Defender for SQL: Włącz Microsoft Defender for SQL, aby wykrywać nietypowe i potencjalnie niebezpieczne próby dostępu lub eksploatacji baz danych, w tym oceny podatności i zaawansowanej ochrony przed zagrożeniami. Aby uzyskać więcej informacji, zobacz Microsoft Defender for SQL.
Integruj się z Microsoft Defender dla Chmury: Korzystaj z Microsoft Defender dla Chmury do scentralizowanego zarządzania bezpieczeństwem, rekomendacji bezpieczeństwa oraz zintegrowanej ochrony przed zagrożeniami w zasobach Azure. Więcej informacji można znaleźć w Microsoft Defender for SQL in Defender dla Chmury.
Konfiguruj alerty ochrony przed zagrożeniami: Ustaw alerty o podejrzanych działaniach, takich jak próby wstrzyknięcia SQL, nietypowe wzorce dostępu czy uwierzytelnianie brute-force, i kieruj powiadomienia do odpowiednich odbiorców. Aby uzyskać więcej informacji, zobacz Advanced threat protection.
Włącz audyt: Konfiguruj audyt tak, aby śledził zdarzenia bazy danych i zapisuj je do przestrzeni roboczej Log Analytics, Azure Storage lub Event Hubs. Audytuj zarówno zdarzenia na poziomie serwera, jak i bazy danych, aby uzyskać pełny zasięg. Aby uzyskać więcej informacji, zobacz Auditing for Azure SQL Database (Inspekcja dla usługi Azure SQL Database).
Przesyłanie strumieniowe dzienników diagnostycznych: Skonfiguruj ustawienia diagnostyczne w celu wysyłania dzienników, w tym dzienników z kategorii zabezpieczeń, takich jak
SQLSecurityAuditEvents, do Azure Monitor Logs, Event Hubs lub Azure Storage na potrzeby przechowywania i analizy. Więcej informacji można znaleźć w artykule Monitor Azure SQL Database with Azure Monitor.Regularnie przeglądaj logi audytu: Ustal proces przeglądania logów pod kątem podejrzanych działań, koncentrując się na działaniach uprzywilejowanych kont, nieudanych próbach uwierzytelniania oraz dostępie do wrażliwych danych. Aby uzyskać więcej informacji, zobacz Auditing for Azure SQL Database (Inspekcja dla usługi Azure SQL Database).
Zgodność i ład
Mechanizmy nadzoru pomagają wykazać zgodność z przepisami i wymuszać spójne konfiguracje zabezpieczeń w bazach danych.
Śledź zgodność regulacyjną z Microsoft Defender dla Chmury: Korzystaj z panelu zgodności regulacyjnej, aby ocenić swoje bazy danych według standardów takich jak PCI DSS, ISO 27001 i SOC oraz śledzić usuwanie wadliwych kontrol. Więcej informacji można znaleźć w panelu zgodności regulacyjnej.
Wymuszanie konfiguracji za pomocą Azure Policy: Przypisz wbudowane definicje Azure Policy dla usługi Azure SQL Database, aby przeprowadzać inspekcję i wymuszać stosowanie kontrolek, takich jak TDE, audyt, prywatne punkty końcowe oraz uwierzytelnianie wyłącznie za pomocą Microsoft Entra. Więcej informacji można znaleźć w artykule Wbudowane definicje usługi Azure Policy dla usługi Azure SQL Database.
Zarządzaj danymi wrażliwymi w Microsoft Purview: Zarejestruj i skanuj Azure SQL Database w Microsoft Purview, aby katalogować, klasyfikować i zarządzać wrażliwymi danymi w całym swoim majątku danych. Więcej informacji znajdziesz w artykule Połącz się z i zarządzaj Azure SQL Database w Microsoft Purview.
Zastosuj benchmark bezpieczeństwa chmury Microsoft: Wykorzystaj benchmark bezpieczeństwa Microsoft jako bazę bazową dla całego Azure, aby priorytetyzować i zweryfikować kontrole, które stosujesz do Azure SQL Database. Więcej informacji znajdziesz w benchmarku bezpieczeństwa w chmurze Microsoft.
Kopia zapasowa i przywracanie
Niezawodne procesy tworzenia kopii zapasowych i odzyskiwania chronią dane przed utratą z powodu usterek, awarii lub ataków. Pomagają także osiągnąć cele powrotu do zdrowia.
Sprawdź konfigurację automatycznych kopii zapasowych: Potwierdź, że automatyczne kopie zapasowe są skonfigurowane i czy przechowywanie spełnia Twoje wymagania. Azure SQL Database domyślnie zapewnia automatyczne kopie zapasowe z konfigurowalną pamięcią od 1 do 35 dni. Aby uzyskać więcej informacji, zobacz Automatyczne kopie zapasowe.
Konfiguruj redundancję zapasowej pamięci zapasowej: Wybierz redundancję zapasową odpowiadającą Twoim potrzebom dostępności i odzyskiwania po awariach: lokalnie redundantna (LRS), strefowo redundantna (ZRS), georedundantna (GRS) lub geo-strefowa redundantna (GZRS). Aby uzyskać więcej informacji, zobacz Nadmiarowość magazynu kopii zapasowych.
Wykorzystaj długoterminowe retencje do zgodności: Skonfiguruj długoterminową retencję (LTR) tak, aby przechowywała pełne kopie zapasowe do 10 lat, gdy zgodność wymaga przechowywania po domyślnym okresie. Aby uzyskać więcej informacji, zobacz Długoterminowe przechowywanie.
Testuj procedury backupu i przywracania: Regularnie testuj przywracania, aby potwierdzić, że spełniają one cele czasu odzyskiwania oraz że przywrócone bazy danych działają w pełni i zawierają nienaruszone dane. Aby uzyskać więcej informacji, zobacz Odzyskiwanie bazy danych.
Zaimplementuj przywracanie geograficzne na potrzeby odzyskiwania po awarii: Użyj przywracania geograficznego, aby przywrócić bazę danych z kopii zapasowych nadmiarowo replikowanych geograficznie do dowolnego regionu platformy Azure, co zapewnia ochronę przed awariami całych regionów. Aby uzyskać więcej informacji, zobacz Przywracanie geograficzne.
Monitoruj aktywność kopii zapasowej: Śledź operacje kopii zapasowej i konfiguruj alerty o awariach, korzystając z Azure Monitor. Aby uzyskać więcej informacji, zobacz Monitorowanie i rozwiązywanie problemów z użyciem magazynu kopii zapasowych.