[Scraper] Selección automática de certificado en navegador, con Selenium y C#

Job ID: 33096198

Budget: $250 – $750 USD

Necesito la forma de automatizar la selección de un certificado digital en cualquiera de estos navegadores: Chrome, Firefox o Edge.

Tengo un programa que hace scraping al sitio www.sii.cl y que requiere autenticación con un certificado digital como se ve en la imagen 1. Utilizo C# y Selenium.

Actualmente el problema lo tengo resuelto en Chrome usando las políticas de Google según este enlace: https://gist.github.com/IngussNeilands/3bbbb7d78954c85e2e988cf3bfec7caa

Esto me permite decirle a Chrome que seleccione el primer certificado que cumpla con la condición del filtro: Ver imagen 2.

Sin embargo, en un equipo pueden convivir muchos certificados digitales, por lo que las opciones que supongo que me quedan son:

[Opcion 1] : Modificar el filtro de la política mediante código. Esto permitirá a Chrome seleccionar siempre el certificado correcto.
[Opcion 2]: Recibir el certificado digital mediante form-data en un endpoint, agregarlo temporalmente al store, levantar Chrome y el proceso de scraping y al finalizar, eliminar el certificado del store. Imagen 3. El problema que he tenido acá, es que no logro que el certificado se agregue en el store.

No he podido realizar ninguna de las dos alternativas descritas. Una tercera forma siempre será bienvenida.

El objetivo del trabajo, es que mediante Selenium y C#, conseguir que en cualquiera de estos navegadores: Chrome, Firefox o Edge, se automatice la selección del certificado digital. El listado de certificados se obtiene desde el store principal del equipo, por lo que debe estar instalado en la máquina.

Se espera una solución en Visual Studio con el código y un instructivo de uso o explicación de lo realizado.