Конфигурация клиента REST API в web. config C#
Мне нужно использовать взаимную аутентификацию Https в клиенте REST API, так как мы получаем только URI, мы не можем добавить сертификат клиента, как это делается для WCF.
Что я уже пробовал:
I have added keys in my web .config as below : <appSettings> <add key="URI" value="https://localhost:8080/RestfulService/RestfulService.svc/restfulData" /> <add key="CertificateValue" value="certficatename"/> <add key="CertificateLocation" value="LocalMachine"/> <add key="CertificateStoreName" value="My"/> <add key="CertificateFindType" value="FindBySubjectName"/> </appSettings>
и я использую его в своем коде API, как показано ниже:
X509Store store = new X509Store(ConfigurationManager.AppSettings["CertificateStoreName"], ConfigurationManager.AppSettings["CertificateLocation"]); store.Open(OpenFlags.ReadOnly); X509CertificateCollection certificates = store.Certificates.Find(ConfigurationManager.AppSettings["CertificateFindType"], ConfigurationManager.AppSettings["CertificateValue"], true); X509Certificate certificate = certificates[0]; HttpWebRequest request = WebRequest.Create(requestUrl) as HttpWebRequest; request.ClientCertificates.Add(certificate); HttpWebResponse response = request.GetResponse() as HttpWebResponse
Является ли это правильным способом реализации проверки подлинности сертификата в REST-клиенте или, если нет, пожалуйста, помогите с правильным подходом.