API

Las API de Citrix Provisioning están disponibles en el sitio Citrix Developer Documentation:

Archivos del SDK de PowerShell después de la actualización

Faltan los archivos ubicados en C:\Program Files\Citrix\PowerShell SDK después de la actualización. Este problema se produce porque la versión CDF que utiliza Citrix Provisioning no coincide con la versión que utilizan otros componentes asociados a Citrix Virtual Apps and Desktops. Por eso, los archivos CDF más recientes tienen un número de versión inferior a los anteriores. Este problema no afecta a la funcionalidad de importar colecciones de dispositivos CPV a catálogos de máquinas de Citrix Virtual Apps and Desktops. Para solucionar este problema:

  1. Cierre Citrix Studio.
  2. Monte la nueva ISO de Citrix Virtual Apps and Desktops.
  3. En la ISO montada, vaya a \x64\DesktopStudio.
  4. Haga clic con el botón secundario en PVS PowerShell SDK x64 para ver un menú contextual.
  5. Seleccione Reparar.
  6. Ejecute la opción de reparación. La instalación agrega los dos archivos CDF según sea necesario.

Método de enumeración de grupos de Active Directory

La consola de Citrix Provisioning contiene el asistente Setup Wizard de Citrix Virtual Apps and Desktops. Este asistente proporciona tareas de integración entre Citrix Provisioning, Citrix Virtual Apps and Desktops y Windows Active Directory. El asistente crea las máquinas virtuales y todos los objetos necesarios en Citrix Provisioning, Citrix Virtual Apps and Desktops y Windows Active Directory.

Nota:

Esta implementación estaba limitada en versiones anteriores debido a la ausencia de una API expuesta. Sin ella, los usuarios de Citrix Provisioning no pueden ejecutar varios paradigmas de pruebas automatizadas en sus entornos.

En el servidor de Provisioning, un servicio expone la funcionalidad de Citrix Virtual Apps and Desktops y Streamed VM Setup Wizard a través de una API de PowerShell. Esta API proporciona un front-end de PowerShell. Este front-end se puede utilizar para automatizar la funcionalidad que ofrecen Citrix Virtual Apps and Desktops Setup Wizard y Streamed VM Setup Wizard.

Sugerencia:

El servicio API de Citrix Provisioning utiliza una conexión SSL que requiere la configuración de un certificado X.509 en el servidor de aprovisionamiento.

Configurar el certificado X.509

El servicio API de Citrix Provisioning utiliza una conexión SSL que requiere un certificado X.509 en el servidor de aprovisionamiento. El certificado de la entidad de certificación (CA) también debe estar presente en el servidor y en la máquina de la consola.

Para crear un certificado autofirmado para API de Citrix Provisioning:

  1. Descargue e instale el Windows SDK para el sistema operativo del servidor de aprovisionamiento que tenga.
  2. Abra un símbolo del sistema y vaya a la carpeta “bin” del SDK. De forma predeterminada: C:\Program Files (x86)\Windows Kits\SDK_Version\bin\x64> y ejecute los siguientes comandos.
  3. Cree un certificado que actúe como su entidad de certificación raíz: makecert -n "CN= PVSRoot CA" -r -sv PVSRoot CA.pvk PVSRoot CA.cer.
  4. Cree el certificado del servicio e instálelo: makecert -sk PVSAP I -iv PVSRoot CA.pvk -n "CN= FQDN of the PVS Server" -ic PVSRoot CA.cer -sr localmachine -ss my -sky exchange -pe.
  5. Instale el certificado de CA raíz en la ubicación Trusted Root Certification Authorities del servidor y las máquinas de la consola: cert mgr -add "PVSRoot CA.cer" -s -r localMachine Root.
  6. Ejecute el asistente Configuration Wizard. En la página Soap SSL Configuration, seleccione el certificado creado.

Nota:

Cuando ejecute los comandos de PowerShell, use el FQDN del servidor de Provisioning en PvsServerAddress y 54324 (predeterminado) en PvsServerPort.

Usar la API de Citrix Provisioning

Después de instalar el servidor de Citrix Provisioning más reciente:

  1. Ejecute el asistente Configuration Wizard.
  2. Abra la ventana Services en el servidor de aprovisionamiento y compruebe que la API de Citrix Provisioning está instalada y configurada para ejecutarse como administrador:

Sugerencia:

El servicio API de Citrix Provisioning utiliza una conexión SSL que requiere la configuración de un certificado X.509 en el servidor de aprovisionamiento.

sitio de la consola

  1. Abra una ventana de PowerShell en el servidor de aprovisionamiento:

a. Import-Module C:Program Files\Citrix\Provisioning Services\Citrix.ProvisioningServices.dll.

b. Get-Command-Module.

En la siguiente imagen se ilustran las opciones de comandos:

sitio de la consola

c. Haga ping al servicio de la API de Citrix Provisioning API: Get-PvsApiServiceStatus -PvsServerAddress FQDN del servidor de aprovisionamiento -PvsServerPort Puerto de Provisioning donde está configurada la escucha de la API

Sugerencia:

El número de puerto del servidor de aprovisionamiento es el utilizado para la comunicación del servidor SOAP.

sitio de la consola

d. Inicie sesión en la API de Citrix Provisioning (use alguno de los siguientes comandos):

Use los parámetros Domain, Username o Password:

Get-PvsConnection -PvsServerAddress FQDN del servidor de Provisioning -PvsServerPort Puerto SOAP +1 puerto donde la API de Provisioning se ha configurado para escuchar -Domain Dominio del administrador de Provisioning -Username Nombre de usuario del administrador de Provisioning -Password Contraseña del administrador de Provisioning

Use el objecto Pass-in PSCredential:

Get-PvsConnection -PvsServerAddress Dirección del servidor de Provisioning PvsServerPort-Credentials Objeto PSCredential que devuelve Get-Credential

sitio de la consola

sitio de la consola

Se incluyen los siguientes cmdlets con la implementación de la API de Citrix Provisioning:

  • Get-PvsApiServiceStatus. Hace ping al servicio para determinar si este funciona en una dirección o puerto concretos.
  • Get-PvsConnection. Inicia sesión en la API de Citrix Provisioning.
  • Clear-PvsConnection. Cierra la sesión de la API de Citrix Provisioning. Este cmdlet agrega el token de autenticación a la lista negra.
  • Start-PvsProvisionXdMachines. Se utiliza para automatizar el asistente Setup Wizard de Citrix Virtual Apps and Desktops.
  • Start-PvsProvisionMachines. Se usa para automatizar el asistente Streamed VM Setup Wizard.
  • Get-PvsProvisioningStatus. Usa el ID que devuelve alguno de los dos comandos anteriores para obtener el estado de la sesión actual de aprovisionamiento.
  • Stop-PvsProvisionMachines. Usa el ID que devuelve alguno de los dos comandos anteriores para cancelar la sesión actual de aprovisionamiento.

Puede acceder a ejemplos de estos cmdlets de PowerShell con Get-Help CommandName – Examples:

sitio de la consola

Sugerencia:

El resto de los cmdlets de PowerShell forman parte de la capa de acceso a la base de datos.

Al conectarse a la API mediante el comando Set -PvsConnection de PowerShell, se devuelve un objeto de conexión similar a:

sitio de la consola

Dentro de Citrix Provisioning, el método de control de acceso de los usuarios se basa en las credenciales de inicio de sesión de Active Directory y la configuración del grupo administrativo. Como resultado de este método, la enumeración repetida de grupos AD desencadena eventos asociados a las operaciones del asistente Configuration Wizard y la consola. En entornos AD complejos donde pueden producirse inicios de sesión falsos, el sistema puede volverse lento, con respuestas lentas que resultan en tiempos de espera agotados en las conexiones a la consola de Citrix Provisioning. Con esta función, se resuelven estos problemas porque se mejora el método responsable de la enumeración de grupos AD.

Antes de esta función, la enumeración de grupos AD se producía al analizar las pertenencias de miembros asociadas al inicio de sesión del usuario en su dominio y en la totalidad de los dominios de confianza. Este proceso continuaba hasta que se determinen todas las pertenencias al grupo del usuario o si no hay dominios adicionales en los que buscar. Los grupos identificados se cotejaban con los grupos administrativos definidos en la base de datos para determinar los derechos de acceso del usuario.

Con esta funcionalidad, la enumeración de grupos AD se ha mejorado y ahora la pertenencia a grupos de un usuario se busca en los dominios preferidos. Este enfoque es diferente a buscar en la totalidad de los grupos en todos los dominios. El nombre del grupo administrativo asociado a la credencial de inicio de sesión del usuario se utiliza para obtener la lista de dominios preferidos. Primero, se busca en la lista de dominios del usuario. Luego, se busca en la lista de dominios preferidos. Durante esta búsqueda, si se detecta el grupo administrativo de una comunidad, la búsqueda se detiene porque el usuario ya tiene derecho total de acceso a la comunidad de Citrix Provisioning. Este paradigma de búsqueda también incluye un mecanismo que usa el ID de seguridad del dominio para verificar si el dominio contiene los grupos previstos. Este enfoque modificado de búsqueda de dominios para encontrar la pertenencia a grupos de un usuario subviene a las necesidades de la mayoría de los entornos de AD, lo que resulta en operaciones más rápidas de la consola de aprovisionamiento y del asistente Configuration Wizard.

Modificar el enfoque de búsqueda

En algunos entornos de AD que contienen configuraciones con grupos complejos anidados y dominios con muchas asociaciones de confianza, el método de búsqueda predeterminado puede no encontrar las pertenencias administrativas esperadas del usuario. Para resolver dichas situaciones, use un parámetro de Registro que permite cambiar el enfoque de búsqueda:

  1. En el parámetro de Registro, busque HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\ProvisioningServices.
  2. Cree un DWORD llamado “DomainSelectOption”.
  3. En DWORD de DomainSelectOption, establezca uno de los siguientes valores (en formato decimal) para el enfoque de búsqueda pertinente:
  • 0: La búsqueda predeterminada. Este método busca en el dominio del usuario, seguido de los dominios del grupo administrativo.
  • 1: Buscar en el dominio del usuario y en el dominio de grupo administrativo, seguido de otros dominios de confianza dentro del dominio de un usuario.
  • 2: Obsoleto.
  • 3: Este método busca en el dominio del usuario, seguido de los dominios del grupo administrativo. Los grupos que se detectan se enumeran en el dominio principal.
  • 4: Buscar en el dominio del usuario y en el dominio de grupo administrativo, seguido de otros dominios de confianza dentro del dominio de un usuario. Los grupos que se detectan se enumeran en el dominio principal.