2 votos

¿Utilizar la seguridad para obtener una lista de Claves en el Llavero basada en el tipo?

Estoy utilizando con éxito security para obtener claves de mi Llavero a través de su etiqueta, por ejemplo:

security find-generic-password -l "PDF Encryption"

Sin embargo, estoy tratando de construir una interfaz de usuario que me ofrece una selección de claves para descifrar. Específicamente, sólo me interesan las claves que AGREGUE MANUALMENTE a través del Acceso a Llaveros. Estas muestran el Tipo Application Password cuando se ven en Keychain Access:

enter image description here

Desgraciadamente, no consigo dar con ningún comando/filtro/búsqueda para obtener esta lista. Cuando yo específicamente llamar a uno a través de la etiqueta, o el uso de volcado de llavero, veo los siguientes datos para cada tecla:

keychain: "/Users/jay/Library/Keychains/vault.keychain-db"
version: 512
class: "genp"
attributes:
    0x00000007 <blob>="PDF Encryption"
    0x00000008 <blob>=<NULL>
    "acct"<blob>="PDF Encryption"
    "cdat"<timedate>=0x32303137313030323032333433385A00  "20171002023438Z\000"
    "crtr"<uint32>=<NULL>
    "cusi"<sint32>=<NULL>
    "desc"<blob>=<NULL>
    "gena"<blob>=<NULL>
    "icmt"<blob>=<NULL>
    "invi"<sint32>=<NULL>
    "mdat"<timedate>=0x32303137313030323032333433385A00  "20171002023438Z\000"
    "nega"<sint32>=<NULL>
    "prot"<blob>=<NULL>
    "scrp"<sint32>=<NULL>
    "svce"<blob>="PDF Encryption"
    "type"<uint32>=<NULL>

Lamentablemente, parece que todos los datos, excepto los de cuenta y servicio, son NULL. Pero, no parece que pueda buscar a través de NULL.

¿Hay alguna forma directa de obtener una lista de estas claves?

0 votos

Perdón por la pregunta, pero ¿con qué frecuencia lo hace por lo que necesita una interfaz de usuario para ello

0 votos

Vista Previa no utiliza de forma nativa el llavero para abrir PDFs, y nunca lo hará para crearlos, y los Macs sin Touch ID no pueden almacenar su contraseña de Notas de iCloud en el llavero, así que probablemente una media de más de 10 veces al día sólo para esas dos apps.

2voto

Chris Puntos 721

Parece que la respuesta aquí es lo más parecido que puedo conseguir, que es usar dump-keychain y filtrar por 0x00000007:

security dump-keychain | awk -F= '/0x00000007/ {print $2}'

Incluye más que sólo contraseñas de aplicaciones, pero es definitivamente un subconjunto más viable, y puedo filtrar una lista negra con grep -v .

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X