3 votes

Comment récupérer un mot de passe AirPort/Wi-Fi à l'aide de /usr/bin/security

J'ai essayé d'utiliser /usr/bin/security plutôt que de coder en dur les informations de login/mot de passe dans les scripts. Par exemple, voici comment obtenir le mot de passe pour 'pinboard.in'

security 2>&1 >/dev/null find-internet-password -gs pinboard.in |\
grep '^password: ' |\
sed 's#^password: "##g ; s#"$##'

(Note : quelqu'un de plus doué en grep/awk peut probablement combiner ces deux dernières lignes, mais veillez à tenir compte du fait qu'un mot de passe peut contenir un " - ou un espace).

Ce que je ne peut est de trouver comment récupérer le mot de passe d'un réseau Wi-Fi si tout ce que je connais est le SSID.

J'ai même essayé de spécifier le type de données que je recherche à l'aide de la commande -D :

security 2>&1 >/dev/null find-generic-password -D "AirPort network password" -s MySSIDhere

mais tout ce que j'obtiens, c'est ceci

security: SecKeychainSearchCopyNext: The specified item could not be found in the keychain.

Tout ce que j'ai trouvé sur Google concerne ajoutant informations sur le mot de passe SSID sur le CLI, mais je veux récupérer il.

4voto

Banjer Points 3754

J'ai obtenu mon mot de passe avec

security find-generic-password -D "AirPort network password" -a YourSSIDhere -g

La principale différence est la suivante -a SSID . J'ai découvert dans quel champ il était stocké en laissant la sécurité se décharger :

security dump-keychain

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