Najważniejsze wskazówki dotyczące korzystania z usług sieci Web XML macierzystego
Ta funkcja zostanie usunięta z przyszłej wersji programu Microsoft SQL Server. Należy unikać stosowania tej funkcji w nowych projektach oraz zaplanować modyfikację aplikacji, w których obecnie jest używana ta funkcja.
W tym temacie przedstawiono niektóre z najważniejszych wskazówek należy rozważyć podczas planowania i oceny macierzysty usług XML sieci Web w SQL Server do użytku w rozwiązań biznesowych.Zalecenia te mają pomóc w następujący sposób:
Zabezpieczyć instalacji SQL Server Gdy używasz usług macierzystych sieci Web XML.
Poprawić wydajność instalacji SQL Server oferując użycie wytycznych.Wytyczne te mogą pomóc podjąć decyzję w sprawie czy aplikacja efektywnie obsługiwane za pomocą macierzystego usług XML sieci Web.
Najważniejsze wskazówki dotyczące zabezpieczeń
Należy rozważyć następujące zabezpieczenia najlepszymi sposobami podczas możesz wdrożyć macierzystego usług XML sieci Web:
Korzystanie z uwierzytelnianie Kerberos.
Punkt końcowy limit połączyć uprawnień określonym użytkownikom lub grupom.
Secure Socket Layer umożliwia wymianę dane poufne.
Użyj SQL Server za zaporą.
Sprawdź konto Gość w systemie Windows jest wyłączona na serwerze.
Kontroli i aktualizacja końcowy stan stosownie do potrzeb.
Użyj domyślnych bezpiecznego punktu końcowego, ilekroć to możliwe.
Korzystanie z uwierzytelniania Kerberos
Podczas korzystania z Utwórz punkt końcowy (Transact-SQL) utworzyć punkty końcowe, zaznacz albo uwierzytelniania = uwierzytelnianie lub KERBEROS = ZINTEGROWANE, aby włączyć zintegrowane zabezpieczenia systemu Windows w obszarze Kerberos używane jako typ uwierzytelniania używany w końcowym.Pierwsza opcja pozwoli Kerberos tylko jako tryb uwierzytelnianie dla punktu końcowego.Druga opcja umożliwia punktu końcowego do obsługi uwierzytelnianie NTLM i Kerberos.
W przypadku uwierzytelniania protokół Kerberos zapewnia ulepszone zabezpieczenia przy użyciu wbudowanych funkcji, takich jak uwierzytelnianie wzajemne.Oznacza to, że tożsamość oba serwery i klienci są uwierzytelniani.
Podczas korzystania z uwierzytelnianie Kerberos, SQL Server należy skojarzyć głównej nazwy usługi (główna nazwa usługi) konta będą działać na.Aby uzyskać więcej informacji, zobacz Rejestrowanie nazwy głównej usługi Kerberos przy użyciu składnika Http.sys.
Punkt końcowy limit połączyć uprawnień określonym użytkownikom lub grupom
Po utworzeniu punkty końcowe, które są wymagane dla wdrożenia zabezpieczyć je przez ustawienie uprawnienia do połączenia przy użyciu punktu końcowego Transact-SQL sprawozdania, takie jak POŁĄCZYĆ dotacji i ZMIEŃ na punkt końcowy.Podczas przypisywania uprawnień połączenia konkretne i udzielić uprawnienia tylko do określonych użytkowników lub grupy zarezerwowaną dla punktu końcowego dostępu do SQL Server.
Ogólnie rzecz biorąc należy ograniczyć uprawnienia Zezwalaj tylko na indywidualnych użytkowników połączyć się z punktami końcowymi.Udzielanie dostępu do public rola nie jest zalecane.Zalecany pełni rozumiesz modelu uprawnień dla SQL Server.Można użyć tego modelu rozważny kontrola dostępu punktu końcowego.
Ważne: |
---|
Publicznych jest specjalna rola rola bazy danych do której każdy SQL Server użytkownik.Rola ta ma domyślne uprawnienia dostępu dla każdego użytkownika, który można uzyskać dostęp do bazy danych.Ponieważ ta rola bazy danych jest wbudowane domyślną rolę SQL Server i służy jako sposób udzielania dostępu wszystkim użytkownikom (podobnie jak wszyscy lub Użytkownicy uwierzytelnieni uprawnień systemu Windows), powinny być używane z rozwagą, podczas konfigurowania uprawnień na SQL Server. |
Aby uzyskać więcej informacji, zobacz PRZYZNAĆ uprawnienia punktu końcowego (Transact-SQL).
Użyj Secure Sockets Layer do wymiany ważnych danych.
Protokół SSL (Secure Sockets Layer) zapewnia obsługę szyfrowanie i odszyfrowywania danych za pośrednictwem bezpiecznego interfejs gniazda (adres IP i kombinacji numerów portów TCP) TCP/IP.Dla SQL Server punkty końcowe, aby zapewnić szyfrowanie SSL, należy najpierw skonfigurować certyfikat.
Podczas rejestrowania certyfikatu SSL domyślnie z portu 443, uznają, że ten sam certyfikat może być współużytkowane przez inne aplikacje.Na przykład Internet Information Services (IIS) mogą obsługujący ruch protokołu SSL na ten sam port, w którym to przypadek konfiguracja ta może dotyczyć użytkowników usług IIS.Ze względu na to udostępnianie SSL port i jego certyfikatów może być wpływ na bezpieczeństwo.
Aby uzyskać więcej informacji, zobacz Konfigurowanie certyfikatów do użytku przez SSL.
Użyj programu SQL Server za zaporą
Najlepszym zabezpieczeniem macierzysty usług XML sieci Web należy używać tylko za zaporą.Upewnij się, że możesz zestaw się punktów końcowych, że wszelkie numerów portów TCP umożliwia dostęp HTTP są chronione przez zaporę.Instalacja SQL Server do bezpośredniego dostępu do klientów internetowych i nie jest chroniony przez zaporę jest nie konfiguracja sieci zalecane.Aby uzyskać więcej informacji, zobacz Uwagi dotyczące zabezpieczeń SQL Server instalacji.
Sprawdź konto Gość jest wyłączone na serwerze
Konto Gość jest wbudowane konta w większości wersji Microsoft systemu Windows.W Windows Server 2003, jest wyłączona domyślnieDla Windows 2000 Server i Windows NT Server 4.0, jest włączona domyślnie
Aby zmniejszyć ryzyko ataków powierzchni, gdy punkty końcowe są używane, należy się upewnić czy konto Gość jest wyłączone na serwerze, na którym SQL Server jest uruchomiony.Aby uzyskać więcej informacji zobacz temat "Aby wyłączyć lub uaktywnić konto użytkownika lokalnego" w Pomocy systemu Windows.
Kontrola i stan końcowy aktualizacji, w razie potrzeby
Po utworzeniu punktu końcowego za pomocą Utwórz punkt końcowy (Transact-SQL), stan domyślny zostanie zatrzymana, chyba że wyraźnie uruchomić za pomocą określając stan = uruchomiono.Aby kontrolować stan istniejący punkt końcowy, użyj ZMIEŃ punkt końcowy (Transact-SQL) określenia zatrzymany, uruchomiono lub wyłączone.
Na przykład użyć następujące instrukcje, aby uruchomić lub zatrzymać wcześniej utworzony punkt końcowy sql_endpoint:
ALTER ENDPOINT sql_endpoint STATE=STARTED
ALTER ENDPOINT sql_endpoint STATE=STOPPED
Należy również wyłączyć punkty końcowe lub drop szczególne metody sieci Web na punkt końcowy lub punkt końcowy, jeśli nie przewidywanego użytkowania ich.
Poniższy przykład ilustruje wyłączanie punktu końcowego:
ALTER ENDPOINT sql_endpoint STATE=DISABLED
Ostrzeżenie
Po wyłączeniu punkt końcowy nie ponownego aż do SQL Server uruchomieniu usługa (MSSQLServer).
Upuść metoda sieci Web z punktem końcowym, użyje instrukcja, które są podobne do następującego formatu:
ALTER ENDPOINT sql_endpoint
FOR SOAP
(
DROP WEBMETHOD 'SayHello'
)
Aby usunąć punkt końcowy, użyj DROP końcowy.
Użyj domyślnych bezpiecznego punktu końcowego możliwe
Podczas tworzenia lub modyfikowania punktu końcowego za pomocą Tworzenie punktu KOŃCOWEGO lub Zmienić punkt końcowy, po opcji ustawienia domyślne są stosowane, chyba że użytkownik jawnie zestaw inaczej:
INSTANCJE = DISABLED
Transact-SQL batch mode is disabled for the endpoint.
LOGIN_TYPE = WINDOWS
Dla użytkowników końcowych jest dozwolone tylko uwierzytelnianie systemu Windows.
Chyba, że należy zmodyfikować te ustawienia do obsługi dostępu lub funkcje, które zamierzają i wymagać wdrażanie aplikacji, zaleca się, aby użyć ustawień domyślnych dla tych opcji, jeśli to możliwe.
Informacje o wybieraniu algorytm szyfrowanie, zobacz Wybór algorytmu szyfrowania.
Najważniejsze wskazówki dotyczące wydajności
Należy rozważyć następujące wydajności najlepszymi sposobami podczas możesz wdrożyć macierzystego usług XML sieci Web:
Wdrażanie w odpowiednich sytuacjach.
Współczynnik dodatkowe zasoby serwera planowania rozwiązań opartych na SOAP.
Skonfigurować odpowiednią opcję WSDL dla potrzeb.
Wdrożenie odpowiednich scenariuszy
Macierzysty usług XML sieci Web jest najodpowiedniejszy w scenariuszach z następującymi wymaganiami:
Aplikacja zwraca lub używa danych XML.
Aplikacja intensywnie opiera się na procedury przechowywane dla logika biznesowa.
Jako część rozwiązania biznesowego, należy zintegrować SQL Server-obsługiwanych aplikacji usługa sieci Web z innymi aplikacjami usługa sieci Web, aby osiągnąć cele z Architektura zorientowana na usługa (SOA) (SOA).
Szukasz lepsze wykonywanie zastępczego dla roztworu masowej średniej wielkości SQLXML wdrażania usług sieci Web razem na tym samym serwerze.
Chcesz wytwarzają i publikuje sprawozdanie statyczne dla intranetu witryna sieci Web, gdzie bogatych funkcji zestaw i dodatkowe obciążenie związane z SQL Server 2005 Reporting Services lub nowszej może przekroczyć wymagania.
Podobnie w scenariuszach z następującymi wymaganiami, nie zaleca się używania macierzysty usług XML sieci Web:
Your application is used to insert or retrieve binary large object (BLOB) data, such as large binaryimage, or text values.
Aplikacja wymaga rzeczywistego -czas przetwarzania transakcji i krytyczne odpowiedź czass.
Używasz SQL Server w połączeniu z innymi aplikacjami intensywnie przetwarzania, takich jak aplikacje c testu TPC (TPC-C).
Współczynnik dodatkowe zasoby serwera planowania rozwiązań opartych na SOAP
Celów planowania zdolności produkcyjnych, należy zauważyć, że w przeciwieństwie do protokół strumienia danych tabelarycznych (TDS) SOAP wydajność zależy to od aplikacji i może wymagać serwera dodatkowe obciążenie zasób.Na przykład w badania SQL Server 2005 przez SQL Server zespołu produktu, w scenariuszach, w których zostały zwrócone dużych dokumentów XML, wydajność dla dostępu oparte na protokole SOAP miał 20 do 30 procent dłużej niż na podstawie TDS dostępu.
Konfigurowanie opcji WSDL właściwe dla potrzeb
Przed wdrożeniem macierzystym usług XML sieci Web, należy określić odpowiednią opcję WSDL w obsługi wszystkich klientów i systemy operacyjne, które są wymagane do rozwiązania.
Maksymalna współdziałanie w środowiskach heterogenicznych, w których klienci usługa sieci Web zawierają systemów operacyjnych innych niż system Windows za pomocą WSDL proste.For Windows-only environments in which you are developing with Microsoft Visual Studio 2005, you can use the default WSDL to access the rich type support included in Visual Studio 2005.
Czasami klienci protokołu SOAP firm może wymagać WSDL dostosowane ze względu na współdziałanie.Aby uzyskać więcej informacji, zobacz Implementowanie obsługi WSDL niestandardowe.