Udostępnij za pośrednictwem


Instrukcje dotyczące korzystania z programu SQL Server 2014 w trybie zgodnym ze standardem FIPS 140-2

W tym artykule omówiono instrukcje dotyczące publikacji Federal Information Processing Standard 140-2 (FIPS 140-2) i sposobu korzystania z programu Microsoft SQL Server 2014 w trybie zgodnym ze standardem FIPS 140-2.

Oryginalna wersja produktu: SQL Server 2014
Oryginalny numer KB: 3141890

Uwaga 16.

  • Terminy "Zgodność ze standardem FIPS 140-2", "zgodność ze standardem FIPS 140-2" i "Tryb zgodny ze standardem FIPS 140-2" są zdefiniowane w tym miejscu w celu użycia i jasności. Te terminy nie są rozpoznawane ani zdefiniowane terminy dla instytucji rządowych. Rządy Stany Zjednoczone i kanadyjskie uznają weryfikację modułów kryptograficznych względem standardów, takich jak FIPS 140-2, ale nie korzystanie z modułów kryptograficznych w określony lub zgodny sposób. W tym artykule Używamy "zgodności ze standardem FIPS 140-2", "zgodność ze standardem FIPS 140-2" i "trybem zgodnym ze standardem FIPS 140-2" w sensie, że program SQL Server 2014 używa tylko zweryfikowanych wystąpień algorytmów FIPS 140-2 i funkcji tworzenia skrótów we wszystkich wystąpieniach, w których zaszyfrowane lub skróty danych są importowane do lub eksportowane z programu SQL Server 2014. Ponadto oznacza to, że program SQL Server 2014 zarządza kluczami w bezpieczny sposób, zgodnie z wymaganiami modułów kryptograficznych zweryfikowanych ze standardem FIPS 140-2. Proces zarządzania kluczami obejmuje również generowanie kluczy i magazyn kluczy.

  • W tym miejscu używamy "certyfikowanego", aby oznaczać, że wystąpienie algorytmu jest zweryfikowane ze standardem FIPS 140-2 lub że system operacyjny zawiera zweryfikowane wystąpienia algorytmów FIPS 140-2.

Co to jest FIPS?

Federal Information Processing Standard (FIPS) to standard opracowany przez następujące dwa organy rządowe:

  • Narodowy Instytut Standardów i Technologii (NIST) w Stany Zjednoczone
  • Zakład bezpieczeństwa komunikacji (CSE) w Kanadzie

Standardy FIPS są zalecane lub upoważnione do stosowania w systemach IT obsługiwanych przez rząd federalny w Stany Zjednoczone i Kanadzie.

Co to jest FIPS 140-2?

FIPS 140-2 to instrukcja zatytułowana "Wymagania dotyczące zabezpieczeń modułów kryptograficznych". Określa, które algorytmy szyfrowania i które algorytmy wyznaczania wartości skrótu mogą być używane, oraz sposób generowania i zarządzania kluczami szyfrowania. Niektóre sprzęt, oprogramowanie i procesy, które zawierają algorytmy, można uznać za certyfikowane ze standardem FIPS 140-2. Inny sprzęt, oprogramowanie i procesy, które nazywają poprawne algorytmy, mogą być zgodne ze standardem FIPS 140-2.

Jaka jest różnica między certyfikatami FIPS 140-2 i FIPS 140-2?

Program SQL Server 2014 można skonfigurować i uruchomić w sposób zgodny ze standardem FIPS 140-2. Aby skonfigurować program SQL Server 2014 w ten sposób, program SQL Server 2014 musi działać w systemie operacyjnym z certyfikatem FIPS 140-2 lub w systemie operacyjnym, który zapewnia certyfikowane moduły kryptograficzne.

Różnica między zgodnością a certyfikacją nie jest subtelna. Algorytmy mogą być certyfikowane. Niewystarczające jest użycie algorytmu tylko dlatego, że jest on wymieniony na zatwierdzonych listach w standardzie FIPS 140-2. Zamiast tego należy użyć wystąpienia takiego algorytmu, które jest certyfikowane. Oznacza to, że wystąpienie jest zweryfikowane przez instytucje rządowe. Certyfikacja wymaga testowania i weryfikacji przez Stany Zjednoczone lub kanadyjskie laboratorium ewaluacyjne zatwierdzone przez rząd. Windows Server 2012 i nowsze wersje, a także Windows 8 i nowsze wersje zawierają certyfikowane wystąpienie każdego dozwolonego algorytmu. Co najważniejsze, wywołanie każdego z tych algorytmów zapewnia tylko certyfikowane wystąpienie.

Które produkty aplikacji mogą być zgodne ze standardem FIPS 140-2?

Wszystkie aplikacje, które wykonują szyfrowanie lub skróty i które działają w certyfikowanej wersji systemu Windows, mogą być zgodne tylko z certyfikowanymi wystąpieniami zatwierdzonych algorytmów i przez spełnienie wymagań dotyczących generowania kluczy i zarządzania kluczami. Można to zrobić za pomocą jednej z następujących metod:

  • Za pomocą funkcji systemu Windows do generowania kluczy i zarządzania kluczami
  • Zgodność z wymaganiami dotyczącymi generowania kluczy i zarządzania kluczami w aplikacji

Należy pamiętać, że aplikacja zgodna ze standardem FIPS może zawierać obszary, w których są włączone niezgodne algorytmy lub procesy. Na przykład niektóre wewnętrzne procesy pozostające w systemie i niektóre dane zewnętrzne, które mają być dodatkowo szyfrowane przez certyfikowane wystąpienie algorytmu, są dozwolone.

Czy program SQL Server 2014 jest zawsze zgodny ze standardem FIPS 140-2?

L.p. Program SQL Server 2014 może być zgodny ze standardem FIPS 140-2, ponieważ można go skonfigurować i uruchomić w taki sposób, aby używał tylko wystąpień algorytmu fiPS 140-2, które są wywoływane przy użyciu interfejsu CryptoAPI do szyfrowania lub skrótu w każdym wystąpieniu, w którym wymagana jest zgodność ze standardem FIPS 140-2.

Jak można skonfigurować program SQL Server 2014 jako zgodny ze standardem FIPS 140-2?

Wymaganie dotyczące systemu operacyjnego

Zainstaluj program SQL Server 2014 na serwerze opartym na jednym z następujących systemów operacyjnych:

  • Windows Server 2012
  • Windows Server 2012 R2
  • Windows 8
  • Windows 8.1
  • Windows 10

Wymaganie dotyczące administrowania systemem Windows

Przed uruchomieniem programu SQL Server 2014 należy ustawić tryb FIPS. Program SQL Server odczytuje ustawienie podczas uruchamiania. Aby ustawić tryb FIPS, wykonaj następujące kroki:

  1. Zaloguj się do systemu Windows jako administrator systemu Windows.
  2. Kliknij Uruchom.
  3. Wybierz pozycję Panel sterowania.
  4. Kliknij pozycję Narzędzia administracyjne. (Może być konieczne przełączenie do pozycji Ikonylarge dla następnego kroku).
  5. Kliknij pozycję Zasady zabezpieczeń lokalnych. Zostanie wyświetlone okno Ustawienia zabezpieczeń lokalnych.
  6. W okienku nawigacji kliknij pozycjęZasady lokalne, a następnie kliknij pozycję Opcje zabezpieczeń.
  7. W okienku po prawej stronie kliknij dwukrotnie pozycję Kryptografia systemu: użyj algorytmów zgodnych ze standardem FIPS do szyfrowania, tworzenia skrótów i podpisywania.
  8. W wyświetlonym oknie dialogowym kliknij przycisk Włączone, a następnie kliknij przycisk Zastosuj.
  9. Kliknij przycisk OK.
  10. Zamknij okno Ustawienia zabezpieczeń lokalnych.

Wymaganie administratora programu SQL Server

Gdy usługa PROGRAMU SQL Server (gdy punkt końcowy jest skonfigurowany dla usługi Service Broker lub dublowanie bazy danych) wykryje, że tryb FIPS jest włączony podczas uruchamiania, program SQL Server rejestruje następujący komunikat w dzienniku błędów programu SQL Server:

Transport usługi Service Broker działa w trybie zgodności ze standardem FIPS.

Ponadto w dzienniku zdarzeń systemu Windows może znajdować się następujący komunikat:

Transport dublowania bazy danych działa w trybie zgodności ze standardem FIPS.

Możesz sprawdzić, czy serwer działa w trybie FIPS, wyszukując te komunikaty.

  • W przypadku zabezpieczeń okien dialogowych (między usługami) szyfrowanie używa certyfikowanego wystąpienia standardu AES (Advanced Encryption Standard), jeśli tryb FIPS jest włączony. Jeśli tryb FIPS jest wyłączony, szyfrowanie używa wersji RC4.

  • Podczas konfigurowania punktu końcowego brokera usługi w trybie FIPS administrator musi określić wartość "AES" dla brokera usług. Jeśli punkt końcowy jest skonfigurowany do wersji RC4, program SQL Server wygeneruje błąd. W związku z tym warstwa transportu nie zostanie uruchomiona.

W jaki sposób program SQL Server 2014 działa w trybie zgodnym ze standardem FIPS 140-2?

  • Po włączeniu trybu FIPS w systemie Windows we wszystkich obszarach, w których użytkownik nie ma wyboru, czy szyfrować, czy skrót i jak to zrobić, program SQL Server 2014 będzie działać zgodnie ze standardem FIPS 140-2. (Program SQL Server 2014 będzie używać interfejsu CryptoAPI w systemie Windows i będzie używać tylko certyfikowanych wystąpień algorytmów).

  • Po włączeniu trybu FIPS w systemie Windows we wszystkich obszarach, w których użytkownik ma wybór, czy używać szyfrowania, program SQL Server 2014 będzie włączać tylko szyfrowanie ZGODNE ze standardem FIPS 140-2 lub nie włączy żadnego szyfrowania.

  • Ważne informacje dla deweloperów oprogramowania: we wszystkich obszarach, w których deweloper lub użytkownik pisze własny kod do szyfrowania lub tworzenia skrótów, muszą być poinstruowani, aby używać tylko cryptoAPI (i w związku z tym tylko certyfikowanych wystąpień) i określić tylko algorytmy dozwolone przez standard FIPS 140-2. Aby uzyskać oficjalną listę NIST (National Institute of Standards and Technology) zatwierdzonych algorytmów kryptograficznych FIPS 140-2, przejdź do załączników A, C i D w programie weryfikacji modułu kryptograficznego.

Jaki jest efekt działania programu SQL Server 2014 w trybie zgodnym ze standardem FIPS 140-2?

  • Użycie silniejszego szyfrowania może mieć niewielki wpływ na wydajność tych procesów, dla których mniej silne szyfrowanie jest dozwolone, gdy proces nie działa jako zgodny ze standardem FIPS 140-2.

  • Wybór szyfrowania dla usług SSIS (UseEncryption=True) spowoduje wygenerowanie komunikatu o błędzie informującego, że dostępne szyfrowanie jest niezgodne ze zgodnością ze standardem FIPS i nie jest dozwolone. Innymi słowy, nie jest wykonywane szyfrowanie procesu komunikatu.

  • Użycie szyfrowania razem ze starszymi jednostkami DTS nie jest zgodne z standardem FIPS 140-2. W przypadku usługi DTS tryb FIPS w systemie Windows nie jest sprawdzany. W związku z tym użytkownik musi wybrać opcję braku szyfrowania, aby zachować zgodność.

  • Ponieważ większość procesów szyfrowania i tworzenia skrótów programu SQL Server 2014 jest już zgodna ze standardem FIPS 140-2, działa w trybie pełnej zgodności (czyli z włączonym trybem FIPS w systemie Windows) będzie miała niewielki wpływ na użycie lub wydajność produktu.

Gdzie mogę dowiedzieć się więcej o standardach FIPS 140-2?

Aby uzyskać więcej informacji na temat standardu FIPS 140-2, zobacz następującą publikację NIST:

Wymagania dotyczące zabezpieczeń modułów kryptograficznych

Zastrzeżenie dotyczące innych firm

Produkty innych firm omówione w tym artykule są wytwarzane przez producentów niezależnych od firmy Microsoft. Firma Microsoft nie udziela żadnych gwarancji, dorozumianych ani żadnego innego rodzaju, w odniesieniu do wydajności lub niezawodności tych produktów.