【发布时间】:2021-02-24 08:29:43
【问题描述】:
对于从 Xcode 创建的命令行应用程序,我遇到了一个奇怪的问题。我正在运行一个脚本以使用以下命令获取 Mac 中钥匙串访问中可用的证书之一的到期日期
security find-certificate -c "CertificateNameHere" -p | openssl x509 -text | grep "Not After"
当我通过 Xcode 在本地运行它时,我能够获取日期。但是,当我从 Library 文件夹之一将应用程序作为服务运行时,不会获取到期日期。相反,我得到了一个错误
PEM routines:CRYPTO_internal:no start line:/AppleInternal/BuildRoot/Library/Caches/com.apple.xbs/Sources/libressl/libressl-47.140.1/libressl-2.8/crypto/pem/pem_lib.c:684:Expecting: TRUSTED CERTIFICATE
虽然证书是可信的
我尝试了很多解决方案,例如尝试找到合适的解决方案来获取钥匙串中可用证书的到期日期,但没有运气。所以我将它发布在stackoverflow中。我尝试了另一种使用 Mac Xcode 安全框架使用 swift 获取日期的解决方案,但问题仍然存在。
【问题讨论】:
标签: macos shell terminal command-line-interface keychain