Kod błędu 403 lub 500 podczas nawiązywania połączenia z witryną sieci Web opublikowaną przy użyciu programu ISA Server 2004 z dodatkiem Service Pack 2
Ten artykuł zawiera rozwiązanie błędu występującego podczas próby nawiązania połączenia z witryną sieci Web opublikowaną przy użyciu programu Microsoft Internet Security and Acceleration (ISA) Server 2004 Service Pack 2 (SP2).
Dotyczy: Windows Server 2003
Oryginalny numer KB: 912122
Ważna
Ten artykuł zawiera informacje, które pokazują, jak pomóc obniżyć ustawienia zabezpieczeń lub jak wyłączyć funkcje zabezpieczeń na komputerze. Możesz wprowadzić te zmiany, aby obejść określony problem. Przed wprowadzeniem tych zmian zalecamy ocenę ryzyka związanego z zaimplementowaniem tego obejścia w określonym środowisku. Jeśli zaimplementujesz to obejście, wykonaj wszelkie odpowiednie dodatkowe kroki, aby chronić system.
Symptomy
Podczas próby nawiązania połączenia z witryną sieci Web opublikowaną przy użyciu programu Microsoft Internet Security and Acceleration (ISA) Server 2004 Service Pack 2 (SP2) zostanie wyświetlony komunikat o błędzie. Jeśli odbiornik sieci Web serwera ISA ma włączone uwierzytelnianie podstawowe, zostanie wyświetlony następujący komunikat o błędzie:
Kod błędu: 403 Zabronione.
Strona musi być wyświetlana za pośrednictwem bezpiecznego kanału (Secure Sockets Layer (SSL)). Skontaktuj się z administratorem serwera. (12211)
Jeśli odbiornik sieci Web serwera ISA ma włączone uwierzytelnianie usługi RADIUS lub uwierzytelnianie programu Microsoft Outlook Web Access Forms-Based (cookie-auth), zostanie wyświetlony następujący komunikat o błędzie:
Kod błędu: 500 Wewnętrzny błąd serwera.
Wystąpił błąd wewnętrzny. (1359)
Przyczyna
Ten problem występuje, jeśli spełnione są wszystkie następujące warunki:
Odbiornik sieci Web serwera ISA Server 2004 ma włączoną jedną z następujących metod uwierzytelniania:
- Basic
- PROMIEŃ
- Program Outlook Web Access Forms-Based
Odbiornik sieci Web isa server 2004 jest skonfigurowany do nasłuchiwania ruchu HTTP.
Pole wyboru Wymagaj uwierzytelniania wszystkich użytkowników jest zaznaczone dla odbiornika sieci Web lub reguł publikowania w sieci Web ma zastosowanie do zestawu użytkowników innego niż domyślny zestaw użytkowników Wszyscy użytkownicy .
Połączenie z opublikowaną witryną sieci Web jest nawiązywane przy użyciu protokołu HTTP, a nie przy użyciu protokołu HTTPS.
Ten problem występuje z powodu modyfikacji zabezpieczeń dołączonej do programu ISA Server 2004 SP2. Jeśli używasz mostkowania HTTP-to-HTTP, program ISA Server 2004 SP2 nie włącza ruchu na zewnętrznym porcie HTTP, jeśli odbiornik sieci Web jest skonfigurowany do żądania co najmniej jednego z następujących rodzajów poświadczeń:
- Basic
- PROMIEŃ
- Program Outlook Web Access Forms-Based
To zachowanie występuje, ponieważ tego rodzaju poświadczenia powinny być szyfrowane. Te poświadczenia nie powinny być wysyłane w formie zwykłego tekstu za pośrednictwem protokołu HTTP.
W przypadku wersji isa server 2004, które są starsze niż ISA Server 2004 SP2, zostanie wyświetlony monit o wprowadzenie poświadczeń w formie zwykłego tekstu. Takie zachowanie może spowodować przesyłanie poświadczeń przez sieć w postaci zwykłego tekstu, jeśli nie zaimplementowano innej formy zabezpieczeń sieci, takiej jak zewnętrzny akcelerator protokołu Secure Sockets Layer (SSL) lub zaszyfrowany tunel. Serwer ISA nie zapewnia tych form zabezpieczeń.
Program ISA Server 2004 SP2 uniemożliwia wprowadzanie poświadczeń w formie zwykłego tekstu. Podczas próby wykonania tej próby zostanie wyświetlony komunikat o błędzie.
Obejście problemu
Ostrzeżenie
To obejście może sprawić, że komputer lub sieć będą bardziej narażone na ataki złośliwych użytkowników lub złośliwego oprogramowania, takiego jak wirusy. Nie zalecamy tego obejścia, ale udostępniamy te informacje, aby można było zaimplementować to obejście według własnego uznania. To obejście użytkownicy stosują na własną odpowiedzialność.
Aby obejść ten problem, skonfiguruj program ISA Server 2004 SP2 tak, aby zachowywał się jak wcześniejsze wersje programu ISA Server 2004.
W tym celu uruchom następujący skrypt na serwerze ISA Server 2004, w którym chcesz zmienić konfigurację. Skrypt ustawia wartość o nazwie AllowAskBasicAuthOverNonSecureConnection w nowych parametrach dostawcy ustawionych w katalogu głównym macierzy ISA Server 2004.
Firma Microsoft podaje przykłady programowania tylko dla celów ilustracyjnych, nie udzielając żadnej rękojmi, wyrażonej wprost ani dorozumianej, w tym także, ale nie tylko, dorozumianej rękojmi co do przydatności handlowej lub do określonych celów. W tym artykule zakłada się, że czytelnik zna demonstrowany język programowania oraz narzędzia używane do tworzenia i debugowania procedur. Wykwalifikowani pracownicy pomocy technicznej firmy Microsoft mogą pomóc w wyjaśnieniu, jak działa określona procedura, ale nie będą modyfikować tych przykładów ani dodawać żadnych funkcji i konstruować nowych procedur w celu dostosowania ich do określonych potrzeb użytkownika.
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'
' Copyright (c) Microsoft Corporation. All rights reserved.
' THIS CODE IS MADE AVAILABLE AS IS, WITHOUT WARRANTY OF ANY KIND. THE ENTIRE
' RISK OF THE USE OR THE RESULTS FROM THE USE OF THIS CODE REMAINS WITH THE
' USER. USE AND REDISTRIBUTION OF THIS CODE, WITH OR WITHOUT MODIFICATION, IS
' HEREBY PERMITTED.
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' This script adds a new VendorParametersSets under the array root.
' add a new VendorParametersSet and add a value name "AllowAskBasicAuthOverNonSecureConnection" set to 1.
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Sub AddAllowAskBasicAuthOverNonSecureConnection()
' Create the root object.
Dim root ' The FPCLib.FPC root object
Set root = CreateObject("FPC.Root")
' Declare the other objects that are required.
Dim array ' An FPCArray object
Dim VendorSets ' An FPCVendorParametersSets collection
Dim VendorSet ' An FPCVendorParametersSet object
' Get references to the array object
' and the network rules collection.
Set array = root.GetContainingArray
Set VendorSets = array.VendorParametersSets
On Error Resume Next
Set VendorSet = VendorSets.Item( "{143F5698-103B-12D4-FF34-1F34767DEabc}" )
If Err.Number <> 0 Then
Err.Clear
' Add the item
Set VendorSet = VendorSets.Add( "{143F5698-103B-12D4-FF34-1F34767DEabc}" )
CheckError
WScript.Echo "New VendorSet added... " & VendorSet.Name
Else
WScript.Echo "Existing VendorSet found... value- " & VendorSet.Value("AllowAskBasicAuthOverNonSecureConnection")
End If
if VendorSet.Value("AllowAskBasicAuthOverNonSecureConnection") <> 1 Then
Err.Clear
VendorSet.Value("AllowAskBasicAuthOverNonSecureConnection") = 1
If Err.Number <> 0 Then
CheckError
Else
VendorSets.Save false, true
CheckError
If Err.Number = 0 Then
WScript.Echo "Done, saved!"
End If
End If
Else
WScript.Echo "Done, no change!"
End If
End Sub
Sub CheckError()
If Err.Number <> 0 Then
WScript.Echo "An error occurred: 0x" & Hex(Err.Number) & " " & Err.Description
Err.Clear
End If
End Sub
AddAllowAskBasicAuthOverNonSecureConnection
Opinia
https://aka.ms/ContentUserFeedback.
Już wkrótce: w ciągu 2024 r. będziemy stopniowo usuwać problemy z usługą GitHub jako mechanizm opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla