Databricks Data Engineer Professional · 10% practice allocation

Databricks Data Engineer Professional: Ensuring Data Security and Compliance Practice Questions

5 free sample questions from the Ensuring Data Security and Compliance domain, with answers and explanations. The full Data Engineer Professional bank has 311 questions across 10 domains. Questions are scenario-based and written from the official Databricks exam guide.

1.

A security engineer at a financial services company needs to implement network isolation for a Databricks workspace on AWS. The requirement is that all traffic between the Databricks control plane and the customer's data plane (cluster nodes) must traverse private AWS network infrastructure without exposure to the public internet. Which combination of features BEST satisfies this requirement? (Select TWO)

  • A. Enable Databricks Private Link for the workspace to route control plane to data plane traffic through AWS PrivateLink endpoints.
  • B. Configure a customer-managed VPC (BYOVPC) with private subnets for cluster nodes and no public IP assignment.✓ Correct
  • C. Enable IP Access Lists on the workspace to restrict which external IPs can reach the Databricks web application.
  • D. Configure a NAT Gateway in the customer VPC to allow outbound internet traffic from cluster nodes while blocking inbound connections.
  • E. Enable Secure Cluster Connectivity (No Public IP / SCC) so that cluster nodes do not have public IP addresses and use a relay for control-plane communication.✓ Correct
Explanation

Options B and E are correct. To ensure cluster nodes never communicate over the public internet, two complementary controls are required: (1) A customer-managed VPC (BYOVPC) with private subnets ensures cluster nodes are deployed in private network segments with no direct public internet routing. (2) Secure Cluster Connectivity (SCC / No Public IP) ensures that cluster nodes have no public IP addresses and all control plane communication flows through a Databricks-managed secure relay (using an outbound-only channel), eliminating inbound public access requirements.

Option A is incorrect in this context: Databricks Private Link (on AWS) primarily secures the user/application-to-control-plane traffic (i.e., API calls, notebook access) and the control-plane-to-data-plane traffic over PrivateLink. While valuable, Private Link alone without BYOVPC and SCC does not fully address cluster node public IP exposure.

Option C is incorrect: IP Access Lists restrict which IPs can access the Databricks web UI and API — they are a user-facing access control, not a data plane network isolation control. They do not affect how cluster nodes communicate.

Option D is incorrect: A NAT Gateway enables outbound internet access from private subnets. While it hides private IPs behind a single public IP, it still routes traffic over the public internet. This does not achieve the goal of keeping all traffic on private AWS infrastructure.

2.

A Databricks workspace admin wants to enforce that all personal access tokens (PATs) expire after a maximum of 90 days to comply with a corporate security policy. Where in the Databricks workspace is this setting configured, and what happens to existing tokens that exceed the new maximum lifetime when the policy is applied?

  • A. PAT expiration policies are not configurable in Databricks; administrators must manually revoke tokens and rely on user compliance for rotation.
  • B. The setting must be configured via the Databricks Account Console (not workspace-level) and applies uniformly to all workspaces in the account. Existing tokens are revoked after a 24-hour grace period.
  • C. The setting is in the workspace Admin Console under Settings > Access Tokens. Existing tokens that exceed 90 days are NOT automatically revoked; only newly created tokens will be subject to the 90-day limit.
  • D. The setting is in the workspace Admin Console under Settings > Access Tokens. Existing tokens that exceed 90 days are immediately revoked when the policy is saved.✓ Correct
Explanation

Option D is correct. The token lifetime policy is configured in the workspace Admin Console under Settings > Access Tokens (or the equivalent 'Token Management' section). When an admin sets a maximum token lifetime, Databricks immediately revokes all existing tokens whose remaining lifetime exceeds the new maximum. This is a deliberate security enforcement behavior — it ensures the policy takes effect immediately rather than allowing non-compliant tokens to remain valid.

Option C is incorrect: Existing tokens ARE affected when the policy is applied. Tokens that would exceed the new maximum lifetime are revoked immediately, not grandfathered in. This is a common misconception that could cause operational disruption if admins assume existing tokens are safe.

Option B is incorrect: Token expiration policy is a workspace-level setting, not an account-level setting. Each workspace manages its own PAT policies independently through its own Admin Console.

Option A is incorrect: Databricks does provide a configurable maximum token lifetime policy. This is a built-in security feature of the platform, not dependent on manual processes.

3.

A security engineer needs to audit all SELECT queries run against a specific Unity Catalog table named catalog1.finance.transactions over the past 30 days. Where should the engineer look, and what filter should be applied?

  • A. Query SYSTEM.ACCESS.AUDIT filtering on action_name = 'select' and request_params.table_full_name = 'catalog1.finance.transactions'.
  • B. Query SYSTEM.ACCESS.AUDIT filtering on action_name = 'commandSubmit' and scanning request_params for the table name.✓ Correct
  • C. Query workspace-level audit logs in the storage account directly, filtering JSON records where serviceName = 'databricks' and parsing SQL text for the table name.
  • D. Query SYSTEM.ACCESS.AUDIT filtering on service_name = 'unityCatalog' and action_name = 'generateTemporaryTableCredential' joined with request_params.table_id.
Explanation

In Databricks audit logging, SQL query execution events are captured under action_name = 'commandSubmit' (or runCommand for Jobs), and the SQL text (including the queried table) is embedded in request_params. Filtering on commandSubmit and then inspecting request_params for the table name is the correct approach for finding SELECT activity. Option A is wrong because action_name = 'select' is not a valid Unity Catalog audit event name — Unity Catalog data-access events for credential generation use different action names. Option D describes the generateTemporaryTableCredential action, which is fired when short-lived credentials are vended for cloud storage access — it reflects credential issuance, not every SELECT query, and joining on table_id is complex and incomplete. Option C (parsing raw workspace storage logs) is outdated — SYSTEM.ACCESS.AUDIT is the governed, SQL-queryable surface for audit data and is preferred over raw JSON log parsing.

4.

A Databricks workspace is deployed inside a customer-managed VNet (Azure) with no public internet access. Developers report that they cannot connect to the workspace UI or API from the corporate network. A network engineer suggests enabling Azure Private Link. Which TWO statements correctly describe the effect of enabling Private Link for a Databricks workspace?

  • A. Enabling Private Link removes the need for Network Security Group (NSG) rules because all traffic is inherently private.
  • B. Private Link requires the workspace to be in the Premium tier and uses a dedicated subnet separate from the cluster subnet.
  • C. Private Link routes workspace UI and REST API traffic from the corporate network through a private endpoint in the customer VNet, eliminating exposure over the public internet.✓ Correct
  • D. The back-end (data plane to control plane) connection from cluster nodes can also be routed through a private endpoint, replacing the default public control-plane connection.✓ Correct
  • E. Private Link automatically encrypts data at rest in DBFS using customer-managed keys (CMK).
Explanation

Option C is correct: the front-end Private Link endpoint exposes the workspace UI and REST API on a private IP within the customer VNet, so traffic never traverses the public internet. Option D is correct: Databricks also supports a back-end Private Link endpoint that routes control-plane-to-data-plane (and data-plane-to-control-plane) traffic privately, which is important for environments requiring full network isolation. Option E is wrong: Private Link is a network-layer feature; data-at-rest encryption with CMK is a separate, independent capability configured through key vault integration. Option A is wrong: NSG rules are still required to control intra-VNet traffic and to restrict outbound access from cluster nodes — Private Link does not replace NSG policy. Option B is partially misleading: while Premium tier is required for many security features, Private Link does use a dedicated subnet for its endpoints, but framing it as a single combined requirement in this way conflates distinct configuration steps.

5.

A Unity Catalog administrator needs to enforce a column mask on a salary column in a hr.employees table so that only members of the hr_managers group see actual salary values — all other users see NULL. The administrator creates the following mask function:

CREATE FUNCTION hr.mask_salary(salary DOUBLE)
RETURNS DOUBLE
RETURN IF(IS_ACCOUNT_GROUP_MEMBER('hr_managers'), salary, NULL);

Then runs:

ALTER TABLE hr.employees ALTER COLUMN salary SET MASK hr.mask_salary;

Which statement BEST describes the behavior after this configuration?

  • A. All users including hr_managers will see NULL for the salary column until the mask function is explicitly granted EXECUTE to the hr_managers group.
  • B. The ALTER TABLE ... SET MASK command will fail because column masks in Unity Catalog must be applied at table creation time using CREATE TABLE ... COLUMN MASK.
  • C. Users who are NOT members of hr_managers will see NULL when querying the salary column, while hr_managers members will see the actual salary value.✓ Correct
  • D. The mask applies only at query time via Spark SQL; users accessing the table through the Delta API or dbutils.fs can still read unmasked values.
Explanation

Option C is correct. Unity Catalog column masks are enforced at the query layer for all supported access paths. The mask function uses IS_ACCOUNT_GROUP_MEMBER to return the real value for hr_managers and NULL for everyone else — exactly the intended behavior.

Option A is incorrect: The mask function itself controls visibility via the IS_ACCOUNT_GROUP_MEMBER check, not via EXECUTE grants on the function for the group. Members of hr_managers see real values because the function returns salary when the condition is true.

Option D is incorrect: Unity Catalog column masks are enforced server-side for all governed access paths including the Delta reader protocol when accessed through Unity Catalog. Bypassing through dbutils.fs at the raw storage level is a separate concern unrelated to how the mask behaves for governed table queries.

Option B is incorrect: ALTER TABLE ... ALTER COLUMN ... SET MASK is the correct and supported DDL syntax to apply a column mask to an existing table in Unity Catalog. Masks do not need to be defined at creation time.

Test yourself across every Data Engineer Professional domain

The free Data Engineer Professional practice test mixes about 20 questions weighted like the exam. The full 311-question bank adds instant grading, flashcards and a timed mock exam.

Study this domain

Ensuring Data Security and Compliance study guide (Data Engineer Professional) →

Other Data Engineer Professional domains

← All Databricks Data Engineer Professional study resources