23 votes

Remplacer l'invite de mot de passe par Touch ID pour lire le mot de passe du trousseau.

J'utilise la commande suivante pour récupérer un mot de passe du trousseau dans un script shell : security find-generic-password -w -s "MyServiceName"

Cela fonctionne, mais il y a une fenêtre popup qui me demande le mot de passe du trousseau de connexion :

security veut utiliser vos informations confidentielles stockées dans "MyServiceName" dans votre trousseau de clés. Pour l'autoriser, saisissez la mot de passe du trousseau.

Avec les options suivantes Deny , Allow o Always Allow

Mais je ne veux pas entrer le mot de passe de mon trousseau à chaque fois, donc je ne peux pas utiliser "Autoriser" et je préfère ne pas utiliser "Toujours autoriser" afin de conserver un certain niveau de sécurité.

Idéalement, j'aimerais avoir une invite Touch ID à la place. Existe-t-il un moyen de le faire ?

7voto

slm Points 4018

En enquêtant sur ce point, je n'ai pas trouvé de méthode qui permette à l'utilisateur d'accéder à l'information. security pour utiliser Touch ID. Cet article intitulé : Comment utiliser Touch ID pour authentifier sudo sur Mac OS mentionné dans un commentaire concernant sudo et ensuite l'utilisation de Touch ID, ne fonctionnera pas ici puisque cela fait appel à l'ajout de cette ligne :

auth sufficient pam_tid.so

à sudo Le fichier PAM de l'utilisateur, /etc/pam.d/sudo . Il n'y a rien d'équivalent à la security puisqu'elle ne fait pas appel à la commande sudo .

Il ne vous reste donc plus qu'à utiliser l'une des deux méthodes mentionnées dans la boîte de dialogue lors de l'exécution de l'opération. security commandement :

  • Toujours permettre
  • Autoriser

ss1

Si vous choisissez "Always Allow" (Toujours autoriser), l'accès sera accordé indéfiniment uniquement à l'adresse security commande. Si vous choisissez "Autoriser", cela permettra security accéder une seule fois au trousseau de clés.

Exemple

Ici, j'ai créé un élément de mot de passe d'application dans le trousseau appelé TestPassword.

ss2

Nous pouvons voir que rien n'a été autorisé à y accéder en regardant l'onglet ACL de ce dialogue.

ss3

Si je lance cette security commandement :

$ security find-generic-password -w -s "TestPassword"

Et en permanence "Toujours autoriser", je recevrai le mot de passe pour cet élément du trousseau :

TestPassword123

Mais plus important encore, j'ajouterai security à l'ACL de cet élément dans le trousseau.

ss4

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X