Condividi tramite


Protezione di una connessione WMI remota

Per connettersi a un computer remoto tramite WMI, assicurarsi che le impostazioni DCOM corrette e le impostazioni di sicurezza dello spazio dei nomi WMI siano abilitate per la connessione.

WMI ha impostazioni predefinite di rappresentazione, autenticazione e servizio di autenticazione (NTLM o Kerberos) richieste dal computer di destinazione in una connessione remota. Il computer locale può usare impostazioni predefinite diverse che il sistema di destinazione non accetta. È possibile modificare queste impostazioni nella chiamata di connessione.

Le sezioni seguenti sono descritte in questo argomento:

Rappresentazione e impostazioni di autenticazione DCOM per WMI

WMI ha impostazioni predefinite di rappresentazione, autenticazione e servizio di autenticazione DCOM (NTLM o Kerberos) richieste dal sistema remoto. Il sistema locale può usare impostazioni predefinite diverse che il sistema remoto di destinazione non accetta. È possibile modificare queste impostazioni nella chiamata di connessione. Per ulteriori informazioni, vedere Impostazione della sicurezza del processo dell'applicazione client. Tuttavia, per il servizio di autenticazione, è consigliabile specificare RPC_C_AUTHN_DEFAULT e consentire a DCOM di scegliere il servizio appropriato per il computer di destinazione.

È possibile specificare le impostazioni nei parametri per le chiamate a CoInitializeSecurity o CoSetProxyBlanket in C++. Negli script è possibile stabilire le impostazioni di sicurezza nelle chiamate a SWbemLocator.ConnectServer, in un oggetto SWbemSecurity o nello scripting moniker stringa.

Per un elenco di tutte le costanti di impersonazione C++, consultare Impostazione del livello di sicurezza del processo predefinito tramite C++. Per le costanti e le stringhe di scripting di Visual Basic per utilizzare la connessione moniker, vedere Impostazione del livello di sicurezza del processo predefinito tramite VBScript.

Nella tabella seguente sono elencate le impostazioni predefinite di rappresentazione, autenticazione e servizio di autenticazione DCOM richieste dal computer di destinazione (Computer B) in una connessione remota. Per altre informazioni, vedere Protezione di una connessione WMI remota.

Sistema operativo Computer B Stringa di scripting a livello di impersonificazione Stringa di scripting per il livello di autenticazione Servizio di autenticazione
Windows Vista o versione successiva Impersonare Pkt Kerberos

 

Le connessioni remote WMI sono influenzate da Controllo dell'Account Utente (UAC) e Windows Firewall. Per ulteriori informazioni, vedere Connessione a WMI in remoto a partire da Vista e Connessione tramite Windows Firewall.

Tenere presente che la connessione a WMI nel computer locale ha un livello di autenticazione predefinito di PktPrivacy.

Impostare la sicurezza DCOM per consentire a un utente di accedere a un computer da remoto

La sicurezza in WMI è correlata alla connessione a uno spazio dei nomi WMI. WMI usa DCOM per gestire le chiamate remote. Un motivo per cui non è possibile connettersi a un computer remoto è dovuto a un errore DCOM (errore "DCOM Access Denied" decimal -2147024891 o hex 0x80070005). Per ulteriori informazioni sulla sicurezza DCOM nelle applicazioni WMI per C++, vedere Impostazione della sicurezza del processo dell'applicazione client.

È possibile configurare le impostazioni DCOM per WMI usando l'utilità di configurazione DCOM (DCOMCnfg.exe) disponibile in Strumenti di amministrazione in Pannello di controllo. Questa utilità espone le impostazioni che consentono a determinati utenti di connettersi al computer in remoto tramite DCOM. I membri del gruppo Administrators possono connettersi in remoto al computer per impostazione predefinita. Con questa utilità è possibile impostare la sicurezza per avviare, accedere e configurare il servizio WMI.

La procedura seguente descrive come concedere autorizzazioni di avvio e attivazione remote DCOM per determinati utenti e gruppi. Se il computer A si connette in remoto al computer B, è possibile impostare queste autorizzazioni nel computer B per consentire a un utente o a un gruppo che non fa parte del gruppo Administrators nel computer B di eseguire chiamate di avvio e attivazione DCOM nel computer B.

Per concedere autorizzazioni di avvio e attivazione remote DCOM per un utente o un gruppo

  1. Fare clic su Start, fare clic su Esegui, digitare DCOMCNFGe quindi fare clic su OK.

  2. Nella finestra di dialogo Servizi componenti, espandere Servizi componenti, espandere Computer, quindi fare clic con il pulsante destro del mouse su Risorse del computer e scegliere Proprietà.

  3. Nella finestra di dialogo \Proprietà computer \, fare clic sulla scheda \Sicurezza COM \.

  4. In Autorizzazioni di avvio e attivazionecliccare su Modifica limiti.

  5. Nella finestra di dialogo Autorizzazione di avvio, seguire i seguenti passaggi se il nome o il gruppo non compare nell'elenco Gruppi o nomi utente:

    1. Nella finestra di dialogo Autorizzazione avvio, fare clic su Aggiungi.
    2. Nella finestra di dialogo Seleziona utenti, computer o gruppi, aggiungi il tuo nome e il gruppo nella casella Immetti i nomi degli oggetti da selezionare, e quindi fai clic su OK.
  6. Nella finestra di dialogo Autorizzazione di avvio, seleziona il tuo utente e gruppo nella casella Nomi gruppo o utente. Nella colonna Consenti, sotto Autorizzazioni per l'utente, selezionare Avvio remoto e selezionare Attivazione remota, e quindi fare clic su OK.

La procedura seguente descrive come concedere autorizzazioni di accesso remoto DCOM per determinati utenti e gruppi. Se il computer A si connette in remoto al computer B, è possibile impostare queste autorizzazioni nel computer B per consentire a un utente o a un gruppo che non fa parte del gruppo Administrators nel computer B di connettersi al computer B.

Per concedere le autorizzazioni di accesso remoto DCOM

  1. Fare clic su Start, fare clic su Esegui, digitare DCOMCNFGe quindi fare clic su OK.
  2. Nella finestra di dialogo Component Services, espandere Component Services, espandere Computers, quindi fare clic con il pulsante destro del mouse su Risorse del computer e selezionare Proprietà.
  3. Nella finestra di dialogo Proprietà computer, fare clic sulla scheda Sicurezza COM.
  4. In Autorizzazioni di accesso, cliccare su Modifica limiti.
  5. Nella finestra di dialogo Autorizzazione di accesso, selezionare ACCESSO ANONIMO nella casella Nome gruppo o utente. Nella colonna Consenti in autorizzazioni di per utenteselezionare accesso remotoe quindi fare clic su OK.

Consentire agli utenti di accedere a uno spazio dei nomi WMI specifico

È possibile consentire o impedire agli utenti di accedere a uno spazio dei nomi WMI specifico impostando l'autorizzazione "Abilitazione remota" nel controllo WMI per uno spazio dei nomi. Se un utente tenta di connettersi a uno spazio dei nomi a cui non è consentito l'accesso, riceverà un errore 0x80041003. Per impostazione predefinita, questa autorizzazione è abilitata solo per gli amministratori. Un amministratore può abilitare l'accesso remoto a spazi dei nomi WMI specifici per un utente non amministratore.

La procedura seguente imposta le autorizzazioni di abilitazione remota per un utente non amministratore.

Per impostare le autorizzazioni di abilitazione remota

  1. Connettersi al computer remoto usando il controllo WMI.

    Per altre informazioni sul controllo WMI, vedere Impostazione della sicurezza dello spazio dei nomi con il controllo WMI.

  2. Nella scheda Sicurezza, selezionare lo spazio dei nomi e fare clic su Sicurezza.

  3. Individuare l'account appropriato e controllare Abilitazione Remota nell'elenco autorizzazioni.

Impostazione della sicurezza dello spazio dei nomi per richiedere la crittografia dei dati per le connessioni remote

Un amministratore o un file MOF può configurare un namespace WMI in modo che non vengano restituiti dati a meno che non si utilizzi la riservatezza dei pacchetti (RPC_C_AUTHN_LEVEL_PKT_PRIVACY o PktPrivacy come moniker in uno script) in una connessione a quel namespace. In questo modo si garantisce che i dati vengano crittografati mentre attraversano la rete. Se si tenta di impostare un livello di autenticazione inferiore, verrà visualizzato un messaggio di accesso negato. Per altre informazioni, vedere Richiedere una connessione crittografata a uno spazio dei nomi.

Nell'esempio di codice VBScript seguente viene illustrato come connettersi a uno spazio dei nomi crittografato usando "pktPrivacy".

strComputer = "RemoteComputer"
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate,authenticationLevel=pktPrivacy}!\\" _
                              & strComputer & "\root\EncryptedNamespace")

Delegare con WMI

Creazione di processi in modalità remota con WMI

Protezione di client e provider C++

Protezione dei Client di Scripting