0

It has become apparent to me that who the query costs are billed to (at least when using UI) are dependant on the project selected up top. I.e. if I query a dataset in 'project_a' but have selected 'project_b' at the top this query would be billed to 'project_b'.

(Who pays query costs on datasets across multiple users in BigQuery? and https://cloud.google.com/bigquery/pricing#how_charges_are_billed)

Is there a way to limit this cross-billing occurring without completely removing people from other projects?

I am worried that if somebody forgets to switch their project at the top we could end up billing someone for another clients' work.

George S
  • 315
  • 2
  • 10

1 Answers1

1

Sadly not, and it's the power of BigQuery, to separate the storage and the compute. If a user has the role jobUser on several projects and can view a dataset, they start a query job in any project where they have the role.

An ultimate solution could be to create a VPC SC on each project. Like this, you prevent any data "exfiltration" from external projects. But this feature can bring much more problems than solve.

guillaume blaquiere
  • 66,369
  • 2
  • 47
  • 76