Uwaga
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:programu SQL Server
W tym temacie opisano kroki konfigurowania wystąpień serwera do używania certyfikatów do uwierzytelniania połączeń przychodzących na potrzeby dublowania bazy danych. Przed skonfigurowaniem połączeń przychodzących należy skonfigurować połączenia wychodzące na każdej instancji serwera. Aby uzyskać więcej informacji, zobacz Zezwalanie punktowi końcowemu dublowania bazy danych na używanie certyfikatów dla połączeń wychodzących (Transact-SQL).
Proces konfigurowania połączeń przychodzących obejmuje następujące ogólne kroki:
Utwórz konto dla innego systemu.
Utwórz użytkownika dla tego loginu.
Uzyskaj certyfikat dla punktu końcowego mirroringu innego wystąpienia serwera.
Skojarz certyfikat z użytkownikiem utworzonym w kroku 2.
Udziel uprawnień CONNECT dla logowania dla tego punktu końcowego mirroringu.
Jeśli istnieje świadek, należy również skonfigurować dla niego połączenia przychodzące. Wymaga to skonfigurowania identyfikatorów logowania, użytkowników i certyfikatów dla świadka u obu partnerów, i odwrotnie.
Poniższa procedura zawiera szczegółowe opisy tych kroków. Dla każdego kroku procedura zawiera przykład konfigurowania wystąpienia serwera w systemie o nazwie HOST_A. W towarzyszącej sekcji Przykład przedstawiono te same kroki dla innego wystąpienia serwera w systemie o nazwie HOST_B.
Aby skonfigurować instancje serwera dla przychodzących połączeń mirroringowych (na HOST_A)
Utwórz konto dla innego systemu.
Poniższy przykład tworzy login dla systemu HOST_B w bazie danych master wystąpienia serwera na HOST_A; w tym przykładzie logowanie nazywa się
HOST_B_login
. Zastąp<password>
prawidłowym hasłem.USE master; CREATE LOGIN HOST_B_login WITH PASSWORD = '<password>'; GO
Aby uzyskać więcej informacji, zobacz CREATE LOGIN (Transact-SQL).
Aby wyświetlić loginy w tym wystąpieniu serwera, możesz użyć następującej instrukcji Transact-SQL:
SELECT * FROM sys.server_principals
Aby uzyskać więcej informacji, zobacz sys.server_principals (Transact-SQL).
Utwórz użytkownika dla tego logowania.
Poniższy przykład tworzy użytkownika,
HOST_B_user
, dla logowania utworzonego w poprzednim kroku.USE master; CREATE USER HOST_B_user FOR LOGIN HOST_B_login; GO
Aby uzyskać więcej informacji, zobacz CREATE USER (Transact-SQL).
Aby wyświetlić użytkowników w tym wystąpieniu serwera, możesz użyć następującej instrukcji Transact-SQL:
SELECT * FROM sys.sysusers;
Aby uzyskać więcej informacji, zobacz sys.sysusers (Transact-SQL).
Uzyskaj certyfikat dla punktu końcowego dublowania innego wystąpienia serwera.
Jeśli jeszcze tego nie zrobiłeś podczas konfigurowania łączenia wychodzącego, uzyskaj kopię certyfikatu dla punktu końcowego mirroringu wystąpienia serwera zdalnego. W tym celu wykonaj kopię zapasową certyfikatu w tym wystąpieniu serwera zgodnie z opisem w Zezwalaj punktowi końcowemu dublowania bazy danych na używanie certyfikatów dla połączeń wychodzących (Transact-SQL). Podczas kopiowania certyfikatu do innego systemu należy użyć metody bezpiecznego kopiowania. Bądź niezwykle uważny, aby zapewnić bezpieczeństwo wszystkich certyfikatów.
Aby uzyskać więcej informacji, zobacz BACKUP CERTIFICATE (Transact-SQL).
Skojarz certyfikat z użytkownikiem utworzonym w kroku 2.
Poniższy przykład kojarzy certyfikat HOST_B z jego użytkownikiem w HOST_A.
USE master; CREATE CERTIFICATE HOST_B_cert AUTHORIZATION HOST_B_user FROM FILE = 'C:\HOST_B_cert.cer' GO
Aby uzyskać więcej informacji, zobacz CREATE CERTIFICATE (Transact-SQL).
Aby wyświetlić certyfikaty w tym wystąpieniu serwera, użyj następującej instrukcji Transact-SQL:
SELECT * FROM sys.certificates
Aby uzyskać więcej informacji, zobacz sys.certificates (Transact-SQL).
Udziel uprawnień CONNECT podczas logowania dla zdalnego punktu końcowego dublowania.
Aby na przykład udzielić z HOST_A uprawnień wystąpieniu serwera zdalnego na HOST_B do nawiązania połączenia z jego lokalnym identyfikatorem logowania - czyli z połączeniem do
HOST_B_login
- użyj następujących instrukcji Transact-SQL:USE master; GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [HOST_B_login]; GO
Aby uzyskać więcej informacji, zobacz GRANT Endpoint Permissions (Transact-SQL).
Spowoduje to ukończenie konfigurowania uwierzytelniania certyfikatu dla HOST_B w celu zalogowania się do HOST_A.
Obecnie należy wykonać równoważne kroki napływu dla HOST_A na HOST_B. Te kroki przedstawiono w części dotyczącej danych przychodzących w sekcji Przykład poniżej.
Przykład
W poniższym przykładzie pokazano konfigurowanie HOST_B dla połączeń przychodzących. Zastąp <password>
prawidłowym hasłem.
Notatka
W tym przykładzie użyto pliku certyfikatu zawierającego certyfikat HOST_A, który został utworzony przez fragment kodu w sekcji "Zezwalanie punktowi końcowemu dublowania bazy danych na korzystanie z certyfikatów dla połączeń wychodzących" (Transact-SQL).
USE master;
--On HOST_B, create a login for HOST_A.
CREATE LOGIN HOST_A_login WITH PASSWORD = '<password>';
GO
--Create a user, HOST_A_user, for that login.
CREATE USER HOST_A_user FOR LOGIN HOST_A_login
GO
--Obtain HOST_A certificate. (See the note
-- preceding this example.)
--Associate this certificate with the user, HOST_A_user.
CREATE CERTIFICATE HOST_A_cert
AUTHORIZATION HOST_A_user
FROM FILE = 'C:\HOST_A_cert.cer';
GO
--Grant CONNECT permission for the server instance on HOST_A.
GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO HOST_A_login
GO
Jeśli zamierzasz uruchomić tryb wysokiego zabezpieczenia z automatycznym failover, musisz powtórzyć te same kroki konfiguracyjne, aby skonfigurować świadka dla połączeń wychodzących i przychodzących.
Aby uzyskać informacje na temat tworzenia bazy danych lustrzanej, w tym przykładu Transact-SQL, zobacz Przygotowanie bazy danych lustrzanej do dublowania (SQL Server).
Aby uzyskać Transact-SQL przykład ustanawiania sesji trybu wysokiej wydajności, zobacz Przykład: Konfigurowanie dublowania bazy danych przy użyciu certyfikatów (Transact-SQL).
Zabezpieczenia programu .NET Framework
Podczas kopiowania certyfikatu do innego systemu należy użyć metody bezpiecznego kopiowania. Bądź szczególnie ostrożny, aby utrzymać wszystkie swoje certyfikaty w bezpieczeństwie.
Zobacz też
Bezpieczeństwo transportu dla dublowania baz danych i grup wysokiej dostępności Always On (SQL Server)
GRANT Endpoint Permissions (Transact-SQL)
Konfigurowanie zaszyfrowanej lustrzanej bazy danych
punkt końcowy dublowania bazy danych (SQL Server)
Rozwiązywanie problemów z konfiguracją dublowania bazy danych (SQL Server)