<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/gitlab/gitlab-shell.git/bin/gitlab-shell, branch gitlab-shell-no-glid-argument</title>
<subtitle>gitlab.com: gitlab-org/gitlab-shell.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-shell.git/'/>
<entry>
<title>Remove mistaken support for `gitlab-shell user-123`</title>
<updated>2018-09-28T08:50:43+00:00</updated>
<author>
<name>Jacob Vosmaer</name>
<email>jacob@gitlab.com</email>
</author>
<published>2018-09-28T08:50:43+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-shell.git/commit/?id=05441b826b7dc39b1523123e00bf00ce497ef75d'/>
<id>05441b826b7dc39b1523123e00bf00ce497ef75d</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Harden gitlab-shell against arguments following the gl_id parameter in the command line</title>
<updated>2018-08-09T17:43:36+00:00</updated>
<author>
<name>Nick Thomas</name>
<email>nick@gitlab.com</email>
</author>
<published>2018-08-09T17:26:55+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-shell.git/commit/?id=6e907f26475f16ad7d3e02aa64138e0fe35bb6b9'/>
<id>6e907f26475f16ad7d3e02aa64138e0fe35bb6b9</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix two regressions in SSH certificate support</title>
<updated>2018-08-08T19:07:50+00:00</updated>
<author>
<name>Ævar Arnfjörð Bjarmason</name>
<email>avarab@gmail.com</email>
</author>
<published>2018-08-08T09:39:04+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-shell.git/commit/?id=c4b5a076040a6f6156c26f66cdc47610fc267db2'/>
<id>c4b5a076040a6f6156c26f66cdc47610fc267db2</id>
<content type='text'>
Fix two regressions in my 2e8b670 ("Add support for SSH certificate
authentication", 2018-06-14) merged in gitlab-org/gitlab-shell!207.

This fixes the issue noted in gitlab-org/gitlab-shell#145 where the
command-line contains things other than the key/user/username, and
also a regression where SSH certificates are being used, and the
username presented in the key is unknown to GitLab.

In that case, we should log the user in as "Anonymous" (on an instance
that allows public access), but because of how the error checking
around api.discover() was implemented we ended up erroring out
instead.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix two regressions in my 2e8b670 ("Add support for SSH certificate
authentication", 2018-06-14) merged in gitlab-org/gitlab-shell!207.

This fixes the issue noted in gitlab-org/gitlab-shell#145 where the
command-line contains things other than the key/user/username, and
also a regression where SSH certificates are being used, and the
username presented in the key is unknown to GitLab.

In that case, we should log the user in as "Anonymous" (on an instance
that allows public access), but because of how the error checking
around api.discover() was implemented we ended up erroring out
instead.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add support for SSH certificate authentication</title>
<updated>2018-07-26T10:35:55+00:00</updated>
<author>
<name>Ævar Arnfjörð Bjarmason</name>
<email>avarab@gmail.com</email>
</author>
<published>2018-06-14T13:54:38+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-shell.git/commit/?id=2e8b67027067761034f36dadb3c2208ce66d2552'/>
<id>2e8b67027067761034f36dadb3c2208ce66d2552</id>
<content type='text'>
This along with the code submitted to gitlab-ce in the
gitlab-org/gitlab-ce! MR implements SSH certificate
authentication. See the docs added to gitlab-ce for why and how to
enable this. This, along with that MR, closes
gitlab-org/gitlab-ce#3457

Implementation notes:

 - Because it's easy to do, and because an earlier nascent version of
   this would pass user-ID to gitlab-shell, that's now supported, even
   though the SSH certificate authentication uses username-USERNAME.

 - The astute reader will notice that not all the API calls in
   gitlab-ce's lib/api/internal.rb support a "username" argument, some
   only support "user_id".

   There's a few reasons for this:

     a) For this to be efficient, I am bending over backwards to avoid
        extra API calls when using SSH certificates.

        Therefore the /allowed API call will now return a "user id" to
        us if we're allowed to proceed further. This is then fed to
        existing APIs that would only be called after a successful
        call to /allowed.

     b) Not all of the git-shell codepaths go through
        /internal/allowed, or ever deal with a repository, e.g. the
        argument-less "Welcome to GitLab", and
        /internal/2fa_recovery_codes. These need to use
        /internal/discover to figure out details about the user, so
        support looking that up by username.

     c) Once we have the "user id", the GL_ID gets passed down to
        e.g. user-authored hooks. I don't want to have those all break
        by having to handle a third GL_ID mode of "username" in
        addition to the current "key id" and "user id".
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This along with the code submitted to gitlab-ce in the
gitlab-org/gitlab-ce! MR implements SSH certificate
authentication. See the docs added to gitlab-ce for why and how to
enable this. This, along with that MR, closes
gitlab-org/gitlab-ce#3457

Implementation notes:

 - Because it's easy to do, and because an earlier nascent version of
   this would pass user-ID to gitlab-shell, that's now supported, even
   though the SSH certificate authentication uses username-USERNAME.

 - The astute reader will notice that not all the API calls in
   gitlab-ce's lib/api/internal.rb support a "username" argument, some
   only support "user_id".

   There's a few reasons for this:

     a) For this to be efficient, I am bending over backwards to avoid
        extra API calls when using SSH certificates.

        Therefore the /allowed API call will now return a "user id" to
        us if we're allowed to proceed further. This is then fed to
        existing APIs that would only be called after a successful
        call to /allowed.

     b) Not all of the git-shell codepaths go through
        /internal/allowed, or ever deal with a repository, e.g. the
        argument-less "Welcome to GitLab", and
        /internal/2fa_recovery_codes. These need to use
        /internal/discover to figure out details about the user, so
        support looking that up by username.

     c) Once we have the "user id", the GL_ID gets passed down to
        e.g. user-authored hooks. I don't want to have those all break
        by having to handle a third GL_ID mode of "username" in
        addition to the current "key id" and "user id".
</pre>
</div>
</content>
</entry>
<entry>
<title>Revert "Merge branch 'sh-disable-rubygems' into 'master'"</title>
<updated>2017-07-05T15:13:10+00:00</updated>
<author>
<name>Stan Hu</name>
<email>stanhu@gmail.com</email>
</author>
<published>2017-07-05T15:13:10+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-shell.git/commit/?id=0b502be3314c0fb620e39d2f8f69f49d41d81cb2'/>
<id>0b502be3314c0fb620e39d2f8f69f49d41d81cb2</id>
<content type='text'>
This reverts commit a18c90128e4d3eeae1233b1bc3c3998afd223c0d, reversing
changes made to 0a64624152735766c428d1532e434dd0bf5a9748.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This reverts commit a18c90128e4d3eeae1233b1bc3c3998afd223c0d, reversing
changes made to 0a64624152735766c428d1532e434dd0bf5a9748.
</pre>
</div>
</content>
</entry>
<entry>
<title>Disable RubyGems to increase performance</title>
<updated>2017-07-03T22:55:08+00:00</updated>
<author>
<name>Stan Hu</name>
<email>stanhu@gmail.com</email>
</author>
<published>2017-07-03T22:55:08+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-shell.git/commit/?id=0944ebab55c536dce1f0a5decba251e1414e3de0'/>
<id>0944ebab55c536dce1f0a5decba251e1414e3de0</id>
<content type='text'>
By default, RubyGems is enabled, which causes the Ruby interpreter
to load 600+ additional files at startup when gitlab-shell is
designed not to use any external gems.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
By default, RubyGems is enabled, which causes the Ruby interpreter
to load 600+ additional files at startup when gitlab-shell is
designed not to use any external gems.
</pre>
</div>
</content>
</entry>
<entry>
<title>More ENV.delete</title>
<updated>2016-07-20T12:41:10+00:00</updated>
<author>
<name>Jacob Vosmaer</name>
<email>jacob@gitlab.com</email>
</author>
<published>2016-07-20T12:41:10+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-shell.git/commit/?id=bc815c5b48a78dfa9117c4b2d85472645364afb3'/>
<id>bc815c5b48a78dfa9117c4b2d85472645364afb3</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Limit availability of SSH_ORIGINAL_COMMAND</title>
<updated>2015-11-25T16:53:31+00:00</updated>
<author>
<name>Jacob Vosmaer</name>
<email>contact@jacobvosmaer.nl</email>
</author>
<published>2015-11-25T16:53:31+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-shell.git/commit/?id=712daa411a2ab3d0add9d9e4a5b36ca81b53f674'/>
<id>712daa411a2ab3d0add9d9e4a5b36ca81b53f674</id>
<content type='text'>
Hoping this makes it more obvious when code touches the very
unsafe contents of this variable.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Hoping this makes it more obvious when code touches the very
unsafe contents of this variable.
</pre>
</div>
</content>
</entry>
<entry>
<title>GitlabShell doesn't need to set GL_ID at all.</title>
<updated>2015-04-06T11:10:10+00:00</updated>
<author>
<name>Douwe Maan</name>
<email>douwe@gitlab.com</email>
</author>
<published>2015-04-06T10:42:10+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-shell.git/commit/?id=b5757b7489672f61bb4ea770accaac1cb38e9ffd'/>
<id>b5757b7489672f61bb4ea770accaac1cb38e9ffd</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Write GitlabShell error to stderr.</title>
<updated>2015-04-06T11:08:51+00:00</updated>
<author>
<name>Douwe Maan</name>
<email>douwe@gitlab.com</email>
</author>
<published>2015-04-06T10:30:21+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-shell.git/commit/?id=f64e5d4a075479846f2e18bb34b84eb26d180f57'/>
<id>f64e5d4a075479846f2e18bb34b84eb26d180f57</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
