Workspace Environment Management

Tokens dinámicos

Puede utilizar tokens dinámicos en cualquier acción de Workspace Environment Management para que sean más eficaces.

Puede utilizar identificadores dinámicos en los siguientes campos:

  • Configuración de directivas de grupo

    • Con la opción Acción establecida en Eliminar valor: Valor
    • Con Acción establecida en Establecer valor y Tipo establecida en REG_SZ: Datos
    • Con Acción establecida en Establecer valor y Tipo establecida en REG_EXPAND_SZ: Datos
    • Con Acción establecida en Establecer valor y Tipo establecida en REG_MULTI: Datos

Nota:

La configuración de la directiva de grupo se presenta en dos tipos: la configuración del equipo y la configuración del usuario. Para la configuración de la máquina, algunos tokens dinámicos no son compatibles. Consulte Compatibilidad con tokens dinámicos para la configuración de la directiva de grupo.

Función de token dinámico para la configuración de directivas de grupo

El uso de tokens dinámicos en la configuración de directivas de grupo permite una configuración de directivas más adaptable en diferentes entornos, reduce la configuración manual y simplifica la administración de directivas.

Hay dos tipos de configuración de directivas de grupo:

  • Configuración de la máquina. Esa configuración solo se aplica a las máquinas, independientemente de quién inicie sesión en ellas.
  • Configuración de usuario. Esa configuración solo se aplica a los usuarios, independientemente de la máquina en la que inicien sesión.

Todos los tokens dinámicos son compatibles con la configuración de la directiva de grupo. Los siguientes no son compatibles con la configuración de la máquina.

  • Hashtags

    • ##FullUserName##
    • ##UserInitials##
    • ##ClientName##
    • ##ClientIPAddress##
    • ##UserLDAPPath##
    • ##ClientRemoteOS##
  • ADAttribute
    • [ADAttribute:attrName]
    • [UserParentOU: 1]
  • Registros en el marco de la HKCU

  • Aplicaciones
    • Con Aplicación de instalación como tipo de aplicación: Línea de comandos, Directorio de trabajo y Parámetros
    • Con Archivo/carpeta como tipo de aplicación: Objetivo
    • Con URL como tipo de aplicación: URL abreviada
    • Archivo del icono
  • Impresoras
    • Ruta de destino
  • Unidades de red
    • Ruta de destino y Nombre de visualización
  • Unidades virtuales
    • Ruta de destino
  • Registros
    • Ruta de destino, Nombre de destino y Valor de destino

    Nota:

    El campo Valor objetivo no admite la expansión de variables de entorno. Si usa variables de entorno, no funcionan como se esperaba.

  • Variables de entorno
    • Valor de la variable
  • Puertos
    • Destino del puerto
  • Archivos INI
    • Ruta de destino, Sección de destino, Nombre del valor del destino y Valor del destino

    Nota:

    Los campos de la sección Destino, Nombre del valor de destino y Valor de destino no admiten la expansión de variables de entorno. Si usa variables de entorno, no funcionan como se esperaba.

  • Tareas externas
    • Ruta y Argumentos
  • Operaciones del sistema de archivos
    • Ruta de origen y Ruta de destino
  • Ciertas condiciones de filtrado
    • Ejemplo: Con Coincidencia de atributos de Active Directory como tipo de condición: Atributo de Active Directory probado y Resultado coincidente

    Nota:

    Para obtener una lista completa de los campos admitidos para las condiciones de filtro, consulte Tabla de compatibilidad de las condiciones de filtros.

Operaciones de cadena

A veces es necesario manipular cadenas dentro de un script para asignar unidades o iniciar aplicaciones. El agente de Workspace Environment Management acepta las siguientes operaciones de cadena:

Modal Descripción Ejemplo
##Left(string,length)## Devuelve el número especificado de caracteres a la izquierda. #Left(abcdef,2)# devuelve ab
##Right(string,length)## Devuelve el número de caracteres especificado a la derecha. #Right(abcdef,2)# devuelve ef
##Truncate(string,length)## Si la longitud de la cadena es inferior o igual a la longitud especificada, devuelve la cadena completa. Si la longitud de la cadena es mayor que la longitud especificada, devuelve el número especificado de caracteres a la izquierda. #Truncate(abcdef,3)# devuelve abc
&Trim(string)& Quita todos los espacios en blanco iniciales y finales de la cadena. &Trim( a b c )& devuelve a b c
&RemoveSpaces(string)& Quita todos los espacios en blanco de la cadena. &RemoveSpaces( a b c )& devuelve abc
&Expand(string)& Si la cadena contiene una variable de entorno encerrada en %, expande la variable. &Expand(%userprofile%\destop)& devuelve C:\Users\Jill\desktop
$Split(string,[splitter],index)$ Divide la cadena en subcadenas según el separador que se incluye entre [] y devuelve la subcadena indexada. $Split(abc-def-hij,[-],2)$ devuelve hij
##Mid(string,startindex)## Empieza en el índice especificado de la cadena y devuelve todos los caracteres que aparecen después. #Mid(abcdef,2)# devuelve cdef
!Mid(string,startindex,length)! Empieza en el índice especificado de la cadena y devuelve el número especificado de caracteres. !Mid(abcdef,1,2)! devuelve bc
!Substring(string,startindex,length)! Empieza en el índice especificado de la cadena y devuelve el número especificado de caracteres. !Substring(abcdef,1,2)! devuelve bc
##Mod(string,length)## Divide la cadena por la longitud y devuelve el resto. La cadena debe poder convertirse en un entero. #Mod(7,3)# devuelve 1

Nota:

  • Las operaciones de cadena también se admiten con hashtags y atributos de Active Directory. Por ejemplo: #Left([ADAttribute:NAME],2)# donde el atributo del nombre del usuario de dominio actual es Administrator devuelve Ad, y $Split(##ClientIPAddress##,[\.],2)$ devuelve 157.
  • Las operaciones !Mid(string,startindex,length)! y !Substring(string,startindex,length)! siempre se realizan en último lugar.

Hashtags

Las etiquetas hash-tags son una función de reemplazo ampliamente utilizada en el procesamiento de elementos de Workspace Environment Management. En el siguiente ejemplo se ilustra cómo se utilizan las etiquetas hash-tags:

Para escribir en un archivo INI, puede utilizar %UserName% en la ruta del archivo INI y Workspace Environment Management lo procesa y amplía el directorio final. Sin embargo, evaluar el valor que escribe Workspace Environment Management en el propio INI es más complicado: es posible que quiera escribir %UserName% literalmente o escribir el valor expandido.

Para aumentar la flexibilidad, ##UserName## existe como hash-tag, de modo que usar %UserName% para un valor lo escribe literalmente y ##UserName## escribe el valor expandido.

Consulte esta tabla para ver ejemplos:

Modal Descripción Ejemplo
##UserName## Devuelve la variable de entorno expandida “%username%” Jill
##UserProfile## Devuelve la variable de entorno expandida “%userprofile%” C:\Users\Jill
##FullUserName## Devuelve el nombre completo del usuario en Active Directory Jill Chou
##UserInitials## Devuelve las iniciales del nombre de usuario en Active Directory JC
##UserAppData## Devuelve la ruta real de la carpeta especial: RoamingAppData C:\Users\Jill\AppData\Roaming
##UserPersonal## Devuelve la ruta real de la carpeta especial: Documents C:\Users\Jill\Documents
##UserDocuments## Devuelve la ruta real de la carpeta especial: Documents C:\Users\Jill\Documents
##UserDesktop## Devuelve la ruta real de la carpeta especial: Desktop C:\Users\Jill\Desktop
##UserFavorites## Devuelve la ruta real de la carpeta especial: Favorites C:\Users\Jill\Favorites
##UserTemplates## Devuelve la ruta real de la carpeta especial: Templates C:\Users\Jill\AppData\Roaming\Microsoft\Windows\Templates
##UserStartMenu## Devuelve la ruta real de la carpeta especial: StartMenu C:\Users\Jill\AppData\Roaming\Microsoft\Windows\Start Menu
##UserStartMenuPrograms## Devuelve la ruta real de la carpeta especial: Programs C:\Users\Jill\AppData\Roaming\Microsoft\Windows\Start Menu\Programs
##UserLocalAppData## Devuelve la ruta real de la carpeta especial: LocalAppData C:\Users\Jill\AppData\Local
##UserMusic## Devuelve la ruta real de la carpeta especial: Music C:\Users\Jill\Music
##UserPictures## Devuelve la ruta real de la carpeta especial: Pictures C:\Users\Jill\Pictures
##UserVideos## Devuelve la ruta real de la carpeta especial: Videos C:\Users\Jill\Videos
##UserDownloads## Devuelve la ruta real de la carpeta especial: Downloads C:\Users\Jill\Downloads
##UserLinks## Devuelve la ruta real de la carpeta especial: Links C:\Users\Jill\Links
##UserContacts## Devuelve la ruta real de la carpeta especial: Contacts C:\Users\Jill\Contacts
##UserSearches## Devuelve la ruta real de la carpeta especial: SavedSearches C:\Users\Jill\Searches
##commonprograms## Devuelve la ruta real de la carpeta especial: CommonPrograms C:\ProgramData\Microsoft\Windows\Start Menu\Programs
##ComputerName## Devuelve el nombre de la máquina WIN10EN-LR3B66L
##ClientName## Devuelve el nombre de la máquina cliente W2K16ST-5IS28JP
##ClientIPAddress## Devuelve la dirección IP de la máquina cliente 10.150.153.138
##IpAddress## Devuelve la dirección IP de la máquina 10.150.153.213
##ADSite## Devuelve el sitio de Active Directory del que forma parte la máquina NKG
##DefaultRegValue## - Siempre string.Empty
##UserLDAPPath## Devuelve el nombre distintivo del usuario actual CN=Jill Chou,OU=cuentas de usuario,OU=APAC,DC=citrite,DC=net
##VUEMAgentFolder## Devuelve la carpeta del agente C:\Program Files (x86)\ Citrix\ Workspace Environment Management Agent
##RDSSessionID## Devuelve el ID de sesión de escritorio remoto 2
##RDSSessionName## Devuelve el nombre de la sesión de escritorio remoto RDP-Tcp#72
##ClientRemoteOS## Devuelve el sistema operativo de la máquina utilizada para conectarse al escritorio virtual Windows
##ClientOSInfos## Devuelve la información del sistema operativo de la máquina Windows 10 Enterprise de 64 bits

El hash-tag ##UserScreenCaptureComment## está implementado para su uso en partes específicas del producto. Esta etiqueta se puede incluir en la plantilla de correo electrónico en Configuración avanzada > Personalización del agente de interfaz de usuario > Opciones de asistencia técnica. Cuando se incluye, se muestra a los usuarios un campo de comentario ubicado debajo de la captura de pantalla en la utilidad de captura de pantalla del agente. El comentario se incluye en el correo electrónico de asistencia en la ubicación en la que colocó la etiqueta en la plantilla de correo electrónico.

Atributos de Active Directory

Para trabajar con atributos de Active Directory, WEM reemplaza el valor [ADAttribute:attrName] por el atributo de Active Directory relacionado. [ADAttribute:attrName] es el token dinámico de cualquier atributo de Active Directory. Hay un filtro relacionado que comprueba el valor de los atributos especificados.

Para las estructuras de unidades organizativas (OU) de usuario, WEM reemplaza el valor [UserParentOU:level] por el nombre de la OU de Active Directory relacionado. La ruta de Active Directory es la ruta de usuario completa (LDAP) en Active Directory y [UserParentOU:level] es un subconjunto de la misma.

Por ejemplo, supongamos que quiere crear una unidad de red para una unidad organizativa a la que pertenecen los usuarios. Puede usar el token dinámico [UserParentOU:Level] en la ruta de la unidad de red para resolver la OU de los usuarios de forma dinámica. Hay dos formas de usar el token dinámico:

  • Use el token dinámico [UserParentOU:level] directamente en la ruta de la unidad de red. Por ejemplo, puede utilizar la siguiente ruta: \\Server\Share\[UserParentOU:0]\.
  • Defina una variable de entorno denominada OU y, a continuación, establezca su valor en [UserParentOU:0]. A continuación, puede asignar la unidad como \\Server\Share\%OU%\.

Nota:

  • Puede sustituir el dígito “0” por el número que corresponde al nivel que quiere alcanzar en la estructura de la unidad organizativa.
  • Puede anexar variables a la ruta de acceso. Para ello, asegúrese de que tiene una estructura de carpetas exacta que coincida con su diseño de unidad organizativa.

También puede utilizar atributos de Active Directory para fines de filtrado. En la ficha Administración > Filtros > Condiciones > Lista de condiciones de filtro, puede abrir la ventana Nueva condición de filtro después de hacer clic en Agregar. En la ventana Nueva condición de filtro, puede ver los siguientes cuatro tipos de condición de filtro asociados a los atributos de Active Directory:

  • Coincidencia de atributos de Active Directory
  • Coincidencia de grupo de Active Directory
  • Coincidencia de ruta de Active Directory
  • Coincidencia de sitio de Active Directory

Para la coincidencia de atributos de Active Directory, el token dinámico es [ADAttribute:attrName]. No hay ningún token dinámico disponible para la coincidencia de grupo de Active Directory porque ese tipo de condición se utiliza para comprobar la pertenencia a un grupo. Para Active Directory Path Match, el token dinámico para la ruta LDAP completa es ##UserLDAPPath##. Para Active Directory Site Match, el token dinámico es ##ADSite##.

Consulte esta tabla para ver ejemplos:

Modal Descripción Ejemplo
[ADAttribute:attrName] Devuelve el atributo especificado del usuario del dominio [ADAttribute:name] devuelve Administrator
[PrinterAttribute:printername|attrName] Devuelve el atributo especificado de la impresora del dominio especificado [PrinterAttribute:printer1|name] devuelve printer1
[UserParentOU: nivel] Devuelve el nivel especificado de la unidad organizativa principal del usuario actual [UserParentOU:1] en CN=Jill Chou,OU=User Accounts,OU=APAC,DC=citrite,DC=net devuelve APAC

Registros

Para trabajar con un registro, WEM reemplaza el valor [RegistryValue:<Registry path>] por el valor del registro relacionado. Por ejemplo, puede especificar el siguiente valor:

  • [RegistryValue:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Norskale\Agent Host\AgentLocation]

Archivos XML

Para trabajar con un archivo XML, WEM reemplaza el valor [GetXmlValue:<XML path>|<tag name>] por el valor de etiqueta específico del archivo XML. La ruta XML puede ser una ruta real o una variable de entorno que se resuelve en una ruta. Debe incluir la variable de entorno con%. Por ejemplo, puede especificar el siguiente valor:

  • [GetXmlValue:C:\citrix\test.xml|summary] o bien
  • [GetXmlValue:%xmlpath%|summary]

Archivos INI

Para trabajar con un archivo INI, WEM reemplaza [GetIniValue:<INI path>|<section name in the .ini file>|<key name in the .ini.file>] por el valor clave. La ruta INI puede ser una ruta real o una variable de entorno que se resuelve en una ruta. Debe incluir la variable de entorno con%. Por ejemplo, puede especificar el siguiente valor:

  • [GetIniValue:C:\citrix\test.ini|PLD_POOL_LIC_NODE_0_0|LicExpTime] o bien
  • [GetIniValue:%inipath%|PLD_POOL_LIC_NODE_0_0|LicExpTime]

Más información

Tabla de compatibilidad para condiciones de filtros

Esta tabla muestra todos los tipos de condiciones cuyo valor probado o resultado coincidente admiten identificadores dinámicos.

Tipo de condición Valor probado Resultado coincidente
Coincidencia de ComputerName -
Coincidencia de ClientName -
Coincidencia de variable de entorno No
Coincidencia de valor del Registro
Coincidencia de resultados de consultas WMI -
Coincidencia de nombres de comunidad de XenApp -
Coincidencia de nombres de zona de XenApp -
Coincidencia de nombres de comunidad de XenDesktop -
Coincidencia de nombres de grupos de escritorio de XenDesktop -
Coincidencia de atributos de Active Directory
Nombre o valor está en la lista
No hay coincidencia de ComputerName -
No hay coincidencia de ClientName -
Sin coincidencia de variable de entorno No
Sin coincidencia de valor del Registro
No hay coincidencia de resultado de consulta WMI -
El nombre de la comunidad de XenApp no coincide -
El nombre de la zona de XenApp no coincide -
El nombre de la comunidad de XenDesktop no coincide -
El nombre del grupo de escritorio de XenDesktop no coincide -
No hay coincidencia de atributo de Active Directory
El nombre o el valor no está en la lista
Coincidencia de valor dinámico
No hay coincidencia de valor dinámico
Coincidencia de versión de archivo
No coincide con la versión del archivo
Nombre de recurso publicado -
El nombre está en la lista
El nombre no está en la lista
El archivo/carpeta existe -
El archivo/carpeta no existe -
Tokens dinámicos