El equivalente en MacOS es el nombre del llavero.
En Windows tiene, por ejemplo, el "almacén de certificados del usuario actual". El correspondiente en MacOS sería el llavero de inicio de sesión del usuario: ~/Library/Keychains/login.keychain-db
. Hay uno para cada usuario en el sistema, y almacena los certificados relevantes para ese usuario solamente.
En Windows tienes el "Local Machine Certificate Store" que contiene los certificados añadidos por los usuarios a los que pueden acceder todos los usuarios del ordenador local. Lo correspondiente en MacOS sería el llavero del sistema: /Library/Keychains/System.keychain
En Windows tienes el "Trusted Root Certification Authorities Certificate Store" que contiene los certificados CA de confianza del sistema operativo en general. Lo correspondiente en MacOS es el llavero de certificados root del sistema: /System/Library/Keychains/SystemRootCertificates.keychain
Puede enumerar los certificados de cada uno de esos llaveros utilizando la función security
de mando. Por ejemplo, para obtener una lista general:
security find-certificate -a ~/Library/Keychains/login.keychain-db
security find-certificate -a /Library/Keychains/System.keychain
security find-certificate -a /System/Library/Keychains/SystemRootCertificates.keychain
o para exportar los certificados reales en formato PEM:
security find-certificate -a -p ~/Library/Keychains/login.keychain-db
security find-certificate -a -p /Library/Keychains/System.keychain
security find-certificate -a -p /System/Library/Keychains/SystemRootCertificates.keychain
La excepción a la regla anterior es lo que se conoce como "Trusted Publishers Certificate Store" en Windows - esto no se almacena en un llavero en MacOS, sino en una base de datos de reglas de evaluación del sistema. El nombre de la misma es: /var/db/SystemPolicy
Puedes crear una lista de ellos con el siguiente comando:
sudo spctl --list --type execute
La salida es una lista de reglas de evaluación, que además de algunas reglas genéricas, específicas de Apple, es básicamente una lista de los hashes de los certificados de los editores de confianza.
La información del certificado real no puede ser exportada desde la base de datos SystemPolicy, ya que no está contenida allí. Sin embargo, puede acceder a esos datos recorriendo las aplicaciones instaladas (por ejemplo, en /Applications
) y corriendo:
codesign -d -r- -vvvv /Applications/AnApp.app
Esto le permite reunir información como el nombre del editor, la unidad organizativa del sujeto, el nombre de la CA (Apple Root CA) y las marcas de tiempo.