For the complete documentation index, see llms.txt. This page is also available as Markdown.

Certificado de cliente

La autenticación por certificado de cliente garantiza que las máquinas cliente dispongan de un certificado concreto al conectarse a PowerShell Universal. La comprobación del certificado se realiza durante la negociación HTTP, por lo que afecta a todo el servidor web y no puede configurarse por ruta.

Para obtener información detallada sobre la autenticación por certificado de cliente en ASP.NET Core 5.0, puede consultar la documentación de Microsoft aquí.

Habilitar la autenticación por certificado de cliente

Deberá habilitar el alojamiento HTTPS y activar la autenticación por certificado de cliente. En primer lugar, asegúrese de tener seleccionado un certificado HTTP y de haber establecido ClientCertificateMode en RequireCertificate. Estas opciones se pueden definir en el fichero appsettings.json.

"Kestrel": {
  "Endpoints": {
    "HTTPS": {
      "Url": "https://*:5000",
      "ClientCertificateMode": "RequireCertificate",
      "Certificate": {
        "Subject": "localhost",
        "Store": "My",
        "Location": "LocalMachine",
        "AllowInvalid": "true"
      }
    }
  },
  "RedirectToHttps": "false"
},

A continuación, deberá habilitar la autenticación por certificado de cliente.

Autorización

Puede utilizar el fichero roles.ps1 para evaluar el certificado proporcionado por el cliente. Esto puede servir para determinar qué roles recibirá el usuario al conectarse a PSU.

Para evaluar las propiedades disponibles durante la autorización, puede serializar la variable $user que se proporciona a las funciones de política de roles.

Recibirá información sobre el certificado dentro del objeto de usuario, similar a la siguiente.

Puede evaluar los claims mediante el método HasClaim. A continuación se muestra un ejemplo de comprobación de la huella digital del certificado.

Última actualización

¿Te fue útil?