Centrum Skryptów - Active Directory

W jaki sposób można dodać witrynę do strefy witryn z ograniczeniami w programie Internet Explorer? Udostępnij na: Facebook

Skrypciarze odpowiadają na Wasze pytania

Cześć Skrypciarze!

Witamy w rubryce TechNet, w której Skrypciarze z firmy Microsoft odpowiadają na częste pytania dotyczące używania skryptów w administracji systemu. Jeśli macie jakieś pytania z tej dziedziny, zachęcamy do wysłania e-maila na adres: scripter@microsoft.com. Nie możemy zagwarantować odpowiedzi na każde otrzymane pytanie, ale staramy się jak możemy.

W jaki sposób można dodać witrynę do strefy witryn z ograniczeniami w programie Internet Explorer?

Cześć Skrypciarzu! Chciałbym dodać witrynę do strefy witryn z ograniczeniami programu Internet Explorer na komputerze zdalnym?

-- Marian

Cześć, Marianie. Powiedzmy uczciwie, że Internet Explorer cierpi na coś w rodzaju rozdwojenia jaźni w związku ze skryptami. Programowanie samej aplikacji nie przedstawia żadnego problemu: Internet Explorer posiada uniwersalny obiektowy model dokumentu, umożliwiający wykonywanie różnorakich zadań, takich jak np. tworzenie graficznego interfejsu użytkownika. (Przykłady znaleźć można w nowej witrynie HTA Developers Center (j.ang.)).

Jednak jeśli chodzi o zarządzanie przeglądarką Internet Explorer, sprawy mają się zgoła odmiennie, szczególnie gdy ktoś chce zarządzać wieloma komputerami w firmie. Istnieje wiele opcji Polityki Grupowej, które umożliwiają zarządzanie programem Internet Explorer, ale niewiele funkcji skryptowych. Internet Explorer nie posiada rozwiniętego dostawcy WMI, ani nie udostępnia obiektu COM który umożliwiałby konfigurowanie ustawień administracyjnych. Na oko wygląda, jakby skrypciarze nie mieli tu nic do roboty.

Ale na oko to chłop w szpitalu umarł. Okazuje się, że większość ustawień Internet Explorera przechowywana jest w rejestrze, i to w sposób umożliwiający dostanie się do nich za pomocą skryptu. Nie możemy skorzystać z dostawcy WMI by dodać witrynę do strefy witryn z ograniczeniami, ani nie możemy zrobić tego używając obiektu COM. Nie szkodzi: poradzimy sobie, używając skryptu WMI do zmodyfikowania rejestru.

Informacje o strefach programu Internet Explorer znajdują się w następujących miejscach rejestru:

  • HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Domains\
  • HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Domains\

Jak się można domyślać, informacje znajdujące się pod adresem HKEY_CURRENT_USER dotyczą tylko bieżącego użytkownika (i różnią się w zależności od tego, kto jest zalogowany), podczas gdy informacje pod adresem HKEY_LOCAL_MACHINE dotyczą każdego użytkownika. Witrynę z ograniczeniami można dodać do dowolnej z tych lokalizacji w zależności od tego, czy chcemy by ograniczenia dotyczyły wszystkich użytkowników czy tylko bieżącego.

Jak zatem można dodać witrynę do strefy zabezpieczeń? No cóż, trzeba wykonać następujące kroki:

Utworzenie klucza rejestru. Jeśli chcemy dodać na przykład witrynę fabrikam.com do strefy zabezpieczeń tylko dla bieżącego użytkownika, należy utworzyć klucz rejestru o nazwie fabrikam.com pod adresem HKEY_CURRENT_USER\ Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Domains\.

Utworzenie wartości DWORD w rejestrze. Nazwa wartości rejestru odpowiada protokołom zarządzanym z danej witryny. Jako że chodzi o strefę witryn z ograniczeniami, najlepiej jako nazwę wartości rejestru wpisać *; zablokuje to wszystkie protokoły pochodzące z danej witryny. Można również wpisać inną wartość, np. http, co spowoduje zablokowanie protokołu HTTP.

Przypisanie właściwych stref zawartości odpowiednim wartościom rejestru. Każda ze stref zawartości programu Internet Explorer oznaczona jest numerem. Witryny z ograniczeniami oznaczone są numerem 4; oto lista wszystkich stref:

Strefa Wartość
Lokalny intranet 1
Zaufane witryny 2
Internet 3
Witryny z ograniczeniami 4

Witryna z ograniczeniami w rejestrze wygląda tak:

Witryna z ograniczeniami w rejestrze

Rozumiemy że zaczyna robić się trochę nudno, więc natychmiast pokazujemy skrypt powodujący dodanie witryny fabrikam.com do strefy witryn z ograniczeniami:

Const HKEY_CURRENT_USER = &H80000001



strComputer = "."

Set objReg = GetObject("winmgmts:\\" & strComputer & "\root\default:StdRegProv")



strKeyPath = "Software\Microsoft\Windows\CurrentVersion\Internet Settings\" _

    & "ZoneMap\Domains\fabrikam.com"

objReg.CreateKey HKEY_CURRENT_USER,strKeyPath



strValueName = "*"

dwValue = 4

objReg.SetDWORDValue HKEY_CURRENT_USER,strKeyPath,strValueName,dwValue

Skrypt zaczyna się od utworzenia stałej o nazwie HKEY_CURRENT_USER i przypisania jej wartości &H80000001; w ten sposób wskazujemy, którą część rejestru będziemy modyfikować. Następnie łączymy się z usługą WMI i standardowym dostawcą rejestru (root\default:StdRegProv).

Teraz podajemy ścieżkę rejestru dla naszego nowego klucza; zwróćcie uwagę na adres fabrikam.com zapisany na końcu:

strKeyPath = "Software\Microsoft\Windows\CurrentVersion\Internet Settings\" _

    & "ZoneMap\Domains\fabrikam.com"

Po podaniu ścieżki wywołujemy metodę CreateKey w celu utworzenia nowego klucza rejestru.

Teraz, kiedy mamy już klucz rejestru o nazwie fabrikam.com, musimy podać wartość rejestru. W naszym przykładzie podajemy wartość o nazwie * i wartości 4; w ten sposób dodajemy domenę fabrikam.com do strefy witryn z ograniczeniami, blokując wszystkie protokoły internetowe. Następnie wywołujemy metodę SetDWORDValue, tworząc tę nową wartość rejestru. Można sprawdzić, że witryna fabrikam.com znajduje się na liscie witryn z ograniczeniami:

Witryny z ograniczeniami

Prosimy zwrócić uwagę, że nasz przykładowy skrypt działa na komputerze lokalnym, jednak z łatwością można go zmodyfikować tak, by działał na komputerze zdalnym. Wystarczy przypisać zmiennej strComputer nazwę lub adres IP odpowiedniego komputera.

 Do początku strony Do początku strony


Centrum Skryptów - Active Directory