> For the complete documentation index, see [llms.txt](https://docs.devolutions.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.devolutions.net/powershell-universal/es/licensing.md).

# Licencias

PowerShell Universal se licencia por servidor. Ofrecemos licencias para particulares y organizaciones.

Puede adquirir una licencia en [nuestro sitio web](https://store.devolutions.net/package#psu).

## ¿Qué es un servidor?

Un servidor es una única instancia en ejecución de PowerShell Universal.

### ¿Qué ocurre si tengo varios contenedores?

La licencia se aplica a cada instancia de contenedor y no al host del contenedor. Por ejemplo, si tiene 10 instancias de contenedor en ejecución, necesitará 10 licencias.

### ¿Qué ocurre si tengo varios sitios en un único servidor IIS?

Cada sitio web que ejecute PowerShell Universal necesitará una licencia, en lugar de una sola licencia para todo el servidor IIS.

## Instalar una licencia

Para instalar una licencia, haga clic en Configuración \ Licencia. Haga clic en el botón Añadir licencia para cargar su fichero de licencia. También puede instalar licencias usando el cmdlet `Set-PSULicense`. Las licencias offline no requieren conexión a Internet, pero deberán reinstalarse cuando caduque la suscripción, si desea actualizar la versión de PowerShell Universal. Las licencias en línea requieren conexión a Internet y acceso a `https://ironmansoftware.com` para verificar el estado de la suscripción.

Puede usar la variable de entorno `PSULICENSE` para establecer una licencia. El valor de esta variable de entorno debe ser el contenido del fichero de licencia.

La configuración del proxy se puede realizar haciendo clic en Configuración \ General y configurando el URI del proxy y, opcionalmente, las credenciales. También puede configurar los ajustes del proxy con el cmdlet `Set-PSUSetting`.

### Licencias offline

Los ficheros de licencia offline son necesarios para entornos que no tienen acceso a Internet. Deberá instalar un nuevo fichero de licencia cuando planee actualizar a una versión posterior a la fecha de caducidad de la licencia.

### Licencias en línea

Las licencias en línea funcionan igual que las offline, pero comprueban el estado de la suscripción en ironmansoftware.com. La licencia está vinculada a una suscripción específica y puede requerir un cambio después de la renovación. Recomendamos las licencias basadas en cuenta en lugar de las licencias en línea.

## Licencia de desarrollador

Puede obtener una licencia de desarrollador gratuita iniciando sesión con una [Devolutions Account](https://docs.devolutions.net/portal/es/profile/create-your-devolutions-account). El uso de una licencia de desarrollador permite su utilización en cargas de trabajo que no sean de producción. Puede usar esta licencia para desarrollar o probar PowerShell Universal.

Durante el asistente de primera ejecución, se le presentará la opción de iniciar sesión con una Devolutions Account. Después de hacerlo, se le redirigirá de nuevo a PowerShell Universal con una licencia instalada.

<figure><img src="/files/cpENi1iwUC1PXA90I0wS" alt=""><figcaption></figcaption></figure>

### Puerto de inicio de sesión estático

PowerShell Universal, de forma predeterminada, selecciona un puerto localhost aleatorio en el rango de `60370` a `61370` para los intentos de inicio de sesión de Devolutions. Esto se debe a restricciones del proveedor de autenticación. Si desea un puerto localhost estático para escenarios locales o alojados en el host, puede usar el ajuste o la variable de entorno `PSULoginPort`.

`PSULoginPort` hace que el puerto de devolución de llamada de localhost sea estático. No cambia el host de devolución de llamada de `127.0.0.1`. Exponer o reenviar el puerto puede ser necesario en algunos entornos alojados, pero exponer el puerto por sí solo no hace que la incorporación de la licencia de desarrollador funcione para navegadores remotos a través de Docker, IIS o alojamiento con proxy inverso.

{% code overflow="wrap" %}

```json
{
    "PSULoginPort": 60370
}
```

{% endcode %}

### Docker

Si desea usar Docker como mecanismo para alojar su instancia de desarrollo de PowerShell Universal, deberá abrir un puerto para el puerto de inicio de sesión. Esto incluye especificar el puerto de inicio de sesión estático así como asignarlo fuera de la instancia de Docker.

{% code overflow="wrap" %}

```
docker run --rm -it `
  -e PSULoginPort=60370 `
  -p 5000:5000 `
  -p 60370:60370 `
  devolutions/powershell-universal
```

{% endcode %}

#### IIS

Si desea usar IIS como mecanismo para alojar su instancia de desarrollo de PowerShell Universal, deberá establecer el puerto de inicio de sesión estático como parte de su fichero `web.config`.

{% code overflow="wrap" %}

```xml
<configuration>
  <system.webServer>
    <handlers>
      <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
    </handlers>
    <aspNetCore processPath="Universal.Server.exe" arguments="--appsettings .\appsettings.json" forwardWindowsAuthToken="false" stdoutLogEnabled="true" stdoutLogFile=".\logs\log" hostingModel="OutOfProcess">
      <environmentVariables>
        <environmentVariable name="PSULoginPort" value="60370" />
    </environmentVariables>
    </aspNetCore>
  </system.webServer>

</configuration>
```

{% endcode %}

Después de hacerlo, deberá añadir un nuevo enlace para el puerto de inicio de sesión.

<figure><img src="/files/AtVVe33rJDKEpI3vhuMW" alt=""><figcaption></figcaption></figure>

## Funciones con licencia

Las siguientes funciones de PowerShell Universal requieren una licencia.

* Herramientas de depuración
* Autenticación empresarial
  * OpenID Connect
  * SAML2
  * WS-Federation
  * Autenticación de Windows
  * Scripts de autenticación personalizados
  * Certificado de cliente
  * Tokens de aplicación
* Autorización empresarial
  * Permisos
  * Scripts de autorización personalizados
* Plataforma
  * Compatibilidad con Git
  * Gestión de módulos
  * Bóvedas de credenciales no basadas en base de datos
  * Compatibilidad con SQL
  * Compatibilidad con PostgreSQL
  * Carpetas publicadas
  * Gestión de caché
  * Grupos de ordenadores
  * Traducciones
* Configuración
  * Personalización de marca
  * Etiquetas
* APIs
  * Event Hubs
  * Documentación de OpenAPI
* Automatización
  * Disparadores
  * Terminales
  * Pruebas
  * Flujos de trabajo
* Inteligencia
* Aplicaciones
  * Editor de páginas de aplicaciones
  * Editor de funciones de aplicaciones


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.devolutions.net/powershell-universal/es/licensing.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
