TECHNOLOGIES: BIGQUERY

BigQuery Security Review

A BigQuery dataset’s IAM grants, row access policies and authorised views decide who can read which rows and columns. We test what those grants, exports and shared datasets actually allow. CREST-certified testers, fixed price from £3,280 for a 2-day single-project scope, quoted within 24 hours.

  • Unlimited retesting
  • Unlimited pre-retesting
  • No hidden fees
Accredited & recognised
Cyber Essentials certified Cyber Essentials Plus certified IASME certifying body ISO 27001 certified ISO 9001 certified Crown Commercial Service supplier UK Cyber Security Council member
CREST
Approved Provider
10
BigQuery Test Areas
FREE
Retest Until Closed
24h
Scope to Active Test
CLIENT REFERENCE
“I would highly recommend EJN Labs to any organisation seeking reliable, detailed, and well-managed penetration testing services, particularly for government or enterprise-level projects.”
SquareOneImran SaghirProject Lead, SquareOneRead the SquareOne case study →
CLIENT REFERENCE
“There wasn’t another company we could find that could deliver what we needed in the timeframe we needed. The client loved it, and we got instant ROI from the engagement.”
CelloriDan WilcocksonFounder, CelloriRead the Cellori case study →
See all case studies →
WHY IT MATTERS
Grants

BigQuery decides who can query which rows and columns through IAM roles, row access policies and policy tags, layered from the project down to a single column. We test which of those grants are actually live against what your business intended.

Why BigQuery security comes down to grants and policies

BigQuery grants live at three levels: the project, the dataset and, for finer control, an individual table or view. The predefined roles map to different levels of access, from BigQuery Data Viewer through BigQuery Data Editor to BigQuery Data Owner and BigQuery Admin, and Google’s own access control documentation lists each role’s exact permissions. We test whether a role granted at the project level, which reaches every dataset underneath it, was meant to be scoped to one dataset instead.

Where a table holds data for more than one customer or department, a row access policy filters which rows a query returns based on who is running it, and a policy tag on a column can mask or withhold a field from anyone without the Fine-Grained Reader role. We test whether those policies cover every column and table that needs them, and whether a join or a wildcard table query finds a way around a filter written for a single table.

Data leaves a dataset in more ways than a query returning results to a screen: an extract job can copy it to Cloud Storage, a BigQuery sharing listing can hand a subscriber a linked dataset, and a service account key used by a BI tool or pipeline can carry the same access outside any session a person is watching. We test whether a VPC Service Controls perimeter, Data Access audit logging and the credentials your integrations use are consistent with the access controls on the data itself, and check the same grants against our Snowflake security review where a business runs both.

SCOPE

What we review in a BigQuery project

BQ-01

Project and Dataset-Level IAM Roles

BigQuery Data Viewer, BigQuery Data Editor and BigQuery Data Owner can each be granted at the project or the dataset level, and a role granted on the project reaches every dataset underneath it. We test whether a broad project-level grant was meant to cover the whole warehouse or should have stayed scoped to one dataset.

BQ-02

Table and View-Level Access Grants

IAM permissions that begin with bigquery.tables can be granted directly on a table or view rather than only at the dataset or project level, and views are treated as table resources for this purpose. We check whether table- and view-level grants were set deliberately, not left inherited from a broader dataset or project role.

BQ-03

Public and Domain-Wide Access

Sharing a dataset outside your organisation means granting access to the special principals allUsers or allAuthenticatedUsers, and an organisation using domain restricted sharing needs an explicit policy exception before either principal can be added. We check whether any dataset, table or authorised view has been shared this way, deliberately or by mistake.

BQ-04

Service Accounts and Keys for Pipelines and BI Tools

Pipelines and BI tools typically reach BigQuery through a service account, and a downloaded key for that account grants the same access as any user credential if it leaks. We check which service accounts your integrations use, what roles they hold, and whether long-lived keys could be replaced with a more secure authentication method.

BQ-05

Row-Level Security and Row Access Policies

A row access policy adds a filter_expression to a table that works like a WHERE clause, so different callers of the same query see different rows depending on their identity. We test whether the filter actually covers every column that identifies a row’s owner, and whether a join to an unfiltered table exposes rows the policy was meant to hide.

BQ-06

Column-Level Security and Policy Tags

A policy tag applied to a column restricts who can see that column’s raw values, and reading it without the Fine-Grained Reader role returns masked data instead of an error. We check that every sensitive column has a policy tag attached, and that the accounts your pipelines and analysts use hold the reader role you intended, not the one they were left with.

BQ-07

Authorised Views and Authorised Datasets

An authorised view lets a group query results from a source dataset without being granted access to the underlying tables, and an authorised dataset extends the same idea to every view inside it. We test whether the view’s own query reintroduces access the underlying grants were meant to withhold, such as a select statement that exposes a masked or restricted column.

BQ-08

Data Exports, Extract Jobs and VPC Service Controls

An extract job can copy a table out of BigQuery to Cloud Storage, and BigQuery is one of the Google Cloud APIs a VPC Service Controls perimeter can restrict to stop that copy leaving the perimeter even when IAM alone would allow it. We check whether a perimeter is in place, what it actually covers, and whether an extract job can still move data past it.

BQ-09

Analytics Hub and Data Exchange Sharing

BigQuery sharing, formerly Analytics Hub, lets a publisher list a dataset for other teams or partners to subscribe to, and a subscriber gets a linked dataset without the data being copied. We test who holds the Analytics Hub Publisher and Subscriber roles, and whether a listing shares more than the authorised view Google recommends publishers use to control it.

BQ-10

Data Access Audit Logging

BigQuery is the exception to Google Cloud’s usual rule that Data Access audit logs are switched off by default, so table reads and query jobs are already being logged whether or not anyone has configured anything. We check where those logs are routed, how long they are retained, and whether anyone would actually notice an unusual read.

OUR PROCESS

Google BigQuery Security Review: From Scope to Attestation

01

Scope and Access

We agree which GCP projects and datasets are in scope, plus a read-only IAM identity or dedicated service account that matches the access level you want tested.

02

IAM and Policy Mapping

We map project- and dataset-level IAM roles, row access policies, policy tags and any authorised views or BigQuery sharing listings against who is meant to see what.

03

Manual Testing

A CREST-certified tester queries the environment with the access provided, testing row and column filters, export paths and shared datasets for gaps between intended and actual access.

04

Attestation and Retest

You get a technical report with findings mapped to the specific IAM roles, policies or grants involved, a walkthrough call, a free retest once fixes are deployed, and an attestation letter for auditors.

CREDENTIALS

Verified Accreditations Auditors Accept

Every credential below is independently verifiable. UK procurement teams, FCA supervisors, ISO 27001 / SOC 2 auditors, and cyber insurance underwriters all recognise these standards.

GET YOUR QUOTE

Get a CREST BigQuery pen test quote in 24 hours

A fixed-price quote back in one business day, from a named CREST assessor. No sales pipeline, no chasing.

  • CREST and IASME accredited. Testing your auditors and clients already recognise.
  • Fast-track testing within 24 hours where required. Free retest of every fix included.
  • Live findings via your client portal, not a four-week PDF.
  • Fixed price from £3,500 for a single-role, single-app scope, agreed up front. Most engagements run £5,000 and up. No day-rate surprises.
What clients say
There wasn’t another company we could find that could deliver what we needed in the timeframe we needed. The client loved it, and we got instant ROI from the engagement.
CelloriDan WilcocksonFounder, Cellori

Under NDA Further named references available on a scoping call.

What happens next
  1. We reply within one business day with a fixed-price quote from a named CREST assessor.
  2. You approve the scope and we book a start date, usually within 24 hours.
  3. Live findings land in your client portal as we test, with a free retest of every fix.
Accredited & recognised
CREST member Cyber Essentials certified Cyber Essentials Plus certified IASME certifying body ISO 27001 certified ISO 9001 certified UK Cyber Security Council Crown Commercial Service supplier

Get your fixed pen test quote in 24 hours

⚡24h reply ✓CREST tester ↻Free retests

or book a 20-min scoping call first

We reply within one business day. Your data stays with us. No newsletter signup.

COMPLIANCE READY

Reports Mapped to Every Framework

Findings are written so your team can reference the report against each framework without translation work.

ISO 27001:2022

Annex A.8.8 management of technical vulnerabilities plus A.5.15-5.18 and A.8.2-8.5 access control validation.

SOC 2 Type I & II

CC6 logical access, CC7 system operations, CC8 change management evidence.

PCI DSS

Requirement 11.4 application penetration testing across cardholder data environments, including ecommerce penetration testing for online retail platforms.

FCA SYSC

SYSC 4.1.1R, 6.1.1R, 13 mapped to each finding for FCA-regulated firms.

UK GDPR

Article 32 effectiveness testing, customer-data security controls, ICO-acceptable evidence.

Cyber Essentials Plus

Direct certification through our IASME body status, single-vendor delivery.

PRICING

Transparent Google BigQuery Security Review Pricing

Pricing depends on the number of roles, integrations and environments in scope. See our pricing page for how we quote.

✦ ALWAYS · ON EVERY TIER · NO EXCEPTIONS ✦
✓Free retests, no time limit
✓Free rescheduling
✓No cancellation fees
✓24-hour scope to active testing
✓Live findings to client portal
✓Executive + technical report
✓60-min walkthrough call
✓Letter of attestation
SMALL / SMB
£3,280–£4,820
2 to 3 testing days

Single user role, basic CRUD application, marketing website with auth. Around 5 working days from kickoff to report.

Get a fixed quote
ENTERPRISE
£7,710–£11,740
5 to 7 testing days

Multi-tenant platform, complex authorisation matrix, integration-heavy applications. Around 15 to 20 working days from kickoff to report.

Get a fixed quote

Full UK pen test cost guide

WHY EJN LABS

What You Get From Google BigQuery Security Review

Six concrete differentiators competitors don’t all match.

CREST-Certified Testers, Verifiable

Every test by a CREST-certified pen tester (CRT, CCT APP, CCT INF where applicable). Verify our company status at crest-approved.org.

24-Hour Startup, Where Required

From signed scope to active testing in a single business day for incident response, audit deadlines, or regulator-driven timelines.

Live Findings, Not 4-Week PDFs

Critical issues reported during testing through your client portal. Your team remediates while testing continues.

Audit-Ready Reports

Executive summary plus full technical report with CVSS scores and explicit framework mappings (ISO 27001, SOC 2, PCI DSS, FCA SYSC).

Free Retests, Standard

Verify remediation of every finding before close-out. Letter of attestation for audit submission included. Most competitors charge £1,500-£3,000 per retest.

UK-Based CREST Testers

Every engagement performed by vetted, UK-based CREST-certified testers, matched to your needs, security clearance, and compliance scope.

FAQ

Frequently Asked

What access do you need to test our BigQuery project?

We need a Google Cloud IAM identity, either your own account or a dedicated service account, with the same roles as the access tier you want tested, typically BigQuery Data Viewer at project or dataset level. If row access policies, policy tags or authorised views are in place, tell us during scoping so we can test what each is meant to restrict.

Will testing touch our live data?

We test with whichever project and datasets you give us access to, using read-only IAM roles by default. We do not run destructive operations such as deleting tables or rows, and we agree in writing before running any query against production data outside business hours.

How long does a BigQuery security review take?

A single BigQuery project sits in our 2-day single-project scope, with a report typically landing around 5 working days after kickoff. A warehouse with more datasets, cross-project sharing or a more complex row and column-level security setup moves into a wider scope with more testing days.

Do you need our service account keys or source code?

No. We test using an IAM identity you create for us, not your existing service account keys. A grey-box option, where we also review the Terraform, deployment scripts or IAM policy exports that define your access controls, is available if you want faster or deeper coverage.

What is out of scope for a single-project BigQuery review?

The compute resources, pipelines or BI tools that query BigQuery, such as a Dataflow job or a Looker deployment, are out of scope for this review and quoted separately, as is the security of other GCP services in the same project. Our GCP cloud security review covers the wider project configuration around BigQuery.

Do you check data we’ve shared through BigQuery sharing or Analytics Hub?

Yes, if it is in scope. We review the listings and data exchanges you publish, who holds the Analytics Hub Publisher and Subscriber roles, and whether the authorised views used to share data restrict access the way you intended. We do not test the subscribing organisation’s own environment.

Does Google Cloud have a customer penetration-testing policy we need to follow?

Yes, but it does not require you to notify Google first. Google states that customers are not required to contact them before testing their own Cloud Platform resources, provided testing stays within the Acceptable Use Policy and Terms of Service and only affects your own projects. We confirm the current wording of that policy during scoping and agree with you which projects are in scope before testing starts.

EXPLORE EVERY SERVICE

20+ CREST-accredited testing services in one place

Web, mobile, API, cloud, AI, infrastructure, red team. Pick the test that fits your environment.

Penetration testing services
READY TO START

Get a fixed price for your BigQuery project

A BigQuery dataset’s IAM grants, row access policies and authorised views decide who can read which rows and columns. We test what those grants, exports and shared datasets actually allow. CREST-certified testers, fixed price from £3,280 for a 2-day single-project scope, quoted within 24 hours.