Udostępnij za pośrednictwem


Rezerwowanie obszarów nazw adresów URL przy użyciu składnika Http.sys

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.

Można zarezerwować jawnie nazw adresów URL HTTP.SYS, a następnie utworzyć punkty końcowe HTTP za pomocą tego obszaru nazw.Aby to zrobić, należy zrozumieć pojęcie rezerwacji przestrzeni nazw bezpośrednie i pośrednie i jak SQL Server rejestruje punkt końcowy HTTP HTTP.SYS.

Jawne.Niejawna rezerwacji przestrzeni nazw

Gdy użytkownik wykonuje punktu KOŃCOWEGO utworzyć instrukcja, takich jak następuje:

CREATE ENDPOINT sql_endpoint 
   STATE = STARTED
AS HTTP (
   PATH = '/sql/AdvWorks', 
   AUTHENTICATION = (INTEGRATED ), 
   PORTS = ( CLEAR ), 
   SITE = 'MyServer'
)
FOR SOAP (
    ...
)
Go

Obszar nazw http://MyServer:80/sql/AdvWorks jest niejawnie zarezerwowana HTTP.SYS.Oznacza to, że podczas SQL Server-Uruchamianie aplikacji, wszystkie żądania HTTP do tego punktu końcowego są przekazywane do wystąpienie SQL Server.Jednak ten obszar nazw może podjęte przez inne aplikacje Jeśli wystąpienie SQL Server jest uruchomiony.

Gdy wyraźnie rezerwacji przestrzeni nazw, obszaru nazw jest zarezerwowany dla SQL Server, i wszystkie żądania HTTP do tego punktu końcowego są przekazywane do wystąpienie SQL Server.Aby uzyskać więcej informacji, zobacz Rezerwowanie obszaru nazw HTTP.

Ostrzeżenie

Visual Studio 2005 i Http.sys różne reguły kanonizacji adresu URL.Na przykład Http.sys mogą akceptować włącznie symboli wieloznacznych, takich jak "/ SQL/Mypath /..." określona jako część ustawienie ścieżki podczas tworzenia punktu końcowego.Jednakże Visual Studio 2005 bardziej rygorystyczne zasady kanonizacji i TRIM "..." informacje przed przesłaniem adres URL.

Jak SQL Server rejestruje punkt końcowy

Aby zarządzać punktami końcowymi HTTP, należy użyć Tworzenie punktu KOŃCOWEGO, Zmienić punkt końcowy i UPUŚĆ punktu KOŃCOWEGO.Musi mieć wymagane uprawnienia, aby utworzyć, zmodyfikować lub usunąć punkt końcowy.Jest to opisane w temacie, PRZYZNAĆ uprawnienia punktu końcowego (Transact-SQL).

Podczas wykonywania tworzenie punktu KOŃCOWEGO, aby utworzyć punkt końcowy SQL Server działa instrukcja i rejestruje punkt końcowy HTTP.SYS.W zależności od kontekstu, w którym określono instrukcja punktu końcowego SQL Server personifikuje wywołującego następująco:

  • Jeśli wykonać instrukcja w kontekście konta systemu Windows SQL Server personifikuje wywołującego zarejestrować punkt końcowy HTTP.SYS.

  • Jeśli wykonać instrukcja w kontekście SQL Server konta, na przykład sa lub innymi SQL Server logowania, SQL Server personifikuje wywołującego za pomocą SQL Server konto, kiedy określone SQL Server jest zainstalowany, aby zarejestrować punkt końcowy HTTP.SYS.

Konto systemu Windows i SQL Server konta, które SQL Server personifikuje musi mieć lokalne uprawnienia administratora systemu Windows rejestracji punkt końcowy HTTP powiodła się.

Weryfikowanie rezerwacji obszaru nazw HTTP

Aby ustalić, jakie obszary nazw są zarezerwowane HTTP.SYS, należy uruchomić narzędzie konfiguracja protokołu HTTP, Httpcfg.exe, w wiersz polecenia.

Ostrzeżenie

Httpcfg.exe jest instalowany jako część narzędzi obsługi systemu Windows Server.Aby uzyskać więcej informacji, zobacz Konfigurowanie sterownika trybu jądra protokołu HTTP (Http.sys).

Poniżej przedstawiono przykład użycia Httpcfg.exe, aby powrócić do listy zarezerwowanych nazw HTTP:

httpcfg query urlacl

To polecenie wyświetli listę wszystkich istniejących rezerwacji obszaru nazw, zwracanie obszaru nazw URL i konto, pod którym został zarezerwowany.

Oto typowe dane wyjściowe tego polecenia:

URL: http://adventure-works.com:80/sql/
ACL : D:(A;;GA;;;S-1-5-21-123456789-1234567890-1262470759-1010)
-----------------------------------------------------------------
URL : https://adventure-works.com:443/sql/
ACL : D:(A;;GA;;;NS)
-----------------------------------------------------------------

Ostrzeżenie

Ta procedura może być wykonane tylko przez członków sysadmin roli i wymaga konta personifikacji uprawnień administratora na komputerze.