J'ai vérifié le code source sur ma machine Linux. Je me connecte via Samba . Sur une machine Linux, la variable SVNROOT
est définie sur <mylogin> @ <hôtehôte>. De plus, SVN_SSH
est configuré pour pointer vers ma clé privée que l'administrateur système a générée pour moi. Sous Linux, je ne suis JAMAIS invité à entrer le mot de passe. L'administrateur système affirme que la clé privée s'en occupe.
Sur le répertoire same auquel j'accède via Samba, j'exécute TortoiseSVN. Cependant, cela me demande constamment d'entrer un mot de passe pour <mylogin>. Mon administrateur système dit que je n'ai pas de mot de passe, juste la clé privée.
Que dois-je faire avec TortoiseSVN pour qu'il ne me demande pas le mot de passe?
Tortoise SVN Faites un clic droit sur le bureau -> Tortoise SVN-> paramètres -> données enregistrées -> données d'authentification (appuyez sur la touche 'effacer')! Essayez de vous connecter à nouveau maintenant!
En sélectionnant "Paramètres" dans le menu TortoiseSVN, puis en cliquant sur la section "Réseau", vous pouvez configurer la ligne de commande "Client SSH". Si vous ajoutez "-i" suivi du chemin de votre clé privée, l’authentification fonctionnera comme sur Linux.
Le client SSH par défaut est un programme appelé "TortoisePlink", qui utilise un format de fichier de clé différent de celui du client OpenSSH utilisé sous Linux. Vous pouvez convertir la clé fournie par votre administrateur système dans ce format à l'aide de l'outil puttygen disponible ici http://www.chiark.greenend.org.uk/~sgtatham/PuTTY/download.html
Vous pouvez également utiliser un client OpenSSH avec TortoiseSVN. Le fichier ssh.exe fourni avec cygwin fonctionne bien, par exemple.
Si vous n'avez pas de mot de passe, mais une clé (.ppk):
Téléchargez PuTTY et lancez-le. Les clés intéressantes sont:
Enregistrez maintenant votre configuration - revenez à Session et entrez, par exemple, MyServer
dans le champ de texte Saved sessions, puis cliquez sur Save. Après ce cauchemar UX, vous pouvez rouvrir PuTTY, double-cliquez sur votre liste de sessions MyServer
et connectez-vous sans rien fournir.
La chaîne de connexion TortoiseSVN devrait ressembler à svn+ssh://MyServer/path/to/repo
. TortueSVN dans les paramètres PuTTY vérifie la longueur de la chaîne MyServer
.
Si vous n'avez pas de clé mais un mot de passe:
Allez dans TortoiseSVN - Paramètres - Réseau - Client SSH, et configurez-le comme suit:
"C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe" -l <username> -pw <password>
Votre chaîne de connexion devrait ressembler à ceci: svn+ssh://serverhostname/path/to/repo
, sans username@
.
Ceci est peu sûr et tout, pour ceux qui ne donnent pas un f-ck et le veulent maintenant.
Si vous utilisez une clé pour vous connecter via SSH et que cette clé est protégée par un mot de passe, ce n'est pas SVN qui vous demande votre mot de passe, c'est SSH (ou Plink).
SVN passera plusieurs appels, chacun établissant sa propre connexion, et SVN ne sait rien de l'exigence de SSH en matière de mot de passe. Il ne peut donc pas mettre le mot de passe en cache.
Vous pouvez éviter cela en utilisant un agent de clé SSH. Par exemple, si vous utilisez PuTTY, utilisez Pageant, Pageant.
J'écris ce qui peut se passer depuis que j'ai eu une situation similaire.
Il semble que PuTTY utilisera une configuration correspondant au domaine de l'hôte svn auquel vous essayez de vous connecter à partir de Tortoise SVN s'il existe .
Donc, si votre hôte svn se trouve sur myServer.de et que vous avez une configuration dans PuTTY nommée myServer.de qui ne correspond pas aux critères de connexion de votre serveur SVN et que vous essayez ensuite d'accéder à Tortoise SVN à svn + ssh: //[email protected]/blablabla PuTTY (utilisé par défaut pour établir la connexion SSH au serveur) utilisera la configuration myServer.de à la place de celle fourni par Tortoise SVN.
Ça m'est arrivé et ça me rendait dingue! Dans mon cas, il demandait le mot de passe car la clé fournie dans la configuration de PuTTY était obsolète !!!
J'espère que ça aide.
Cordialement!
Cela se produit lorsque vous vous connectez à svn + ssh à l'aide d'une clé (clé privée) contenant une phrase secrète. Dans ce cas, Tortoise svn utilisera ssh (comme mien est PuTTY) et vous demandera un mot de passe.
Pour lui permettre de ne pas vous demander la phrase secrète vous devez utiliser Pageant, une fois que vous aurez ajouté la clé à Pageant, la phrase sera conservée et ne vous en demandera pas plus ...
Pour savoir comment ajouter une clé, lisez ce qui suit: