Skip to content
Snippets Groups Projects

Add support for TLS client authentication

All threads resolved!

Allow gitlab-ci to connect to a gitlab host using TLS client authentication (mutual authentication). Adds configuration and support for using TLS client certificates when using go's TLS transport layer and also sets git enviromental variables for runners.

See also #1291 (closed) and !86 (closed)

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • @sfnelson We should also support client certificates by this command helpers: https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/tree/master/commands/helpers (they are used to upload/download artifacts).

    It means setting: CI_SERVER_TLS_CLIENT_CERT_FILE and CI_SERVER_TLS_CLIENT_KEY_FILE before executing this commands.

    Edited by Kamil Trzcińśki
  • Nick Thomas Mentioned in merge request !340 (closed)

    Mentioned in merge request !340 (closed)

  • Nick Thomas mentioned in issue #1736

    mentioned in issue #1736

  • added 991 commits

    • b3a7af96...cdb231f2 - 990 commits from branch gitlab-org:master
    • b2d13f06 - Add support for TLS client authentication

    Compare with previous version

  • added 1 commit

    • 12529a6b - Add support for TLS client authentication

    Compare with previous version

  • I've updated this merge request. @ayufan would you take a look please? It seems like a commonly requested feature, would be great to see it merged.

  • @tmaczukin Could you review it?

  • Kamil Trzcińśki
  • added 75 commits

    • 12529a6b...ef0ca338 - 74 commits from branch gitlab-org:master
    • 51bb37bc - Add support for TLS client authentication

    Compare with previous version

  • Updated for 9.0

  • @tmaczukin I'm currently debugging a potential problem from porting my changes to master. The code is ready for review, but please don't merge it until I confirm that it's ready.

  • added 1 commit

    • 7c609178 - Add support for TLS client authentication

    Compare with previous version

  • added 1 commit

    • 67ec679d - Add support for TLS client authentication

    Compare with previous version

  • Done, I had missed a block when porting to 9.0, certificates and builds are working as expected now.

  • @tmaczukin this issue is extremely important to our business. What can I do to keep the process moving?

  • @sfnelson I'll review this today :)

  • @tmaczukin did you get a chance to review this MR? Do you have any comments?

  • Hi @tmaczukin, have you had a chance to look at this yet?

  • @sfnelson Looking on this right now :)

  • @sfnelson Looks really nice :).

    I left few comments. Please fix these and resolve conflicts. Meanwhile I'll try to perform some manual tests using client authentication and this MR :)

  • Tomasz Maczukin mentioned in merge request !86 (closed)

    mentioned in merge request !86 (closed)

  • Tomasz Maczukin changed milestone to %v9.1

    changed milestone to %v9.1

  • Thanks for your comments. I've got some time to look at it now.

  • username-removed-525672 resolved all discussions

    resolved all discussions

  • Assuming the pipeline passes, I think I've resolved everything you requested. Sorry I didn't have time to get back to it sooner.

  • @sfnelson I left two comments

  • Tomasz Maczukin resolved all discussions

    resolved all discussions

  • @sfnelson I think all is good now.

    However we didn't have time to install this with RC version on our shared runners to check if this doesn't introduce any regression. And since this MR touches places where communication with GitLab is made, any regression may affect all users - even if they are not using TLS Client Authentication. I don't think that merging this a day before release will be a good idea.

    I'm moving this MR to 9.2. It will be merged at Monday so anyone will be able to install this with Bleeding Edge version which will be basically 9.2 with this one change.

    Thank you for your awesome work on this MR! :smile:

  • Tomasz Maczukin changed milestone to %v9.2

    changed milestone to %v9.2

  • It's been almost a year, another few days won't hurt. Looking forward to seeing it merged.

  • Tomasz Maczukin approved this merge request

    approved this merge request

  • mentioned in issue #1291 (closed)

  • mentioned in issue #2570 (closed)

  • Please register or sign in to reply
    Loading