9
votes

Erreur de produits: Signdata a échoué: CSSMERR_CSP_NO_USER_Interaction

Lors de la signature d'une application d'une session de terminal SSH, je reçois l'erreur suivante:

productsign[29321:707] SignData failed: CSSMERR_CSP_NO_USER_INTERACTION (-2147415840)


0 commentaires

4 Réponses :


6
votes

Je l'ai résolu par accident - après avoir peigné le Web pendant des heures - tout en reproduisant les étapes lors du dépôt d'un rapport d'incident avec support Apple.

du Mac (par opposition à une session SSH), la même commande a généré une pop up demandant la permission d'accéder au porte-clés.

Après avoir choisi "Autoriser toujours" le problème est parti. Pour toujours.


2 commentaires

Cela pourrait être un problème si vous essayez de signer un package et que vous accédez à la machine Mac via SSH.


@ bikram990 -Precyely! C'est ce qui a causé le problème - et est la solution.



3
votes

Essayez de déverrouiller Keychain à partir de ce terminal:

security -v unlock-keychain -p "<Password>" "/Users/<UserName>/Library/Keychains/login.keychain"


0 commentaires

2
votes

Basé sur Réponse de Danny Schoemann et mes propres recherches J'ai trouvé une solution complète pour moi:

  1. Vous avez vraiment besoin de vous connecter à votre machine Mac en utilisant GUI forte>, première fois forte> et signent quoi que ce soit avec le certificat dont vous avez besoin. Ensuite, vous obtiendrez une fenêtre de demande avec une option disponible "toujours permettre" forte> d'utiliser ce certificat (ou un smth de tel). P>

    • Important: Si vous avez besoin d'utiliser des produits avec SSH STRAND> ou d'une autre session de console (comme Jenkins Strong>), votre certificat doit être installé dans System STRY> Portée, mais pas strong> dans la portée de l'utilisateur. Entrez la description de l'image ici Entrez la description de l'image ici li> ul> li>
    • Si vous avez besoin de conserver votre certificat dans la portée de l'utilisateur, vous devez déverrouiller votre clé de clavier à chaque fois dans la session de console lorsque vous devez signer quelque chose (comme Alex a écrit): p>

      security -v unlock-keychain -p "Password" /Users/<UserName>/Library/Keychains/login.keychain"
      


1 commentaires

J'ai aussi dû ajouter le paramètre - keychain à Produitsign , sinon il essaierait d'ouvrir le keychain de connexion et de l'échec avec cssmerr_csp_no_user_interaction .



1
votes

Vous pouvez réellement corriger cette erreur. Lorsque vous êtes dans Productsign, vous utilisez le certificat d'installateur d'identifiant de développeur et suggère généralement qu'il n'a pas accès à une clé privée pour la signature où elle échoue avec cette erreur.

Pour réparer ce goto

  1. Keychain Access-> Cliquez sur la petite flèche Triangle (>) devant le certificat "Developer ID Installer" sous Knowchain ou votre clé de clavier appropriée.
  2. Double-cliquez sur la clé privée
  3. Cliquez sur l'onglet "Contrôle d'accès"
  4. Sélectionnez "Autoriser toutes les applications d'accéder à cet élément"

    Maintenant, essayez à nouveau Pro Productions de la ligne de commande, cela devrait fonctionner.


1 commentaires

Merci - va essayer cela ensuite.