2010-06-19 4 views
6

Je suis en train de faire une construction [1] distante/automatisée de mes projets xcode [2] et pour signer mes applications, j'ajoute cette ligne avant la construction.Déverrouiller le trousseau OSX sans mot de passe?

security unlock-keychain -p keychainpassword 

Cela fonctionne bien, et déverrouille le système porte-clés où les certifcates sont stockés, mais il expose le mot de passe pour l'utilisateur que l'agent de construction est en cours d'exécution dans l'interface équipe-ville pour tous.

Le processus de construction s'exécute en tant qu'utilisateur connecté, et est autonome ... est-il possible de déverrouiller le système/le trousseau par défaut sans fournir le mot de passe?

Je viens de penser, et si je déplacais les certificats dans le trousseau de connexion (au lieu du système), devrais-je encore le déverrouiller avec un mot de passe?

Est-ce possible? Ou devrais-je configurer un utilisateur qui ne peut pas faire de dégâts et juste construire et ne rien faire d'autre et exposer le mot de passe de cet utilisateur ..

[1] Utiliser Teamcity, mais pas pertinent.

[2] Projets IPhone, mais encore une fois sans importance.

+1

Si c'est vraiment important pour vous, vous pouvez écrire une petite application qui déverrouille le trousseau et lit le mot de passe d'un fichier qui est en lecture seule pour l'utilisateur et pas d'accès pour tous les autres. De cette façon, le mot de passe n'est pas exposé dans la liste des processus. –

Répondre

2

Vous devriez être capable de construire avec un utilisateur régulier (non administrateur), et de rendre cet utilisateur sans mot de passe. Ensuite, vous pouvez vous connecter automatiquement en tant que cet utilisateur sur votre système de construction. Une autre alternative est de stocker le mot de passe dans une variable d'environnement, mais cela cache à peine le mot de passe.

Si vous avez un utilisateur ordinaire sans mot de passe et que vous ajoutez les certificats au trousseau de connexion, vous devriez être capable de créer à distance/automatiquement/sans surveillance, sans problème, y compris la signature de code.

0

security unlock-keychain demande le mot de passe.

Questions connexes