summaryrefslogtreecommitdiff
path: root/internal/sshd/session.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/sshd/session.go')
-rw-r--r--internal/sshd/session.go3
1 files changed, 3 insertions, 0 deletions
diff --git a/internal/sshd/session.go b/internal/sshd/session.go
index 3394b2a..3d5fbad 100644
--- a/internal/sshd/session.go
+++ b/internal/sshd/session.go
@@ -28,6 +28,7 @@ type session struct {
channel ssh.Channel
gitlabKeyId string
gitlabKrb5Principal string
+ gitlabUsername string
remoteAddr string
// State managed by the session
@@ -173,6 +174,8 @@ func (s *session) handleShell(ctx context.Context, req *ssh.Request) (uint32, er
if s.gitlabKrb5Principal != "" {
cmd, err = shellCmd.NewWithKrb5Principal(s.gitlabKrb5Principal, env, s.cfg, rw)
+ } else if s.gitlabUsername != "" {
+ cmd, err = shellCmd.NewWithUsername(s.gitlabUsername, env, s.cfg, rw)
} else {
cmd, err = shellCmd.NewWithKey(s.gitlabKeyId, env, s.cfg, rw)
}