Skip to content

Add map of identities to CI_JOB_JWT [RUN AS-IF-FOSS]

Joe Snyder requested to merge joe-snyder/gitlab:add_extern_uid_to_jwt into master

What does this MR do?

This merge request adds a new parameter to the CI JWT object called user_identities. This parameter contains a list of the user's external identities. It specifically holds provider, extern_uid, and secondary_extern_uid which will allow the job to do additional validation of the users identity.

This will allow a shared GitLab runner to use these identities to verify that the user who triggered the job has permissions to execute on that particular runner. See: !69373 (comment 675973120)

Screenshots or Screencasts (strongly suggested)

Collapsed: image Enabled: image Disabled: image

How to setup and validate locally (strongly suggested)

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

Security

Does this MR contain changes to processing or storing of credentials or tokens, authorization and authentication methods or other items described in the security review guidelines? If not, then delete this Security section.

  • Label as security and @ mention @gitlab-com/gl-security/appsec
  • The MR includes necessary changes to maintain consistency between UI, API, email, or other methods
  • Security reports checked/validated by a reviewer from the AppSec team
Edited by Joe Snyder

Merge request reports