Thunderbird自動構成の使用を開始したばかりで、メールクライアントを起動するすべてのユーザーの会社標準のimap、smtp、およびldapアカウントを自動的に作成するのに非常に便利です。 。
ただし、会社のLDAPサーバー(実際にはWindowsドメインコントローラー)は、会社の認証局によって発行された証明書を使用します。これはもちろんThunderbirdによって信頼されていません。 。結果として、LDAPリモートアドレス帳は、CA証明書が手動でインポートされ、信頼されるまで同期されません。
親愛なる_Thunderbird.cfg
_を使用して、CAルートをインポートして信頼できますか?
私たちはすでに次のことを試しました 2つの解決策 、そして彼らは明らかに何もしませんでした:おそらくそれらはFirefox専用であるか、私たちの側で正しく構成されていません。
windowsオペレーティングシステムによって信頼されているcaルートを信頼しようとしています。
_pref("security.enterprise_roots.enabled, true");
_
cAルート証明書をインポートして信頼しようとしています:
_var Cc = Components.classes;
var Ci = Components.interfaces;
var certdb = Cc["@mozilla.org/security/x509certdb;1"].getService(Ci.nsIX509CertDB);
var certdb2 = certdb;
try {
certdb2 = Cc["@mozilla.org/security/x509certdb;1"].getService(Ci.nsIX509CertDB2);
} catch (e) {}
// This should be the certificate content with no line breaks at all.
cert = "MII ... ==";
certdb.addCertFromBase64(cert, "C,C,C");
_
更新、および解決策。
メソッド_1.
_を理解できませんでしたが、最終的にメソッド_2.
_で成功しました。間違いは、私の明らかな文の誤解でした。
3番目のパラメーターはAPIから削除されているため、含めないでください
_addCertFromBase64
_には2つのパラメーターしか必要ないと思いましたが、空白の文字列であっても、3番目のパラメーターが必要です。コマンドをcertdb.addCertFromBase64(cert, "C,C,C","");
に編集しても機能しました。
メソッドについては2.
、パラメータがありません。次のコードが機能します(最後の行を参照)。
var Cc = Components.classes;
var Ci = Components.interfaces;
var certdb = Cc["@mozilla.org/security/x509certdb;1"].getService(Ci.nsIX509CertDB);
var certdb2 = certdb;
try {
certdb2 = Cc["@mozilla.org/security/x509certdb;1"].getService(Ci.nsIX509CertDB2);
} catch (e) {}
// This should be the certificate content with no line breaks at all.
cert = "MII ... ==";
certdb.addCertFromBase64(cert, "C,C,C","");