1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
| public static void Main(string[] args)
{
//CREATION DE MON TIMER
TimerCallback callback = new TimerCallback(Tick);
Console.WriteLine("\n Creating timer: {0} \n", DateTime.Now.ToString("h:mm:ss"));
Timer stateTimer = new Timer(callback, null, 0, 5000); //--> ici toutes les 5 secondes pour les testes
Console.ReadKey(true);
}
static public void Tick(Object stateInfo)
{
Console.WriteLine("appel de la fonction SSL . . .\n");
ssl();
}
public static void ssl()
{
try
{
ServicePointManager.ServerCertificateValidationCallback += ServerCertificateValidationCallback;
var request = WebRequest.Create("https://exemple.com:443");
var response = request.GetResponse();
Console.WriteLine("\n is ok \n");
}
catch
{
Console.WriteLine("\n is not ok \n");
}
}
//callback du SSL
private static bool ServerCertificateValidationCallback(object sender, X509Certificate certificate,
X509Chain chain, SslPolicyErrors sslPolicyErrors)
{
string sN = certificate.GetSerialNumberString();
string Iss = certificate.Issuer.ToString();
string exp = certificate.GetExpirationDateString();
string serialNumber ="XXXXXXXXXXXXXXXXXXXXXx";
string issuer = "CN=XXXX Standard SSL CA, O=XXXXXX SAS, C=XX";
string expiration = "XX/XX/XXXX XX:XX:XX";
if(sN != serialNumber || Iss != issuer || exp != expiration)
{
Console.WriteLine("probleme de certificat");
return false;
}
else
{
return true;
}
} |
Partager