🇬🇧 | 🇩🇪 | 🇫🇷 | 🇪🇸 | 🇨🇳 | 🇸🇦
No tenemos DLL pero tenemos:
Analista de archivos de Windows y antivirus rápido en línea

Una interfaz minimalista con búsqueda rápida, carga conveniente y una estructura de sección limpia.

🛡️🔍 Verifique rápidamente su archivo, sólo déjame en esta página.
Verificación de virus, hashes, verificación de firmas, arquitectura, información de IA.

Descripción del error

This error occurs when you attempt to establish a remote Windows PowerShell or WinRM (Windows Remote Management) session using a specific certificate thumbprint for authentication, but your command or configuration fails to explicitly instruct the WinRM client to actually transmit that client certificate.

Por defecto, WinRM requiere una bandera programática específica llamada WSManFlagUseClientCertificate (o su parámetro equivalente en los cmdlets de PowerShell) para estar activo cada vez que se proporciona una huella dactilar de certificado. Sin esta bandera, el cliente WinRM detecta una contradicción: usted le dijo el cual Certificado para usar, pero usted no lo dio el permiso para utilizar la autenticación de certificados de cliente.


Soluciones paso a paso

Método 1: Añadir el parámetro -CertificateThumbprint en PowerShell

Si está usando el New-PSSession - ¿ Qué ? Enter-PSSession cmdlets, debe asegurarse de que está utilizando la configuración correcta de parámetros que obliga a la bandera del certificado del cliente a activarse.

  1. Open PowerShell como un administrador.
  2. Modify su comando de conexión para incluir tanto el -CertificateThumbprint Y el -UseSSL los parámetros.
  3. Run el comando usando esta estructura exacta:
    $thumbprint = "YOUR_CERTIFICATE_THUMBPRINT_HERE"
    New-PSSession -ComputerName "TARGET_COMPUTER_NAME" -CertificateThumbprint $thumbprint -UseSSL

    Nota: Especificar -CertificateThumbprint activa de forma nativa las banderas de certificados de cliente WSMan requeridas bajo el capó en las versiones modernas de PowerShell.

Método 2: Configurar opciones de sesión wsman exclusivamente

Si usted está escribiendo un guión utilizando New-WSManSessionOption, debe definir explícitamente el mecanismo de autenticación para que la señal se pase al subsistema WinRM.

  1. Open su script o consola de PowerShell.
  2. Create un objeto de opción de sesión que especifica la autenticación del certificado del cliente:
    $sessionOptions = New-WSManSessionOption -ClientCertificate
  3. Pass Este objeto de opción en su comando de conexión usando el -SessionOption Parámetro:
    New-PSSession -ComputerName "TARGET_COMPUTER_NAME" -CertificateThumbprint "YOUR_CERTIFICATE_THUMBPRINT_HERE" -SessionOption $sessionOptions -UseSSL

Método 3: Mapear el certificado al cliente WinRM (Política de ordenador local)

Si el error persiste, es posible que el cliente WinRM local no esté configurado para permitir o asignar certificados de cliente correctamente.

  1. Click el menú Inicio, escriba cmd Haga clic derecho. Command Prompt, y seleccione Run as administrator.
  2. Enable Autenticación de certificados de cliente en la configuración WinRM local ejecutando:
    winrm set winrm/config/client/auth @{Certificate="true"}
  3. Verify el cambio de configuración por ejecución:
    winrm get winrm/config/client/auth
  4. Ensure Eso es... Certificate = true aparece en la lista de salida.

Método 4: Verificar la ubicación de los certificados de origen y cliente de confianza

WinRM no pasará la bandera del certificado con éxito si el certificado no se encuentra en el almacén personal correcto o si el sistema operativo no confía en él.

  1. Press Windows Key + R, tipo certlm.msc, y presiona Enter para abrir el Administrador de Certificados de Máquina Local.
  2. Navigate ¿ Por qué ? Personal - ¿Qué quieres decir? Certificates y asegúrese de que su certificado de cliente está presente aquí y contiene una clave privada.
  3. Navigate ¿ Por qué ? Trusted Root Certification Authorities - ¿Qué quieres decir? Certificates y asegúrese de que el certificado raíz que firmó su certificado de cliente se enumera aquí.
  4. Restart el servicio WinRM para aplicar cambios de sistema ejecutando este comando en el Prompt de comandos del administrador:
    net stop winrm && net start winrm
ERROR_WSMAN_CERTMAPPING_INVALIDUSERCREDENTIALS | ERROR_WSMAN_CERT_INVALID_USAGE_CLIENT | ERROR_WSMAN_CERT_MULTIPLE_CREDENTIALS_FLAG | ERROR_WSMAN_CONFIG_SHELL_URI_INVALID | ERROR_WSMAN_CONFIG_SHELL_URI_CMDSHELLURI_NOTPERMITTED

Puede haber algunos errores.. Learn Microsoft