如何以编程方式以pem格式从OSX上的所有钥匙串(keychain)中提取所有根CA证书?

钥匙串(keychain)编程服务应该允许这样做,但是怎么做呢?

任何帮助将是可观的。

最佳答案

security find-certificate -a -p /System/Library/Keychains/SystemRootCertificates.keychain >certs-roots.pem
security find-certificate -a -p /Library/Keychains/System.keychain >certs-system.pem
security find-certificate -a -p ~/Library/Keychains/login.keychain-db >certs-user.pem

顺便说一句:将鼠标悬停在“钥匙串(keychain)”列表(顶部/左侧)上时,您可以在“钥匙串(keychain)访问”中看到这些路径。

您可以通过使用默认证书来源来组合系统和用户pems
security find-certificate -a -p >certs.pem

当您想在典型的公司内部资料上使用require('https')。request而不必诉诸于接受未经检查的证书之类的黑客攻击时,这对于node.js super 有用。您不需要包括系统根目录,因为nodejs已经涵盖了这些根目录。
NODE_EXTRA_CA_CERTS=certs.pem node

关于macos - OSX : Export system certificates from keychain in PEM format programmatically,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32472337/

10-13 05:31