Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

Plan specific encryption for secret variables in Specs?

Paul O'Brien February 4, 2020

Is there a way to have plan specific encryption for secret variables in Specs?

Currently, I can have a password variable in my build plan and export it as a Java spec and in the spec file it shows the encrypted text for the password. The problem is I or anyone who has access to the specs repo can copy that encrypted string out of that java spec and paste it into another spec file for a different build plan and that plan is able to decrypt it / use it.  Which then allows me to echo that password into a text file as an artifact and then boom I have the password. 

The encrypted output is the same cross build plans meaning if I encrypt "password1" it will be the same encrypted output in 2 different plans allowing anyone to copy that into their spec and use it.  Is there a way to have plan specific encryption for secret variables?

2 answers

2 votes
Anonymous Coward
Contributor
February 5, 2020

Simon says:

` Short answer: no.

  Long answer: Indeed, as you observed, Bamboo uses reversible encryption with no salt. The same plaintext will always transform in the same cyphertext. Bamboo is a single security domain, demarcated by the authentication mechanisms. Any body with valid credentials will be able to copy and use any cyphertext. This single security domain extends to the users that have access to Specs source code, which, if you store specs in a repository may extend to all repository (for example git).

Apparently this single security domain architecture is by design: https://jira.atlassian.com/browse/BAM-18932

Bamboo's current encryption feature should be regarded as a method of achieving obfuscation rather than a method of achieving confidentiality. '

Simon out.

0 votes
Jeyanthan I
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
February 6, 2020

Hi @Paul O_Brien ,

It is critical to isolate your Specs repository from users that you do not want them to access. If they have access to Bamboo Specs repository, they can certainly reuse the encrypted variables as you rightly understood.

I recommend you to introduce appropriate elevated permission to access this repository. This recommendation is also applicable for any plan configuration you do in the UI.

Hope that helps.

Cheers,
Jey

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events