我收到錯誤"InvalidBasicConstraints: A certificate's basic constraint extension has not been observed."
此證書與OpenSSL一起發佈,並將用作WCF服務的服務器端測試證書(在驗證證書時會出現相同的錯誤證書)。我可以用這段代碼複製錯誤。InvalidBasicConstraints:未觀察到證書的基本約束擴展
X509Certificate2 cert = new X509Certificate2(@"c:\test.cer");
X509Chain chain = X509Chain.Create();
X509ChainPolicy policy = new X509ChainPolicy();
policy.RevocationMode = X509RevocationMode.NoCheck;
chain.ChainPolicy = policy;
bool valid = chain.Build(cert);
Console.WriteLine(string.Join(" -- ", chain.ChainStatus.Select(o => o.Status + ": " + o.StatusInformation)));
Console.WriteLine(valid ? "VALID" : "NOT VALID");
查看證書我可以看到這些基本約束,
Subject Type=End Entity
Path Length Constraint=None
這個錯誤是什麼意思,我該如何解決?
我在基本約束條件下找到的最相關的文章是這一個,http://unitstep.net/blog/2009/03/16/using-the-basic-constraints-extension-in-x509-v3-certificates-for-intermediate-cas/但是它只談論禁止孩子證書籤署/創建更多的兒童證書,在我的情況下,我不想做。
另外任何解釋上述基本約束條件意味着什麼的參考都會有幫助。
你的觀察對我也有意義。謝謝! – 2016-08-16 12:32:40