J'utilise la commande suivante pour récupérer un mot de passe à partir du trousseau dans un script shell: security find-generic-password -w -s "MyServiceName"
Cela fonctionne, mais il affiche une fenêtre contextuelle me demandant le mot de passe du trousseau de connexion:
security
souhaite utiliser vos informations confidentielles stockées dans "MyServiceName" dans votre trousseau. Pour ce faire, saisissez le mot de passe du trousseau "login".Avec les options
Deny
,Allow
ouAlways Allow
Mais je ne veux pas entrer mon mot de passe de trousseau à chaque fois, donc je ne peux pas utiliser "Autoriser" et je préfère ne pas "Toujours autoriser" afin de maintenir un certain niveau de sécurité ici.
Idéalement, j'aimerais plutôt recevoir une invite Touch ID. Est-ce qu'il y a un moyen de faire ça ?
Réponses:
En enquêtant sur cela, je n'ai trouvé aucune méthode permettant à la
security
commande d'utiliser Touch ID. Cet article intitulé: Comment utiliser Touch ID pour authentifier sudo sur Mac OS , mentionné dans un commentaire concernantsudo
puis utiliser le Touch ID, ne fonctionnera pas ici car cela utilise l'ajout de cette ligne:au
sudo
fichier PAM de/etc/pam.d/sudo
. Il n'y a rien d'équivalent à lasecurity
commande car elle n'utilise passudo
.Par conséquent, il vous reste à utiliser l'une des 2 méthodes mentionnées dans la boîte de dialogue lors de l'exécution de la
security
commande:Si vous choisissez "Toujours autoriser", cela autorisera l'accès indéfiniment uniquement à la
security
commande. Si vous choisissez «Autoriser», il n'accordera l'security
accès qu'une seule fois au trousseau.Exemple
Ici, j'ai créé un élément de mot de passe d'application dans le trousseau appelé TestPassword.
Nous pouvons voir que rien n'y a été donné en regardant l'onglet ACL de cette boîte de dialogue.
Si j'exécute cette
security
commande:Et de façon permanente "Toujours autoriser", je recevrai le mot de passe pour cet article du trousseau:
Mais plus important encore, je vais ajouter
security
à l'ACL pour cet élément dans le trousseau.la source