Le 17 juil. 2013 00:13, "Andy Bradford" <amb-fos...@bradfords.org> a écrit :
>
> Hello,
>
> After giving a  little though to handling shared SSH  accounts, it might
> be as simple as the following change:
>
> https://www.fossil-scm.org/index.html/info/7a10b79a2c
>
> Basically, if the specified SSH command  already has an '@' in it, don't
> use the username@host found in the URL, but use the username@ to provide
> Fossil authentication token once the SSH connection is established:
>
> local$ fossil clone -c 'ssh -e none -T guest@remote' 
> ssh://amb@remote//tmp/test.fossil
/tmp/test.fossil
> password for amb:
> remember password (Y/n)? y
> Round-trips: 1   Artifacts sent: 0  received: 0
> ssh -e none -T guest@remote fossil http /tmp/test.fossil
> guest@remote's password:
> Round-trips: 2   Artifacts sent: 0  received: 1
> ssh -e none -T guest@remote fossil http /tmp/test.fossil
> guest@remote's password:
> Round-trips: 2   Artifacts sent: 0  received: 3
> Clone finished with 547 bytes sent, 1158 bytes received
> Rebuilding repository meta-data...
>   100.0% complete...
> project-id: 125ab947e5a9aff39560a0d60dddccac37f575fa
> admin-user: amb (password is "85cf0e")
>
>
> Then, after opening and making a change:
>
> local$ fossil commit -m test
> Autosync:  ssh://amb:*@remote//tmp/test.fossil
> Round-trips: 1   Artifacts sent: 0  received: 0
> ssh -e none -T guest@remote fossil http /tmp/test.fossil
> guest@remote's password:
> Round-trips: 1   Artifacts sent: 0  received: 0
> Pull finished with 349 bytes sent, 286 bytes received
> New_Version: 6d982f5dfbfcf4d283bbb073fc04dfd7c50f5b32
> Autosync:  ssh://amb:*@remote//tmp/test.fossil
> Round-trips: 1   Artifacts sent: 2  received: 0
> ssh -e none -T guest@remote fossil http /tmp/test.fossil
> guest@remote's password:
> Round-trips: 1   Artifacts sent: 2  received: 0
> Sync finished with 542 bytes sent, 338 bytes received
>
>
> The  info stored  with the  commit  on the  remote host  shows that  the
> changes were made by amb (not guest) coming from the local host's IP.
>
> So, it uses the SSH  connection established by the guest@remote account,
> but still relies on the fossil credentials to be able to control commit.
> Of  course this  probably  really  only makes  sense  when using  forced
> command SSH keys, but  it does seem like a pretty direct  way to be able
> to support a shared SSH account configuration.
>
> Thoughts?
>

I propose to add a kind of -l|--login option to the clone command, so when
the username@ is present but don't match the repo username, we could
specify repo username with -l.

E.g.:
   fossil clone -l <repo-username> ssh://<host-username>@<host>/repo.fsl
repo.fsl

Shorter and more simple than the -c option.

-- 
Martin G.
_______________________________________________
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users

Reply via email to