> For the complete documentation index, see [llms.txt](https://docs.scepman.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.scepman.com/es/administracion-de-certificados/active-directory/configuracion-general.md).

# Configuración general

Para permitir que SCEPman gestione correctamente las solicitudes SOAP entrantes, necesitamos seguir algunos pasos:

{% stepper %}
{% step %}

### Dominio personalizado y BaseUrl

Para una autenticación correcta con SCEPman, asegúrese de que un dominio personalizado que use un `registro A` apunte al App Service. De lo contrario, el cliente no podrá solicitar un ticket Kerberos válido al Domain Controller.

{% hint style="info" %}
El dominio personalizado no tiene que parecerse al FQDN de su dominio de Active Directory. Así que tener un dominio `ad.contoso.local` no significa que necesite un dominio personalizado idéntico o similar para SCEPman.

Consulte el problema conocido más abajo sobre [WS\_E\_ENDPOINT\_ACCESS\_DENIED](https://app.gitbook.com/o/-LhPlvZ6dc8XcqY7tdZw/s/-LoGejQeUQcw7lqnQ3WX/~/diff/~/changes/806/certificate-management/active-directory/general-configuration#ws_e_endpoint_access_denied) para obtener más información.
{% endhint %}

Asegúrese de que SCEPman esté configurado para ser accesible mediante un dominio personalizado:

{% content-ref url="/pages/f95d8259cccc4f926cc78e47a0c8ee8643f454ef" %}
[Dominio personalizado](/es/configuracion-de-azure/custom-domain.md)
{% endcontent-ref %}

El mismo requisito también se aplica después de la solicitud inicial de directiva (la lista de las plantillas de certificados) para inscribir certificados. Para permitir autenticaciones correctas, asegúrese de que la [AppConfig:BaseUrl](https://app.gitbook.com/o/-LhPlvZ6dc8XcqY7tdZw/s/-LoGejQeUQcw7lqnQ3WX/~/diff/~/changes/806/scepman-configuration/application-settings/basics#appconfig-baseurl) variable coincida con su dominio personalizado o use la [AppConfig:ActiveDirectory:BaseUrl](https://app.gitbook.com/o/-LhPlvZ6dc8XcqY7tdZw/s/-LoGejQeUQcw7lqnQ3WX/~/diff/~/changes/806/scepman-configuration/application-settings/active-directory/general#appconfig-activedirectory-baseurl) configuración dedicada si prefiere acceder al punto de conexión de AD en una URL diferente a la de sus otros puntos de conexión de SCEPman.
{% endstep %}

{% step %}

### Crear Service Principal

Use el `New-SCEPmanADPrincipal` cmdlet del módulo SCEPman PowerShell para crear el Service Principal en su dominio local de Active Directory. También exportará un keytab de esta cuenta y lo cifrará con el certificado de CA de SCEPman.

Puede ejecutar este comando en un Domain Controller o en un servidor unido al dominio que tenga instalada la `RSAT-AD-Tools` característica. También necesitará los siguientes permisos en la OU en la que desea crear el principal:

En la propia OU:

* Crear objetos de equipo

En los objetos de equipo descendientes:

* Restablecer contraseña
* Escritura `msDS-SupportedEncryptionTypes`
* Escritura `servicePrincipalName`
* Escritura `userPrincipalName`

La variante siguiente también requiere acceso de red HTTPS saliente a su instancia de SCEPman.

{% hint style="info" %}
Si su equipo con acceso a un Domain Controller no tiene acceso a la red, existen variantes del CMDlet que funcionan sin él, pero requieren alguna preparación adicional, como descargar el certificado de CA de SCEPman y copiar la CA al equipo que ejecuta el CMDlet.
{% endhint %}

```powershell
Install-Module SCEPman -Force
New-SCEPmanADPrincipal -Name "SCEPmanAD" -AppServiceUrl "scepman.contoso.com" -OU
"OU=Example,DC=contoso,DC=local"
```

Al ejecutar este comando se realizará lo siguiente:

1. Crear un objeto de equipo en la `OU=Example,DC=contoso,DC=com` Unidad organizativa.
2. Descargar el certificado de CA de SCEPman para cifrar el keytab en el paso 5.
3. Agregar un nombre de entidad de servicio (SPN) al objeto de equipo.
4. Crear un keytab para la cuenta de equipo que contenga la clave de cifrado basada en la contraseña del equipo.
5. Cifrar el keytab con el certificado de CA de SCEPman, de modo que solo SCEPman pueda descifrarlo de nuevo usando la clave privada de la CA.
6. Generar la salida del keytab cifrado, para que pueda transferirse a la configuración de SCEPman.

La salida codificada en Base64 debe añadirse después a la variable de entorno **AppConfig:ActiveDirectory:Keytab** de su App Service de SCEPman.3
{% endstep %}

{% step %}

### Agregar Keytab a SCEPman

La integración puede habilitarse fácilmente agregando las siguientes variables de entorno en el **App Service de SCEPman.** Según su caso de uso, habilite una o más de las plantillas de certificados disponibles:

*Ejemplo con todas las plantillas de certificados habilitadas:*

| Configuración                               | Valor                                                                     |
| ------------------------------------------- | ------------------------------------------------------------------------- |
| AppConfig:ActiveDirectory:Keytab            | Keytab codificado en Base64 para el Service Principal creado en el paso 1 |
| AppConfig:ActiveDirectory:Computer:Enabled  | true                                                                      |
| AppConfig:ActiveDirectory:User:Enabled      | true                                                                      |
| AppConfig:ActiveDirectory:DC:Enabled        | true                                                                      |
| AppConfig:ActiveDirectory:RdpServer:Enabled | true                                                                      |
| {% endstep %}                               |                                                                           |
| {% endstepper %}                            |                                                                           |

## Problemas conocidos

### WS\_E\_ENDPOINT\_ACCESS\_DENIED

```
Error: WS_E_ENDPOINT_ACCESS_DENIED 
Hex: 0x803d0005
Dec: -2143485947
```

Se sabe que este error ocurre durante la validación del servidor CEP cuando está usando los *predeterminados* URI del Azure App Service. Este error es causado por el protocolo Kerberos, que solicita un nombre de entidad de servicio del registro A del servicio al que se va a acceder. En el caso de los dominios predeterminados del App Service, por ejemplo `contoso.azurewebsites.net` es solo un CNAME y apunta a un registro A similar a:

```
waws-prod-ab1-234-c56d.westeurope.cloudapp.azure.com
```

Como no se garantiza que este registro A de un host de infraestructura sea consistente en el futuro, agregar un nombre de entidad de servicio para este host **no se recomienda**.

Asegúrese de agregar un dominio personalizado a su App Service y usar un registro A dentro de su proveedor de DNS para apuntarlo al App Service en lugar de un CNAME.

{% content-ref url="/pages/f95d8259cccc4f926cc78e47a0c8ee8643f454ef" %}
[Dominio personalizado](/es/configuracion-de-azure/custom-domain.md)
{% endcontent-ref %}

### ERROR\_INVALID\_PARAMETER

```
Error: ERROR_INVALID_PARAMETER
Hex: 0x80070057
Dec: -2147024809
```

Este error ocurre durante el registro del servidor CEP si introduce una URI que comienza con `http://`. Asegúrese de registrar un servidor CEP solo mediante `https://`

### ERROR\_ACCESS\_DENIED

```
Error: ERROR_ACCESS_DENIED
Hex: 0x80070005
Dec: -2147024891
```

Al registrar un servidor CEP en contexto de máquina, el usuario que actúa (la cuenta que inició `gpmc.msc`) debe ser miembro del grupo local de Administrators en el equipo mientras edita la GPO.

Asegúrese de iniciar `gpmc.msc` con permisos elevados en este caso.


---

# 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:

```
GET https://docs.scepman.com/es/administracion-de-certificados/active-directory/configuracion-general.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
