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

Powershell: Ninja-Property-Set

Argomento

Questo articolo spiega come utilizzare Ninja-Property-Set per impostare il valore di un campo personalizzato specificato di un dispositivo.

Ninja-Property-Set è un cmdlet obsoleto. Sebbene possa ancora funzionare, si consiglia di utilizzare invece Set-NinjaProperty.
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 ulteriori informazioni sulle politiche di esecuzione, consultare la documentazione di Microsoft: Informazioni sulle politiche di esecuzione ( link esterno).

Ambiente

  • NinjaOne
  • Microsoft PowerShell

Descrizione

Questo cmdlet imposta il valore di un campo personalizzato specificato del dispositivo. È possibile specificare il nome del campo utilizzando il parametro -Name e il valore da impostare utilizzando il parametro -Value. Il cmdlet aggiorna il valore del campo personalizzato specificato sul dispositivo.

Solo i campi con autorizzazioni di scrittura per l’automazione possono essere aggiornati tramite questo cmdlet. Il campo personalizzato specificato viene aggiornato dopo la successiva sincronizzazione riuscita con la piattaforma NinjaOne, che in genere avviene entro pochi minuti.

Sintassi

Ninja-Property-Set [[-Name] <Object>] [[-Value] <Object>] [<CommonParameters>]

Esempi

Esempio 1: campo personalizzato "Casella di controllo"

PS C:> Ninja-Property-Set -Name "deployed" -Value $True

In questo esempio, il campo personalizzato "deployed" (casella di controllo) viene selezionato impostando il suo valore su $True. È anche possibile selezionare la casella utilizzando 1 al posto di $True, poiché entrambi i valori sono accettati per i campi personalizzati di tipo casella di controllo. Valori accettabili per le caselle di controllo: 0, 1, true, false.

Esempio 2: Campo personalizzato "Data"

$DeploymentDate = Get-Date -Year "2026" -Month "02" -Day "01" -Hour "0" -
Minute "0" -Second "0"
$StartOfEpoch = Get-Date -Year "1970" -Month "01" -Day "01" -Hour "0" -
Minute "0" -Second "0"
$DeploymentInUTC = $DeploymentDate.ToUniversalTime()
$TimeSpan = New-TimeSpan -Start $StartOfEpoch -End $DeploymentInUTC
$DeploymentInEpochTime = [math]::Round($TimeSpan.TotalSeconds)
PS C:> Ninja-Property-Set -Name "deploymentDate" -Value
$DeploymentInEpochTime

In questo esempio, il campo personalizzato "deploymentDate" viene impostato al 1° febbraio 2026. La data viene convertita in tempo dell’epoca (il numero di secondi trascorsi dal 1° gennaio 1970 UTC) prima di essere impostata come valore del campo personalizzato, poiché i campi personalizzati di tipo data nella CLI accettano valori in tempo dell’epoca. Formati di data accettabili: tempo epoch Unix (secondi trascorsi dal 1° gennaio 1970 UTC), formato ISO 'yyyy-MM-dd' UTC

Esempio 3: Campo personalizzato "Data e ora"

$LastSeen = Get-Date -Year "2026" -Month "02" -Day "02" -Hour "13" -Minute
"0" -Second "0"
$StartOfEpoch = Get-Date -Year "1970" -Month "01" -Day "01" -Hour "0" -
Minute "0" -Second "0"
$LastSeenInUTC = $LastSeen.ToUniversalTime()
$TimeSpan = New-TimeSpan -Start $StartOfEpoch -End $LastSeenInUTC
$LastSeenInEpochTime = [math]::Round($TimeSpan.TotalSeconds)
PS C:> Ninja-Property-Set -Name "lastSeen" -Value $LastSeenInEpochTime

In questo esempio, il campo personalizzato "lastSeen" relativo alla data e all'ora viene impostato al 2 febbraio 2026 alle 13:00. Il valore di data e ora viene convertito in tempo dell'epoca (il numero di secondi trascorsi dal 1° gennaio 1970 UTC) prima di essere impostato come valore del campo personalizzato, poiché i campi personalizzati di data e ora nella CLI accettano valori in tempo dell'epoca. Formati di data e ora accettati: tempo dell’epoca Unix (secondi dal 1° gennaio 1970 UTC), formato ISO 'yyyy-MM-ddTHH:mm:ss' UTC

Esempio 4: Campo personalizzato decimale

PS C:> Ninja-Property-Set -Name "pi" -Value "3.14"

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

Esempio 5: Campo personalizzato a menu a tendina

PS C:> Ninja-Property-Set -Name "favoriteBand" -Value "2a100199-4067-4332-
8f4d-451e14b94a76"

In questo esempio, il campo personalizzato a menu a tendina "favoriteBand" viene impostato sull’opzione con il GUID 2a100199-4067-4332-8f4d-451e14b94a76. I campi personalizzati a menu a tendina nella CLI accettano il GUID dell’opzione che si desidera impostare, che può essere individuato utilizzando il cmdlet Ninja-Property-Options. Valori accettabili per i menu a discesa: il GUID dell’opzione da impostare, che può essere individuato utilizzando il cmdlet Ninja-Property-Options.

Esempio 6: Campo personalizzato "Email"

PS C:> Ninja-Property-Set -Name "supportEmail" -Value
"[email protected]"

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

Esempio 7: Campo personalizzato di tipo intero

PS C:> Ninja-Property-Set -Name "favoriteNumber" -Value "42"

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

Esempio 8: Campo personalizzato "Indirizzo IP"

PS C:> Ninja-Property-Set -Name "primaryDNS" -Value "1.1.1.1"

In questo esempio, il campo personalizzato "primaryDNS" (indirizzo IP) viene impostato su "1.1.1.1". Valori di indirizzo IP ammessi: qualsiasi indirizzo IPv4 o IPv6 valido.

Esempio 9: Campo personalizzato multilinea

PS C:> Ninja-Property-Set -Name "exampleMultiline" -Value "Riga 1`n`nRiga
3"

In questo esempio, il campo personalizzato multilinea exampleMultiline viene impostato su una stringa contenente più righe di testo.

Esempio 10: Campo personalizzato a selezione multipla

PS C:> Ninja-Property-Set -Name "exampleMultiselect" -Value "154d90cf-3d4a-
4e43-8b79-232ccd5b74a6, 834d0865-1c70-492b-ac11-73854fd0294d"

In questo esempio, il campo personalizzato a selezione multipla exampleMultiselect viene impostato sulle opzioni con i GUID 154d90cf-3d4a-4e43-8b79-232ccd5b74a6 e 834d0865-1c70-492b-ac11-73854fd0294d. I campi personalizzati a selezione multipla nella CLI accettano un elenco di GUID separati da virgole che rappresentano le opzioni che si desidera impostare, reperibili tramite il cmdlet Ninja-Property-Options. Valori accettabili per la selezione multipla: un elenco di GUID separati da virgole che rappresentano le opzioni da impostare, reperibili tramite il cmdlet Ninja-Property-Options.

Esempio 11: Campo personalizzato "Telefono"

PS C:> Ninja-Property-Set -Name "supportNumber" -Value "+18008675309"

In questo esempio, il campo personalizzato "supportNumber" relativo al numero di telefono è impostato su "+18008675309". Valori accettabili per il numero di telefono: qualsiasi stringa conforme allo standard E.164 per i numeri di telefono, che include il segno più seguito dal codice paese e dal numero dell’abbonato (ad es., +18008675309).

Esempio 12: Campo personalizzato protetto

PS C:> Ninja-Property-Set -Name "superSecretPassword" -Value "Hunter42"

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:> Ninja-Property-Set -Name "exampleTextField" -Value "My Text Value"

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

Esempio 14: Campo personalizzato di tipo ora

$UpdateTime = Get-Date -Hour "09" -Minute "0" -Second "0"
$LocalTimeZone =[System.TimeZoneInfo]: :Local
$UpdateTimeInUTC =[System.TimeZoneInfo]: :ConvertTimeToUtc($UpdateTime,
$LocalTimeZone)
$TimeInSecondsSinceMidnight =
[math]: :Round(($UpdateTimeInUTC.TimeOfDay).TotalSeconds)
PS C:> Ninja-Property-Set -Name "updateTime" -Value
$TimeInSecondsSinceMidnight

In questo esempio, il campo personalizzato "updateTime" viene impostato alle 9:00 AM. Il valore dell'ora viene convertito nel numero di secondi trascorsi da mezzanotte in UTC prima di essere impostato come valore del campo personalizzato, poiché i campi personalizzati relativi all'ora nella CLI accettano solo valori in questo formato. Valori di ora accettabili: il numero di secondi trascorsi da mezzanotte UTC, oppure una stringa di ora nel formato 'HH:mm:ss' UTC.

Esempio 15: Campo personalizzato URL

PS C:> Ninja-Property-Set -Name "exampleUrl" -Value "https://www.ninjaone.com"

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

Esempio 16: Campo personalizzato WYSIWYG

PS C:> Ninja-Property-Set -Name "exampleWYSIWYG" -Value "<h1
style='color:#f015ca'>Hello World</h1>"

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 di testo avanzato nel campo personalizzato. Per accedere a tutte le funzionalità dei campi personalizzati WYSIWYG, si consiglia di utilizzare Set NinjaProperty o Ninja-Property-Set-Piped, poiché supportano limiti di caratteri più elevati per i valori dei campi personalizzati rispetto a Ninja-Property-Set.

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 utilizzando Ninja-Property-Set. 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 per il quale si desidera impostare un valore.

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

Specificare il valore da impostare per il campo personalizzato specificato.

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

Input

System.String

Il cmdlet non accetta input dalla pipeline. I parametri -Name e -Value accettano valori di tipo stringa che rappresentano, rispettivamente, il nome del campo personalizzato da impostare e il valore da assegnare a tale campo.

Uscite

Nessuno

  • Solo i campi con autorizzazioni di scrittura automatizzata consentono di recuperare le relative opzioni tramite questo cmdlet. Per informazioni sulle autorizzazioni relative ai campi personalizzati, consultare NinjaOne Custom Fields: Getting Started.
  • 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 ulteriori informazioni sulla gestione delle risorse e sugli script personalizzati, consultare le seguenti risorse:

Domande frequenti

Passi successivi