Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to recover Google App Engine's "default service account"

I have mistakenly deleted the default "app engine service account" for my project - {id}@appspot.gserviceaccount.com Is there a way to recover it without resetting/recreating my project on Google Cloud Platform?

like image 224
Night Fury Avatar asked Jun 21 '16 12:06

Night Fury


People also ask

What is the App Engine default service account?

The App Engine default service account is associated with your Cloud project and executes tasks on behalf of your apps running in App Engine. By default, the App Engine default service account has the Editor role in the project.


2 Answers

Unfortunately at this time, there is no way to recover the default App Engine service account. The solution is as you say creating a new project and redeploying your code there.

Should you wish to see this deletion prevented or default service account recreation made possible in the future, I strongly urge you to file a feature request on the App Engine public issue tracker while providing this example as a business case.

UPDATE: As filed by the OP, a feature request now exists on the App Engine public issue tracker as Issue 13085. Please star this issue to receive updates on its progress.

UPDATE 2: As part of the App Engine Admin API, one can now use the apps.repair API to attempt to address issues of default Cloud Storage buckets and App Engine service accounts. I would recommend trying this API before creating a new project and redeploying. I'm leaving this as an addendum and not the primary solution as it's not guaranteed to solve the issue.

UPDATE 3 It is now possible to undelete service accounts. As per the Undeleting a service account documentation, a service account may be restored if:

The service account was deleted less than 30 days ago

and

There is no existing service account with the same name as the deleted service account.

like image 66
Nicholas Avatar answered Oct 04 '22 00:10

Nicholas


If you don't know the default service account UniqueID, there is another solution.

Simply disable the App Engine Admin API and enable the same after some time. This will create a new default service account. Please note that this will delete all the associated resources.

(To enable/disable an API: Menu -> API & Services -> Dashboard -> Enable APIs and Services -> Search for that API -> Enable/Disable)

like image 23
Akash.P Avatar answered Oct 03 '22 23:10

Akash.P