¿Ya eres cliente de NinjaOne? Inicia sesión para ver más guías y las últimas actualizaciones.

Powershell: Ninja-Property-Set

Tema

En este artículo se explica cómo utilizar Ninja-Property-Set para establecer el valor de un campo personalizado específico de un dispositivo.

Ninja-Property-Set es un cmdlet obsoleto. Aunque es posible que siga funcionando, recomendamos utilizar Set-NinjaProperty en su lugar.
Si utilizas el módulo de PowerShell de NinjaOne fuera de un script de automatización, es posible que tengas que ajustar la política de ejecución de PowerShell. Para obtener más información sobre las políticas de ejecución, consulta la documentación de Microsoft: sobre políticas de ejecución ( enlace externo).

Entorno

  • NinjaOne
  • Microsoft PowerShell

Descripción

Este cmdlet establece el valor de un campo personalizado específico del dispositivo. Puede especificar el nombre del campo mediante el parámetro -Name y el valor que desea establecer mediante el parámetro -Value. El cmdlet actualiza el valor del campo personalizado especificado en el dispositivo.

Solo se pueden actualizar mediante este cmdlet los campos con permisos de escritura de automatización. El campo personalizado especificado se actualiza tras la siguiente sincronización correcta con la plataforma NinjaOne, lo que suele producirse en unos minutos.

Sintaxis

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

Ejemplos

Ejemplo 1: Campo personalizado de casilla de selección

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

En este ejemplo, se marca la casilla de selección del campo personalizado «deployed» estableciendo su valor en $True. También se podría marcar la casilla utilizando 1 en lugar de $True, ya que ambos valores son válidos para los campos personalizados de tipo casilla de selección. Valores válidos para la casilla de selección: 0, 1, true, false.

Ejemplo 2: Campo personalizado de fecha

$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

En este ejemplo, el campo personalizado «deploymentDate» se establece en el 1 de febrero de 2026. La fecha se convierte a tiempo de época (el número de segundos transcurridos desde el 1 de enero de 1970 UTC) antes de establecerse como valor del campo personalizado, ya que los campos personalizados de fecha en la CLI aceptan valores de tiempo de época. Formatos de fecha aceptables: tiempo de época Unix (segundos transcurridos desde el 1 de enero de 1970 UTC), formato ISO «aaaa-MM-dd» UTC

Ejemplo 3: Campo personalizado de fecha y hora

$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

En este ejemplo, el campo personalizado de fecha y hora «lastSeen» se establece en el 2 de febrero de 2026 a las 13:00. El valor de fecha y hora se convierte a tiempo de época (el número de segundos transcurridos desde el 1 de enero de 1970 UTC) antes de establecerse como valor del campo personalizado, ya que los campos personalizados de fecha y hora en la CLI aceptan valores de tiempo de época. Formatos de fecha y hora aceptables: tiempo de la época Unix (segundos transcurridos desde el 1 de enero de 1970 UTC), formato ISO «aaaa-MM-ddTHH:mm:ss» UTC

Ejemplo 4: Campo personalizado decimal

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

En este ejemplo, el campo personalizado decimal «pi» se establece en 3,14. Valores decimales aceptables: cualquier número comprendido entre -9999999,999999 y 9999999,999999.

Ejemplo 5: Campo personalizado de menú desplegable

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

En este ejemplo, el campo personalizado desplegable «favoriteBand» se establece en la opción con el GUID 2a100199-4067-4332-8f4d-451e14b94a76. Los campos personalizados desplegables en la CLI aceptan el GUID de la opción que se desea establecer, que se puede encontrar mediante el cmdlet Ninja-Property-Options. Valores aceptables para el menú desplegable: el GUID de la opción que se desea establecer, que se puede encontrar mediante el cmdlet Ninja-Property-Options.

Ejemplo 6: Campo personalizado de correo electrónico

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

En este ejemplo, el campo personalizado de correo electrónico «supportEmail» se establece en «[email protected]». Valores de correo electrónico válidos: cualquier cadena que cumpla con el estándar oficial RFC 5322 para direcciones de correo electrónico.

Ejemplo 7: Campo personalizado de tipo entero

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

En este ejemplo, el campo personalizado de tipo entero «favoriteNumber» se establece en 42. Valores enteros aceptables: cualquier número entero comprendido entre -2147483648 y 2147483647.

Ejemplo 8: Campo personalizado de dirección IP

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

En este ejemplo, el campo personalizado de dirección IP «primaryDNS» se establece en «1.1.1.1». Valores de dirección IP aceptables: cualquier dirección IPv4 o IPv6 válida.

Ejemplo 9: Campo personalizado de varias líneas

PS C:> Ninja-Property-Set -Name "exampleMultiline" -Value "Línea 1`n`nLínea
3"

En este ejemplo, el campo personalizado de varias líneas «exampleMultiline» se establece en una cadena con varias líneas de texto.

Ejemplo 10: Campo personalizado de selección múltiple

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

En este ejemplo, el campo personalizado de selección múltiple «exampleMultiselect» se configura con las opciones cuyos GUID son 154d90cf-3d4a-4e43-8b79-232ccd5b74a6 y 834d0865-1c70-492b-ac11-73854fd0294d. Los campos personalizados de selección múltiple en la CLI aceptan una lista de GUID separados por comas que representan las opciones que se desean establecer, las cuales se pueden encontrar mediante el cmdlet Ninja-Property-Options. Valores de selección múltiple aceptables: una lista de GUID separados por comas que representan las opciones que se van a establecer, las cuales se pueden encontrar mediante el cmdlet Ninja-Property-Options.

Ejemplo 11: Campo personalizado «Teléfono»

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

En este ejemplo, el campo personalizado de teléfono «supportNumber» se establece en «+18008675309». Valores de teléfono aceptables: cualquier cadena que siga el estándar E.164 para números de teléfono, que incluye un signo más seguido del código de país y el número de abonado (p. ej., +18008675309).

Ejemplo 12: Campo personalizado seguro

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

En este ejemplo, el campo personalizado seguro «superSecretPassword» se establece en «Hunter42». Valores seguros aceptables: cualquier cadena de menos de 200 caracteres.

Ejemplo 13: Campo personalizado de texto

PS C:> Ninja-Property-Set -Name "exampleTextField" -Value "My Text Value"

En este ejemplo, el campo personalizado de texto «exampleTextField» se establece en «My Text Value». Valores de texto aceptables: cualquier cadena de menos de 200 caracteres.

Ejemplo 14: Campo personalizado de hora

$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

En este ejemplo, el campo personalizado de hora «updateTime» se establece en las 9:00 de la mañana. El valor de la hora se convierte al número de segundos transcurridos desde la medianoche en UTC antes de establecerse como valor del campo personalizado, ya que los campos personalizados de hora en la CLI solo aceptan valores en este formato. Valores de hora aceptables: el número de segundos transcurridos desde la medianoche UTC, o una cadena de hora en el formato «HH:mm:ss» UTC.

Ejemplo 15: Campo personalizado de URL

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

En este ejemplo, el campo personalizado de URL «exampleUrl» se establece en «https://www.ninjaone.com». Valores de URL aceptables: cualquier cadena de menos de 200 caracteres que comience por https://.

Ejemplo 16: Campo personalizado WYSIWYG

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

En este ejemplo, el campo personalizado WYSIWYG «exampleWYSIWYG» se establece en «<h1 style='color:#f015ca'>Hello World</h1>». Los campos personalizados WYSIWYG en la CLI aceptan HTML como valor, lo que permite el formato de texto enriquecido en el campo personalizado. Para acceder a todas las capacidades de los campos personalizados WYSIWYG, se recomienda utilizar Set NinjaProperty o Ninja-Property-Set-Piped, ya que admiten límites de caracteres más amplios para los valores de los campos personalizados en comparación con Ninja-Property-Set.

Se recomienda utilizar comillas simples en el código HTML para evitar tener que escapar las comillas dobles en la cadena HTML al establecer el valor de un campo personalizado WYSIWYG con Ninja-Property-Set. Valores WYSIWYG aceptables: cualquier cadena de menos de 199 999 caracteres. Para obtener los mejores resultados, la cadena debe contener código HTML válido, y se recomienda utilizar comillas simples en el código HTML para evitar tener que escapar las comillas dobles en la cadena HTML.

Parámetros

-Nombre

Especifica el nombre del campo personalizado para el que deseas establecer un valor.

Tipo: Objeto
Conjuntos de parámetros: (Todos)
Alias:
Obligatorio: Falso
Posición: 0
Valor por defecto: Ninguno
Acepta entrada de pipeline: Falso
Acepta caracteres comodín: Falso
-Valor

Especifica el valor que se va a establecer para el campo personalizado indicado.

Tipo: Objeto
Conjuntos de parámetros: (Todos)
Alias:
Obligatorio: Falso
Posición: 1
Valor por defecto: Ninguno
Acepta entrada del pipeline: Falso
Acepta caracteres comodín: Falso

Entradas

System.String

El cmdlet no acepta entradas de la canalización. Los parámetros -Name y -Value aceptan valores de cadena que representan el nombre del campo personalizado que se va a establecer y el valor que se va a asignar a dicho campo, respectivamente.

Salidas

Ninguna

  • Solo se pueden recuperar las opciones de los campos con permisos de escritura de automatización mediante este cmdlet. Para obtener información sobre los permisos de los campos personalizados, consulta «Campos personalizados de NinjaOne: Introducción».
  • El campo personalizado especificado se actualiza tras la siguiente sincronización correcta con la plataforma NinjaOne, lo que suele ocurrir en unos minutos.

Recursos adicionales

Para obtener más información sobre la gestión de activos y la creación de scripts personalizados, consulta los siguientes recursos:

FAQ

Próximos pasos