Sei già un cliente NinjaOne? Effettua il login per visualizzare le altre guide e gli ultimi aggiornamenti.

Powershell: Set-NinjaProperty

Argomento

Questo articolo spiega come utilizzare Set-NinjaProperty per impostare il valore di un campo personalizzato in base al suo nome e al suo tipo.

Se si utilizza il modulo PowerShell di NinjaOne al di fuori di uno script di automazione, potrebbe essere necessario modificare la politica di esecuzione di PowerShell. Per altre informazioni sulle politiche di esecuzione, consultare la documentazione di Microsoft: Informazioni sulle politiche di esecuzione ( link esterno).

Ambiente

  • NinjaOne
  • Microsoft Powershell

Descrizione

Il cmdlet Set-NinjaProperty consente di impostare il valore di un campo personalizzato specificandone nome, tipo e valore. Se viene specificato un tipo, il valore fornito viene automaticamente convertito in un formato compatibile con il tipo di campo specificato. Ad esempio, se viene fornito un oggetto DateTime e il tipo è "Date", il cmdlet converte il valore in un timestamp Unix epoch prima di impostare il campo.

Questo cmdlet supporta anche l’impostazione di valori per campi a discesa e a selezione multipla utilizzando i nomi dei campi anziché i GUID. I tipi di campo supportati includono: "Casella di controllo", "Date", "Date", "DateTime", "Decimale",
"Dropdown", "Email", "Integer", "Indirizzo IP", "MultiLine", "MultiSelect", "Phone", "Secure", "Text", "Time", "URL" e "WYSIWYG".

Solo i campi con autorizzazioni di scrittura automatizzate possono essere aggiornati utilizzando questo cmdlet. Il campo personalizzato specificato viene aggiornato dopo la successiva sincronizzazione riuscita con la piattaforma NinjaOne, che in genere avviene entro pochi minuti. Il dispositivo che esegue questo cmdlet deve essere un delegato del documento contenente il campo personalizzato se viene utilizzato il parametro -DocumentName.

Sintassi

Set-NinjaProperty [-Name] <STRING> [[-Value] <OBJECT>] [[-Type] <STRING>] [[-DocumentName] <STRING>] [-Force] [-WhatIf] [-Confirm] [<COMMONPARAMETERS>]

Esempi

Esempio 1: Campo personalizzato "Casella di controllo"

Set-NinjaProperty -Name "distribuito" -Value $Vero -Tipo "Casella di controllo"

Imposta il campo personalizzato "deployed" su "true". Valori accettabili per la casella di controllo: 0, 1, True, False o un valore booleano.

Esempio 2: Campo personalizzato "Data"

$DeploymentDate = Get-Date -Year "2026" -Month "02" -Day "01" -Hour "0" -
Minuto "0" -Second "0"
Set-NinjaProperty -Name "deploymentDate" -Value $DeploymentDate -Type "Date"

Imposta il campo personalizzato "deploymentDate" sulla data specificata. Valori di data ammessi: oggetti DateTime o stringhe convertibili in DateTime.

Esempio 3: Campo personalizzato "Data e ora"

$LastSeen = Get-Date -Year "2026" -Month "02" -Day "02" -Hour "13" -Minuto
"0" -Second "0"
Set-NinjaProperty -Name "lastSeen" -Value $LastSeen -Type "DateTime"

Imposta il campo personalizzato "lastSeen" sulla data e l’ora specificate. Valori di data e ora accettabili: oggetti DateTime o stringhe convertibili in DateTime.

Esempio 4: Campo personalizzato di tipo decimale

PS C:> Set-NinjaProperty -Name "pi" -Value 3.14 -Type "Decimale"

In questo esempio, il campo personalizzato decimale pi viene impostato su 3,14. Valori decimali accettabili: qualsiasi numero compreso tra -9999999,999999 e 9999999,999999.

Esempio 5: Campo personalizzato a menu a discesa

PS C:> Set-NinjaProperty -Name "favoriteBand" -Value "Mötley Crüe" -Type
"Dropdown"

In questo esempio, il campo personalizzato a Menu a discesa "favoriteBand" è impostato su "Mötley Crüe" utilizzando il nome dell’opzione "
" al posto del GUID. Valori ammessi nel Menu a discesa: il nome di una delle opzioni predefinite per il campo.

Esempio 6: Campo personalizzato "Email"

PS C:> Set-NinjaProperty -Name "supportEmail" -Value "[email protected]"
-Tipo "Email"

In questo esempio, il campo personalizzato e-mail "supportEmail" è impostato su "[email protected]". Valori accettabili per "E-mail": qualsiasi stringa conforme allo standard ufficiale RFC 5322 per gli indirizzi e-mail.

Esempio 7: Campo personalizzato di tipo numero intero

PS C:> Set-NinjaProperty -Name "favoriteNumber" -Value "42" -Type "Numero intero"

In questo esempio, il campo personalizzato di tipo intero "favoriteNumber" è impostato su 42. Valori interi consentiti: qualsiasi numero intero compreso tra -2147483648 e 2147483647.

Esempio 8: Campo personalizzato "Indirizzo IP"

PS C:> Set-NinjaProperty -Name "primaryDNS" -Value "1.1.1.1" -Type
"IPAddress"

In questo esempio, il campo personalizzato "primaryDNS" (Indirizzo IP) è impostato su "1.1.1.1". Valori accettabili per l’Indirizzo IP: qualsiasi stringa che rappresenti un indirizzo IPv4 o IPv6 valido.

Esempio 9: Campo personalizzato multilinea

PS C:> Set-NinjaProperty -Name "exampleMultiline" -Value "Riga 1`n`nRiga 3"
-Tipo "MultiLine"

In questo esempio, il campo personalizzato multiriga "exampleMultiline" è impostato su una stringa contenente più righe di testo
. Valori multiriga accettabili: qualsiasi stringa inferiore a 10.000 caratteri.

Esempio 10: Campo personalizzato con selezione multipla

PS C:> Set-NinjaProperty -Nome "exampleMultiselect" -Valore ("Valore 3",
"Opzione 1") -Tipo "MultiSelect"

In questo esempio, il campo personalizzato a selezione multipla "exampleMultiselect" è impostato su "Value 3" e "Option 1" utilizzando i nomi visualizzati anziché i GUID. Valori accettabili per la selezione multipla: un array di stringhe che rappresentano i nomi visualizzati delle opzioni valide da impostare, reperibili tramite il cmdlet Ninja-Property-Options.

Esempio 11: Campo personalizzato "Telefono"

PS C:> Set-NinjaProperty -Name "supportNumber" -Value "+18008675309" -Type
"Telefono"

In questo esempio, il campo personalizzato "supportNumber" (numero di telefono) è impostato su "+18008675309". Valori accettabili per il campo "Phone": qualsiasi stringa conforme allo standard E.164 per i numeri di telefono, che include il segno più seguito dal prefisso internazionale e dal numero di utente (ad esempio, +18008675309).

Esempio 12: Campo personalizzato protetto

PS C:> Set-NinjaProperty -Name "superSecretPassword" -Value "Hunter42" -
Type "Secure"

In questo esempio, il campo personalizzato protetto “superSecretPassword” è impostato su “Hunter42”. Valori protetti accettabili: qualsiasi stringa di lunghezza inferiore a 200 caratteri.

Esempio 13: Campo personalizzato di tipo testo

PS C:> Set-NinjaProperty -Name "exampleTextField" -Value "My Text Value" -
Type "Testo"

In questo esempio, il campo personalizzato di tipo testo exampleTextField è impostato su "My Text Value". Valori di tipo testo accettabili: qualsiasi stringa inferiore a 200 caratteri.

Esempio 14: Campo personalizzato di tipo "Time"

$UpdateTime = Get-Date -Hour "09" -Minute "0" -Second "0"
PS C:> Set-NinjaProperty -Name "updateTime" -Value $UpdateTime -Type "Time"

In questo esempio, il campo personalizzato di tipo "ora" updateTime è impostato su 9:00 AM. Valori di ora accettabili: un oggetto DateTime che rappresenta un'ora o una stringa convertibile in un oggetto DateTime.

Esempio 15: Campo personalizzato URL

PS C:> Set-NinjaProperty -Name "exampleUrl" -Value
"https://www.ninjaone.com" -Type "URL"

In questo esempio, il campo personalizzato URL "exampleUrl" è impostato su "https://www.ninjaone.com". Valori URL accettabili: qualsiasi stringa inferiore a 200 caratteri che inizi con https://.

Esempio 16: Campo personalizzato WYSIWYG

PS C:> Set-NinjaProperty -Name "exampleWYSIWYG" -Value "<H1
style='color:#f015ca'>Hello World</H1>" -Type "WYSIWYG"

In questo esempio, il campo personalizzato WYSIWYG "exampleWYSIWYG" è impostato su "<H1 style='color:#f015ca'>Hello World</H1>". I campi personalizzati WYSIWYG nella CLI accettano l'HTML come valore, il che consente la formattazione del testo avanzato nel campo personalizzato. Si consiglia di utilizzare le virgolette singole nel codice HTML per evitare di dover effettuare l’escape delle virgolette doppie nella stringa HTML quando si imposta il valore di un campo personalizzato WYSIWYG. Valori WYSIWYG accettabili: qualsiasi stringa con meno di 199.999 caratteri. Per ottenere risultati ottimali, la stringa dovrebbe contenere codice HTML valido; si consiglia inoltre di utilizzare le virgolette singole nel codice HTML per evitare di dover effettuare l’escape delle virgolette doppie nella stringa HTML.

Parametri

-Nome

Specificare il nome del campo personalizzato del dispositivo o della documentazione di cui si desidera impostare il valore.

Tipo: Stringa
Set di parametri: (Tutti)
Alias:
Obbligatorio: True
Posizione: 1
Valore predefinito: Nessuno
Accetta input dalla pipeline: False
Accetta caratteri jolly: False
-Valore
-Valore

Specificare il valore da impostare per il campo personalizzato indicato.

Tipo: Oggetto
Set di parametri: (Tutti)
Alias:
Obbligatorio: Falso
Posizione: 2
Valore predefinito: Nessuno
Accetta input dalla pipeline: Vero (ByValue)
Accetta caratteri jolly: Falso
-Tipo

Il tipo di campo personalizzato, che determina come viene elaborato e convertito il valore fornito. I tipi supportati includono: "Casella di controllo", "Data", "Data e ora", "Decimale", "Menu a tendina", "Email", "Intero", "Indirizzo IP", "Multiriga", "Selezione multipla", "Telefono", "Sicuro", "Testo", "Ora", "URL" e "WYSIWYG".

Tipo: String
Set di parametri: (Tutti)
Alias:
Obbligatorio: False
Posizione: 3
Valore predefinito: Nessuno
Accetta input dalla pipeline: False
Accetta caratteri jolly: False
-DocumentName

Specifica il nome del documento da cui impostare il valore del campo personalizzato della documentazione specificato.

Tipo: Stringa
Set di parametri: (Tutti)
Alias:
Obbligatorio: Falso
Posizione: 4
Valore predefinito: Nessuno
Accetta input dalla pipeline: Falso
Accetta caratteri jolly: Falso
-Force

Se non viene specificato alcun parametro di conferma e il cmdlet richiederebbe una conferma, questo parametro forza l'esecuzione del cmdlet senza chiedere conferma.

Tipo: SwitchParameter
Set di parametri: (Tutti)
Alias:
Obbligatorio: False
Posizione: Denominata
Valore predefinito: False
Accetta input dalla pipeline: False
Accetta caratteri jolly: False
-WhatIf

Mostra cosa accadrebbe se il cmdlet venisse eseguito. Il cmdlet non viene eseguito.

Tipo: SwitchParameter
Set di parametri: (Tutti)
Alias: wi
Obbligatorio: False
Posizione: Nome
Valore predefinito: Nessuno
Accetta input dalla pipeline: False
Accetta caratteri jolly: False
-Conferma

Richiede conferma prima di eseguire il cmdlet.

Tipo: SwitchParameter
Set di parametri: (Tutti)
Alias: cf
Obbligatorio: False
Posizione: Nominale
Valore predefinito: Nessuno
Accetta input dalla pipeline: False
Accetta caratteri jolly: False

Parametri comuni

Questo cmdlet supporta i parametri comuni: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction e -WarningVariable. Per altre informazioni sui parametri comuni, fare riferimento al documento Microsoft about_CommonParameters ( Link esterno).

Input

Uscite

  • Se non si specifica un tipo, il cmdlet tenterà di impostare il valore della stringa così com'è. Vedere gli esempi di Ninja-Property-Set per sapere come vengono elaborati i valori quando non viene specificato un tipo. 
  • I valori dei menu a discesa e di selezione multipla vengono convalidati in base alle opzioni predefinite prima di essere impostati.
  • Se viene fornito un tipo non valido, viene visualizzato un avviso.
  • Gli spazi non separabili sono automaticamente sostituiti con l'equivalente HTML &nbsp; per i tipi "WYSIWYG".
  • Solo i campi con permessi di scrittura tramite automazione consentono di recuperare le opzioni tramite questo cmdlet. Per informazioni sui permessi relativi ai campi personalizzati, consultare NinjaOne Custom Fields: Attività iniziali.
  • Il campo personalizzato specificato viene aggiornato dopo la successiva sincronizzazione riuscita con la piattaforma NinjaOne, che in genere avviene nel giro di pochi minuti.

Risorse aggiuntive

Per altre informazioni sulla gestione delle risorse e sugli script personalizzati, consultare le seguenti risorse:

Domande frequenti

Passi successivi