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

Earn badges and make progress

You're on your way to the next level! Join the Kudos program to earn points and save your progress.

Deleted user Avatar
Deleted user

Level 1: Seed

25 / 150 points

Next: Root


1 badge earned


Participate in fun challenges

Challenges come and go, but your rewards stay with you. Do more to earn more!


Gift kudos to your peers

What goes around comes around! Share the love by gifting kudos to your peers.


Rise up in the ranks

Keep earning points to reach the top of the leaderboard. It resets every quarter so you always have a chance!


Come for the products,
stay for the community

The Atlassian Community can help you and your team get more value out of Atlassian products and practices.

Atlassian Community about banner
Community Members
Community Events
Community Groups

How to add an Access Key with Write permission?

I am trying to set up Sparkle Share ( for an artist on my team who needs read-write access to our project, but doesn't want to deal with Git (Sparkle Share behaves like DropBox).

Sparkle Share provides an SSH client id, which I add as an "Access Key" to my Free BitBucket Repo. This works; the repo is properly download to the clients machine. However, any changes they make cannot be uploaded, because that Access Key only has "Read" permission.

On GitHub there is just a little "allow write" check box when you add an SSH key, but I can't find anything on BitBucket.

Is this possible?

5 answers

Bitbucket cloud has been an exceedingly disappointing experience... Similar to JIRA, it's missing many features, and Atlassian doesn't seem capable of delivering them. How about some pre-commit hooks?

Yea, access keys with optional write access seems like a pretty important feature. Github has this exact behavior with their "deploy keys". Now with github offering free private repos, it's hard to justify sticking with Atlassian.   

Like # people like this

Honestly, this is unacceptable for a product as big as this not to have such basic functionality, for anyone else that needs a 'workourand': 

Instead of adding the public ssh key as an access key on the repo, add it as a public ssh key of a user that has write access to the repo.

Unfortunately this user will be the 'scapegoat' if something goes wrong ;-)

Like # people like this

You usually create a service account for this sort of things instead of adding that key to a real user's account.

I think attaching a key to a specific user with write access to the repo much is much better than a global public key 

I know its 2020, but I needed to do a similar thing recently. Here's how I did it.

When you add an SSH key to your repo, you essentially give an anonymous user called "git" a Read access to your repo as long as they provide that key. Such access seems to be limited to read-only by design.

Instead of adding an SSH key to the repo I created a BitBucket user for my service account (i.e. srv-acct-001) and added SSH key to that user. Now if you give that BB user Write permissions to your repo, they will be able to read and write AS LONG AS they use that user's name instead of "git" and provide their SSH key, for instance:

git clone<repo>

This way it will consume one user account, of course.

Workspaces also has access keys. Adding key there gives you write access.

Like # people like this

I tried the "make a user for the svc account" approach, but ran into issues validating the invite. SSO prevented me from logging in as the svc account.   

@Marek Skórkowski Thank you! It works as it should, though I had to deal with an illogical interface.

It worked. Thanks.

2 votes
carolyn french
Community Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
Jul 11, 2018

Hi Matt, and welcome to Community!

From what I see in the Bitbucket documentation, you can only do read/write in Bitbucket Server Access Keys, not Bitbucket Cloud.

Someone else may have some sort of workaround for you...


0 votes
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
Jan 17, 2023

Has anyone figured out how to do this? 
I am trying to sync files from repo1 to repo2 using repo1's pipeline. 

I copied repo2 ssh key into repo1 Access Keys.

I keep getting  error Unauthorized fatal: Could not read from remote repository." when pipeline's script runs "git push"

As per Marek Skórkowski reply:

Adding the key to the workspace access keys gives it write access.

I wish this could be mentioned as an option for write access in the repository settings page.

So should it be in repo and in workplace settings?

Or only workplace?

Only workspace.

Copy the public key from repo of interest `Repository settings > SSH Keys`  to `Workspace settings > SSH Keys`.

Is this Workpace SSH key feature a paid feature, or only on BitBucket Server? I don't see it on my (Free) Cloud account.

nevermind, it looks like it's actually "Personal Settings", not Workspace settings

@Ryan Pei no, personal settings is for your personal account settings. if you want to open the workspace, click on your profile, in the menu above "personal settings" you see a small list of recent workspaces or a "all workspaces" link. select the workspace with the repo in question, then select "settings" and finally "SSH keys"

Marco Mazzucco
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
Apr 21, 2023

For what it's worth, it is actually  now in personal settings and not all workspaces.

Suggest an answer

Log in or Sign up to answer
AUG Leaders

Atlassian Community Events