WMI-TOEGANG GEWEIGERD voor asynchrone oproepen

Over asynchrone callbacks voor WMI-gebeurtenissen naar externe machines.

Mogelijk moet u het volgende doen.
Links:
http://stackoverflow.com/questions/2782317/exception-while-managementeventwatcherwmi-to-notify-events-from-remote-machine
https://msdn.microsoft.com/en-us/library/aa393266(v=vs.85).aspx

Tekst:
DCOM-beveiliging instellen om een ​​gebruiker op afstand toegang te geven tot een computer
Beveiliging in WMI is gerelateerd aan verbinding maken met een WMI-naamruimte. WMI gebruikt DCOM om externe oproepen af ​​te handelen. Een reden waarom er geen verbinding kan worden gemaakt met een externe computer is te wijten aan een DCOM-fout (fout "DCOM-toegang geweigerd" decimaal -2147024891 of hex 0x80070005). Zie Client Application Process Security instellen voor meer informatie over DCOM-beveiliging in WMI voor C ++ - toepassingen.
U kunt DCOM-instellingen voor WMI configureren met behulp van het DCOM-configuratieprogramma (DCOMCnfg.exe) in Systeembeheer in het Configuratiescherm. Dit hulpprogramma legt de instellingen bloot waarmee bepaalde gebruikers op afstand verbinding kunnen maken met de computer via DCOM. Leden van de Administrators-groep mogen standaard op afstand verbinding maken met de computer. Met dit hulpprogramma kunt u de beveiliging instellen om de WMI-service te starten, openen en configureren.
De volgende procedure beschrijft hoe u DCOM-machtigingen voor opstarten en activeren op afstand aan bepaalde gebruikers en groepen verleent. Als computer A op afstand verbinding maakt met computer B, kunt u deze machtigingen op computer B instellen om een ​​gebruiker of groep die geen deel uitmaakt van de groep Administrators op computer B DCOM-opstart- en activeringsoproepen uit te voeren op computer B.
Aa393266.wedge (en-us, VS.85) .gif Om DCOM machtigingen voor opstarten en activeren op afstand te verlenen aan een gebruiker of groep
Klik op Start, klik op Uitvoeren, typ DCOMCNFG en klik op OK.
Vouw in het dialoogvenster Component Services Component Services uit, vouw Computers uit, klik met de rechtermuisknop op Deze computer en klik op Eigenschappen.
Klik in het dialoogvenster Eigenschappen van deze computer op het tabblad COM-beveiliging.
Klik onder Start- en activeringsrechten op Limieten bewerken.
Volg deze stappen in het dialoogvenster Startmachtiging als uw naam of uw groep niet voorkomt in de lijst Groepen of gebruikersnamen:
Klik in het dialoogvenster Startmachtiging op Toevoegen.
Voeg in het dialoogvenster Gebruikers, computers of groepen selecteren uw naam en de groep toe in het vak Geef de objectnamen op en klik op OK.
Selecteer in het dialoogvenster Startmachtiging uw gebruiker en groep in het vak Groeps- of gebruikersnamen. Selecteer in de kolom Toestaan ​​onder Machtigingen voor gebruiker de optie Remote Launch en vervolgens Remote Activation, en klik vervolgens op OK.
In de volgende procedure wordt beschreven hoe u DCOM-machtigingen voor externe toegang verleent aan bepaalde gebruikers en groepen. Als computer A op afstand verbinding maakt met computer B, kunt u deze machtigingen op computer B instellen zodat een gebruiker of groep die geen deel uitmaakt van de beheerdersgroep op computer B verbinding kan maken met computer B.
Aa393266.wedge (en-us, VS.85) .gif Om DCOM-machtigingen voor externe toegang te verlenen
Klik op Start, klik op Uitvoeren, typ DCOMCNFG en klik op OK.
Vouw in het dialoogvenster Component Services Component Services uit, vouw Computers uit, klik met de rechtermuisknop op Deze computer en klik op Eigenschappen.
Klik in het dialoogvenster Eigenschappen van deze computer op het tabblad COM-beveiliging.
Klik onder Toegangsmachtigingen op Limieten bewerken.
Selecteer in het dialoogvenster Toegangsmachtiging ANONIEME LOGON-naam in het vak Groeps- of gebruikersnamen. Selecteer Externe toegang in de kolom Toestaan ​​onder Machtigingen voor gebruiker en klik op OK.

Een externe WMI-verbinding instellen

Als u verbinding maakt met een WMI-naamruimte op een externe computer, moet u mogelijk de instellingen voor Windows Firewall, User Account Control (UAC), DCOM of Common Information Model Object Manager (CIMOM) wijzigen.
De volgende secties worden in dit onderwerp besproken:
Windows Firewall-instellingen
Instellingen voor gebruikersaccountbeheer
DCOM-instellingen
CIMOM-instellingen
Gerelateerde onderwerpen
Windows Firewall-instellingen
WMI-instellingen voor Windows Firewall-instellingen maken alleen WMI-verbindingen mogelijk, in plaats van ook andere DCOM-toepassingen.
Er moet een uitzondering worden ingesteld in de firewall voor WMI op de externe doelcomputer. Met de uitzondering voor WMI kan WMI externe verbindingen en asynchrone callbacks naar Unsecapp.exe ontvangen. Zie Beveiliging instellen voor een asynchrone oproep voor meer informatie.
Als een clienttoepassing zijn eigen sink maakt, moet die sink expliciet worden toegevoegd aan de firewalluitzonderingen om callbacks te laten slagen.
De uitzondering voor WMI werkt ook als WMI is gestart met een vaste poort, met de opdracht winmgmt / standalonehost. Zie Een vaste poort instellen voor WMI voor meer informatie.
U kunt WMI-verkeer in- of uitschakelen via de Windows Firewall-gebruikersinterface.
Aa822854.wedge (en-us, VS.85) .gif WMI-verkeer in- of uitschakelen met behulp van de firewall-gebruikersinterface
Klik in het Configuratiescherm op Beveiliging en vervolgens op Windows Firewall.
Klik op Instellingen wijzigen en klik vervolgens op het tabblad Uitzonderingen.
Schakel in het venster Uitzonderingen het selectievakje voor Windows Management Instrumentation (WMI) in om WMI-verkeer via de firewall in te schakelen. Schakel het selectievakje uit om WMI-verkeer uit te schakelen.
U kunt WMI-verkeer in- of uitschakelen via de firewall bij de opdrachtprompt.
Aa822854.wedge (en-us, VS.85) .gif WMI-verkeer in- of uitschakelen bij de opdrachtprompt met behulp van de WMI-regelgroep
Gebruik de volgende opdrachten bij een opdrachtprompt. Typ het volgende om WMI-verkeer via de firewall in te schakelen.
netsh advfirewall firewall set rule group = "windows management instrumentation (wmi)" nieuwe enable = yes
Typ de volgende opdracht om WMI-verkeer via de firewall uit te schakelen.
netsh advfirewall firewall set rule group = "windows management instrumentation (wmi)" nieuwe enable = no
In plaats van de enkele WMI-regelgroepopdracht te gebruiken, kunt u ook afzonderlijke opdrachten gebruiken voor elk van de DCOM, WMI-service en Sink.
Aa822854.wedge (en-us, VS.85) .gif WMI-verkeer inschakelen met behulp van afzonderlijke regels voor DCOM, WMI, callback-sink en uitgaande verbindingen
Gebruik de volgende opdracht om een ​​firewall-uitzondering in te stellen voor DCOM-poort 135.
netsh advfirewall firewall regel toevoegen dir = in name = "DCOM" programma =% systemroot% \ system32 \ svchost.exe service = rpcss action = protocol toestaan ​​= TCP localport = 135
Gebruik de volgende opdracht om een ​​firewall-uitzondering in te stellen voor de WMI-service.
netsh advfirewall firewall regel toevoegen dir = in name = ”WMI” programma =% systemroot% \ system32 \ svchost.exe service = winmgmt action = protocol toestaan ​​= TCP localport = any
Gebruik de volgende opdracht om een ​​firewalluitzondering in te stellen voor de sink die callbacks ontvangt van een externe computer.
netsh advfirewall firewall regel toevoegen dir = in name = "UnsecApp" programma =% systemroot% \ system32 \ wbem \ unsecapp.exe action = toestaan
Gebruik de volgende opdracht om een ​​firewalluitzondering in te stellen voor uitgaande verbindingen met een externe computer waarmee de lokale computer asynchroon communiceert.
netsh advfirewall firewall regel toevoegen dir = out name = ”WMI_OUT” program =% systemroot% \ system32 \ svchost.exe service = winmgmt action = protocol toestaan ​​= TCP localport = any
Gebruik de volgende opdrachten om de firewall-uitzonderingen afzonderlijk uit te schakelen.
Aa822854.wedge (en-us, VS.85) .gif Om WMI-verkeer uit te schakelen met behulp van afzonderlijke regels voor DCOM, WMI, callback-sink en uitgaande verbindingen
Om de DCOM-uitzondering uit te schakelen.
netsh advfirewall firewall delete rule name = "DCOM"
Om de WMI-service-uitzondering uit te schakelen.
netsh advfirewall firewall delete rule name = "WMI"
Om de sink-uitzondering uit te schakelen.
netsh advfirewall firewall delete rule name = "UnsecApp"
Om de uitgaande uitzondering uit te schakelen.
netsh advfirewall firewall delete rule name = "WMI_OUT"
Instellingen voor gebruikersaccountbeheer
Het filteren van toegangstoken voor gebruikersaccountbeheer (UAC) kan van invloed zijn op welke bewerkingen zijn toegestaan ​​in WMI-naamruimten of welke gegevens worden geretourneerd. Onder UAC worden alle accounts in de lokale beheerdersgroep uitgevoerd met een standaard gebruikerstoegangstoken, ook wel UAC-toegangstokenfiltering genoemd. Een beheerdersaccount kan een script uitvoeren met verhoogde bevoegdheden: "Uitvoeren als beheerder".
Als u geen verbinding maakt met de ingebouwde Administrator-account, heeft UAC een verschillende invloed op verbindingen met een externe computer, afhankelijk van of de twee computers zich in een domein of een werkgroep bevinden. Zie Gebruikersaccountbeheer en WMI voor meer informatie over UAC en externe verbindingen.
DCOM-instellingen
Zie Een externe WMI-verbinding beveiligen voor meer informatie over DCOM-instellingen. UAC is echter van invloed op verbindingen voor niet-domeingebruikersaccounts. Als u verbinding maakt met een externe computer met behulp van een niet-domeingebruikersaccount die is opgenomen in de lokale beheerdersgroep van de externe computer, moet u expliciet externe DCOM-toegang, activerings- en startrechten verlenen aan de account.
CIMOM-instellingen
De CIMOM-instellingen moeten worden bijgewerkt als de externe verbinding tussen computers is die geen vertrouwensrelatie hebben; anders mislukt een asynchrone verbinding. Deze instelling mag niet worden gewijzigd voor computers in hetzelfde domein of in vertrouwde domeinen.
De volgende registervermelding moet worden gewijzigd om anonieme callbacks mogelijk te maken:
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ WBEM \ CIMOM \ AllowAnonymousCallback
Data type
REG_DWORD
Als de waarde AllowAnonymousCallback is ingesteld op 0, voorkomt de WMI-service anonieme callbacks naar de client. Als de waarde is ingesteld op 1, th