Windows Tips & News

Sündmuse ID vea 10016 parandus: DCOM-serveril pole PCNAME\kasutajanime SID jaoks kohaliku aktiveerimise õigusi

click fraud protection
SOOVITATAV: Windowsi probleemide lahendamiseks ja süsteemi jõudluse optimeerimiseks klõpsake siin

Hiljuti hakkasin oma Windows 8.1 arvutis tühjalt kohalt saama sündmuste logisse tõrkeid pärast värskenduste installimist paiga teisipäeval. Viga oli seotud hajutatud COM-iga (DCOM):

Rakendusepõhised loa sätted ei anna CLSID-ga COM-serveri rakendusele kohaliku aktiveerimise luba {9E175B6D-F52A-11D8-B9A5-505054503030} ja APPID {9E175B9C-F52A-11D8-B9A5-505054503030 kasutajale PCNAME\Username SID S-1-5-21-81864976-3388411891-1937036257-1001 aadressilt LocalHost (kasutades LRPC-d), mis töötab rakenduse konteineris Pole saadaval SID (S-1-15-2-1430448594-2639229838-973813799-439329657-1197984847-4069167804-1277922394). Seda turbeluba saab muuta komponenditeenuste haldustööriista abil.

Selline keeruline viga võib kogenematuid kasutajaid meelehärmi tekitada. Nad ei tunne seda terminoloogiat. Lisaks on DCOM-i vigade tõrkeotsing piin, nii et ma ignoreerisin seda alguses, kuid sündmuste logi oli neid täis, kuna see juhtus iga tunni järel. Otsustasin seda parandada, otsustasin uurida.

Reklaam

Neile, kes ei tea, on COM Microsofti vana objektorienteeritud protsessidevaheline sidetehnoloogia. COM-server on käivitatav fail (EXE või DLL), mis rakendab COM-objektide komplekti. Paljud Windowsi komponendid on realiseeritud COM-objektidena ja järgivad üksteisega suhtlemiseks standardseid COM-reegleid. COM-serverid on registris registreeritud ning neil on klassi ID (CLSID) ja APPID.

Selle vea tõrkeotsingu esimene samm oli välja selgitada, millise DCOM-i komponendiga CLSID ja APPID olid seotud. Nii et käivitage registriredaktor ja minge sellele registrivõtmele:

HKEY_CLASSES_ROOT\CLSID\{9E175B6D-F52A-11D8-B9A5-505054503030}

See registrivõti osutab ka samale AppID-le, mis veateade on {9E175B9C-F52A-11D8-B9A5-505054503030}. Niisiis, minge järgmiseks

HKCR\APPID\{9E175B9C-F52A-11D8-B9A5-505054503030}

See ütles mulle, et komponent oli WSearch (Windows Search COM-objekt).

Järgmine samm oli määrata sellele CLSID-le/AppID-le õiged kohalikud aktiveerimisload, mida see soovis – minu kasutaja turva-ID-le (SID) ja rakenduse SID-le. Selleks pakub Windows komponenditeenuste tööriista, mis võimaldab kasutajal muuta COM-serverite käivitus- ja aktiveerimisõigusi, juurdepääsuõigusi ja konfiguratsiooniõigusi.

Avage haldustööriistad -> komponenditeenused. Laiendage Component Services -> Computer -> My Computer -> DCOM Config. Leidke "WSearch" ja paremklõpsake seda -> Atribuudid. Minge vahekaardile "Turvalisus".

Seda tehes nägin, et selle COM-objekti vahekaardil Turvalisus oli kõik halliks (keelatud), seega pidin esmalt andma oma kasutajakontole registris täielikud load. Avasin Regediti uuesti ja läksin sama võtme juurde

HKEY_CLASSES_ROOT\AppID\{9E175B9C-F52A-11D8-B9A5-505054503030}

ja muutis õigusi. Kõigepealt peate võtma omandiõiguse (märkige ruut „Asenda alamkonteinerite ja objektide omanik”) ning seejärel lisama oma kasutajanime ja andma sellele täieliku kontrolli. Seejärel saate omandiõiguse tagasi algsele kontole muuta (NT Service\TrustedInstaller).

Omandiõiguse ülevõtmine ja administraatoriõiguste andmine on Winaero's väga lihtne RegOwnershipEx rakendus.

Nüüd avasin uuesti komponenditeenused (Dcomcnfg.exe) ja avasin WSearchi atribuudid, vahekaardi Turvalisus ja sai nüüd käivitamise ja aktiveerimise lubade turbeõigusi redigeerida, mis on näidatud kujul see:

käivitamise ja aktiveerimise õigused

Turvagrupi Kõik kaudu on minu kasutajakontol juba kohaliku aktiveerimise õigused, kuid kuvatakse ka 3 muud SID-d, mis pole teadaolevad kasutajakontod ega rühmad, nagu nende ikoon näitab. Need on rakenduse SID-d ja viitavad rakendustele. Sündmuste logi viga ütles ka "... töötab rakenduse konteineris Puudub SID (S-1-15-2-1430448594-2639229838-973813799-439329657-1197984847-4069167804-1277922394).

Nüüd näib, et Windowsi objektivalija kasutajaliides ei võimalda teil peamiste turbeobjektide jaoks rakenduse SID-sid lisada. Nii et pärast Lisa klõpsamist klõpsasin Täpsemalt... ja seejärel Otsi kohe. See loetleb kõik objektid. Kuid enamik neist olid konto SID-d. Märkasin "KÕIK RAKENDUSPAKETID", mis nagu nimigi viitab, on tõenäoliselt kõigi rakenduspakettide rühm, seega valisin selle. Selle lisamiseks klõpsake kõikjal OK ja seejärel andke sellele kohaliku käivitamise ja kohaliku aktiveerimise õigused.

kõigi rakenduste paketid

Nüüd, kui klõpsate OK ja sulgete komponenditeenuste kasutajaliidese, kaob tõrge sündmuste logist, mis tähendab, et WSearch COM-i komponendil on nüüd õiged kohalikud käivitamis- ja aktiveerimisload.

Kirjutasin selle artikli üldise juhendina, et aidata kellelgi teisel sarnasel viisil oma sündmuste logis DCOM-i tõrkeotsingut teha. Olen endiselt mures, miks Windowsil pole veel tööriista COM-objektide õigete õiguste taastamiseks juhuks, kui need sassi lähevad.

SOOVITATAV: Windowsi probleemide lahendamiseks ja süsteemi jõudluse optimeerimiseks klõpsake siin

Windows 10 build 10565 sisaldab pesastatud virtualiseerimist

SOOVITATAV: Windowsi probleemide lahendamiseks ja süsteemi jõudluse optimeerimiseks klõpsake siin...

Loe rohkem

Windows 10 build 11097 "Redstone" on testimisel, kasutajaliideses pole veel muudatusi

Windows 10 build 11097 "Redstone" on testimisel, kasutajaliideses pole veel muudatusi

SOOVITATAV: Windowsi probleemide lahendamiseks ja süsteemi jõudluse optimeerimiseks klõpsake siin...

Loe rohkem

Kuidas muuta menüürea kõrgust operatsioonisüsteemides Windows 10, Windows 8.1 ja Windows 8

Kuidas muuta menüürea kõrgust operatsioonisüsteemides Windows 10, Windows 8.1 ja Windows 8

Varasematel Windowsi versioonidel, nagu Windows Vista või Windows 7, olid väga paindlikud välimus...

Loe rohkem