Add support for dot (.) in variables masking

Merged Tomasz Maczukin requested to merge support-dot-in-variables-masking into master

What does this MR do?

The CI/CD Variables masking mechanism supports a limited number of characters that can be masked. One of the currently unsuported ones is the dot (.) character.

This makes it unusable for example for JWT tokens in #37469 (closed).

The current limitation is mostly required to prevent usage of characters, that can be used in shell variables expansion, which would make the final masking pattern unpredictable. With the Raw Variables feature (that is under development) the restrictions could be possibly reduced a little. However for now, we're needing them.

However, it seems that the dot (.) usage should not generate the problem and it would improve the security of JSON Web Tokens passed to the CI/CD job with the Variables.


Does this MR meet the acceptance criteria?


Availability and Testing


If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:

  • 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

Closes #37469 (closed)

Edited by Tomasz Maczukin