首页 > 解决方案 > 我正在尝试使用来自 Avaya 办公室管理器 API 的数据。CertificateValidationCallback 导致错误

问题描述

我的错误是请求被中止:无法创建 SSL/TLS 安全通道。我正在使用 Avaya 办公室管理 api 文档中的示例代码。我无法让 CertificateValidationCallback 编译。

protected void Page_Load(object sender, EventArgs e) {

    ServicePointManager.ServerCertificateValidationCallback = new
    System.Net.Security.RemoteCertificateValidationCallback(CertificateValidationCallback); 
    String username = "";
    String password = "";
    String url = "https://10.207.251.41:7070/WebManagement/ws/sdk/security/authenticate";
    CookieContainer cookieContainer = new CookieContainer();
    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
    request.Credentials = CredentialCache.DefaultCredentials;
    request.Method = "GET";
    request.ContentType = "application/json";
    request.Headers.Add("X-User-Client", "Avaya-WebAdmin");
    request.Headers.Add("X-User-Agent", "Avaya-SDKUser");
    String credentials = Convert.ToBase64String(ASCIIEncoding.ASCII.GetBytes(username + ":" + password));
    request.Headers.Add("Authorization", "Basic " + credentials);
    request.CookieContainer = cookieContainer;

    HttpWebResponse response = (HttpWebResponse)request.GetResponse();
    var resStream = response.GetResponseStream();
    var reader = new StreamReader(resStream);
    String responseContent = reader.ReadToEnd();

    response.Close();


}

标签: c#apiwebforms

解决方案


如果证书不受证书颁发机构的信任(由于请求,我不这么认为,但听起来更像是测试证书),您应将其安装在您的系统上,并受 MMC 控制台信任,添加“证书”快照/in,选择你的本地电脑作为目的地。然后,在 snap in 中会出现一个证书文件夹列表,找到“受信任的根证书”并导入证书(如果你没有,我想你可以用浏览器访问链接https:/下载它。 /10.207.255.45:7070)。一旦它安装在那里,这可以解决你的问题


推荐阅读