Požymiai
Apsvarstykite šį scenarijų:
- Administratorius nustatė formomis pagrįstą autentifikavimą (FBA) "Microsoft Forefront Threat Management Gateway (TMG) 2010".
- Vartotojo išskirtinio vardo (DN) atribute yra pasvirasis brūkšnys (/) ir "Active Directory" supaprastintosios prieigos prie katalogų protokolo (LDAP) apibrėžtas specialusis simbolis.
- Vartotojas bando pakeisti savo slaptažodį.
Tokiu atveju slaptažodžio pakeisti nepavyks ir vartotojas gauna šį bendrą klaidos pranešimą:
Pastaba
Vartotojo vardas arba senasis slaptažodis netinkamas arba naujasis slaptažodis neatitinka minimalaus sudėtingumo reikalavimų. Bandykite vėliau.
Be to, sekimas TMG 2010 gali rodyti, kad ADsOpenObject nepavyko su 0x80005000 (E_ADS_BAD_PATHNAME) arba 0x80072032 (ERROR_DS_INVALID_DN_SYNTAX), nes LDAP užklausoje nebuvo naudojamas specialusis simbolis.
Priežastis
Ši problema kyla bet kuriai "Active Directory" vartotojo paskyrai, kurios DN atribute yra "Active Directory" specialusis simbolis ir pasvirasis brūkšnys.
Sprendimas
Norėdami išspręsti šią problemą, įdiekite "Forefront Threat Management Gateway 2010" 2 pakeitimų paketo 4 specifinių naujinimų paketą .
Pritaikę šį naujinimą, galite sukonfigūruoti grėsmių valdymo šliuzą naudoti atributą objectGUID vietoj atributo DistinguishedName "Active Directory" LDAP kelyje, kad išspręstumėte šiame straipsnyje aprašytą problemą. Norėdami įgalinti šią funkciją, atlikite toliau nurodytus veiksmus.
Nukopijuokite ir įklijuokite šį scenarijų į užrašinę, tada įrašykite jį naudodami failo vardą "EnableKB2888619.vbs":
set curArray = CreateObject("FPC.Root").GetContainingArray() Const SE_VPS_GUID = "{143F5698-103B-12D4-FF34-1F34767DEABC}" Const SE_VPS_NAME = "UseObjectGUIDInLDAPADsPath" Const SE_VPS_VALUE = 1 Sub SetValue() ' Create the root obect. Dim root ' The FPCLib.FPC root object Set root = CreateObject("FPC.Root") 'Declare the other objects needed. Dim array ' An FPCArray object Dim VendorSets ' An FPCVendorParametersSets collection Dim VendorSet ' An FPCVendorParametersSet object ' Obtain references to the array object ' and the network rules collection. Set array = curArray Set VendorSets = array.VendorParametersSets On Error Resume Next Set VendorSet = VendorSets.Item( SE_VPS_GUID ) If Err.Number <> 0 Then Err.Clear ' Add the item Set VendorSet = VendorSets.Add( SE_VPS_GUID ) CheckError WScript.Echo "New VendorSet added... " & VendorSet.Name Else WScript.Echo "Existing VendorSet found... value- " & VendorSet.Value(SE_VPS_NAME) End If If VendorSet.Value(SE_VPS_NAME) <> SE_VPS_VALUE Then Err.Clear VendorSet.Value(SE_VPS_NAME) = SE_VPS_VALUE If Err.Number <> 0 Then CheckError Else VendorSets.Save false, true CheckError If Err.Number = 0 Then WScript.Echo "Done with " & SE_VPS_NAME & ", saved!" End If End If Else WScript.Echo "Done with " & SE_VPS_NAME & ", 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 SetValueVykdykite scenarijų vienam iš grėsmių valdymo šliuzo masyvo narių. Scenarijaus pakeitimas įsigalios, kai bus sinchronizuota grėsmių valdymo šliuzo konfigūracija. Kad pakeitimas įsigaliotų, nereikia iš naujo paleisti užkardos tarnybos.
Norėdami atšaukti keitimą ir grįžti prie pradinio veikimo, raskite šią scenarijaus eilutę:
Konst SE_VPS_VALUE = 1
Pakeiskite tą eilutę taip:
Konst SE_VPS_VALUE = 0
Įrašykite scenarijų, tada vykdykite scenarijų viename iš masyvo narių.
Sprendimo būdas
Norėdami išspręsti šią problemą, pašalinkite pasvirąjį brūkšnį arba specialųjį "Active Directory" simbolį iš vartotojo DN atributo.
Būsena
„„Microsoft““ patvirtino, kad tai yra „„Microsoft““ produktų, išvardytų dalyje „Taikoma“, problema.
Daugiau informacijos
Išvengti specialieji simboliai Active Directory atributuose yra tokie:
- Kablelis (,)
- Pasvirasis kairinis brūkšnys (\)
- Numerio ženklas (#)
- Pliuso ženklas (+)
- Ženklas mažiau už (<)
- Ženklas "daugiau nei" ( )
- Kabliataškis (;)
- Kabutė (")
- Lygybės ženklas (=)
- Tarpai pradžioje arba pabaigoje
Vartotojo paskyros atributų pavyzdys:
sAMAccountName: JeffSmith
ekrano vardas: Smith, Jeff / TMG
distinguishedName: CN=Smith\, Jeff / TMG,OU=Support,DC=Fabrikam,DC=com
Pastabos
- Pasvirojo kairinio brūkšnio kaitos kaitos simbolis (\) automatiškai įtraukiamas į DN.
- Šios vartotojo paskyros atribute distinguishedName yra ir "Active Directory" specialusis simbolis, kablelis (,) ir pasvirasis brūkšnys (/).
Nuorodos
Jei reikia daugiau informacijos, žr.:
Žr. terminus , kuriuos "„Microsoft“" naudoja apibūdindama programinės įrangos naujinimus.