Szukam danych z dowolnych nazw domen certyfikatu SSL. Na przykład chcę wprowadzić dowolny adres witryny, np. "http://stackoverflow.com", a mój kod najpierw sprawdzi, czy istnieje certyfikat SSL. Jeśli tak, chcę, aby wyciągnęła datę wygaśnięcia certyfikatu. [Czytam nazwy domen z DB] Przykład: http://www.digicert.com/help/uzyskać informacje o certyfikacie ssl - .net
Potrzebuję stworzyć serwis internetowy, aby sprawdzić datę wygaśnięcia. jak mogę to zaimplementować? - Sprawdziłem wiele różnych rzeczy, takich jak RequestCertificateValidationCallback i ClientCertificates itp. Ponieważ jestem nowy w tym, nie jestem pewien, co należy zrobić.
Mogę być całkowicie błędny (stąd dlaczego potrzebuję pomocy), ale czy utworzę HTTPWebRequest, a następnie jakoś zażądam certyfikatu klienta i określonych elementów w ten sposób?
Próbowałem przykład pod warunkiem, że @SSL wstępnego pobierania certyfikatu .NET, ale otrzymuję błąd 403 forbitten.
Każda pomoc zostanie doceniona - dziękuję.
To jest kod, który napisałem, który rzuca 403 niedozwolony błąd.
Uri u = new Uri("http://services.efi.com/");
ServicePoint sp = ServicePointManager.FindServicePoint(u);
string groupName = Guid.NewGuid().ToString();
HttpWebRequest req = HttpWebRequest.Create(u) as HttpWebRequest;
req.Accept = "*/*";
req.ConnectionGroupName = groupName;
using (WebResponse resp = req.GetResponse())
{
// Ignore response, and close the response.
}
sp.CloseConnectionGroup(groupName);
// Implement favourite null check pattern here on sp.Certificate
string expiryDate = sp.Certificate.GetExpirationDateString();
string str = expiryDate;
Próbowałem za pomocą https://services.efi.com/, ale nadal jest rzucanie błąd 403. kiedy użyłem "http://ipp.efi.com" działało idealnie. – user166013
Tak, ponieważ ten ostatni adres URL jest publicznie dostępny (a także automatycznie przekierowuje do 'https'), a pierwszy nie. Jeśli nie możesz przejść do niego w IE, nie możesz załadować go również z kodu. Po prostu nie możesz uzyskać dostępu do strony "services.efi.com" (chyba że masz poświadczenia lub dostęp, którego nie mamy!). Być może potrzebujesz konkretnej strony Uri, a nie tylko nazwę domeny dla tej domeny ... –
o ok, dziękuję za odpowiedź :) .. pod moją domeną (powiedzmy services.efi.com) istnieje wiele witryn hosted.my requiremnet określa datę wygaśnięcia SSL i podejmuje niezbędne działania (np. wyślij wiadomość e-mail, jeśli data ważności to około 20 dni). więc jak mogę to zrobić, aby uzyskać informacje o certyfikacie SSL mojej domeny? – user166013