How to Implement Databricks Access Control with R and Scala

SUMIT SARKAR on April 5, 2023
Last edited: November 4, 2024
Default alt text

Databricks table ACLs let data engineers programmatically grant and revoke access to tables. With table ACLs enabled, users have no access to data stored in the cluster’s managed tables by default until granted access, thereby improving sensitive data security. With Databricks runtime 3.5 or above, table ACLs allow authorized users to run SQL and Python commands against tables to which they have been granted access. But due to security vulnerabilities, table ACLs do not support R or Scala commands, so you may see messages like this returned in your notebook:

Your administrator has only allowed python and sql commands on this cluster. This execution contained at least one disallowed language.

In partnership with Databricks, Immuta has engineered a data access control solution for fine-grained Databricks access controls (table-, row-, column-, and cell-level) and advanced privacy techniques that work in tandem with table ACLs for Python and SQL. The access and privacy controls are enforced natively in the Databricks platform so users do not have to change their workflows.

Many of our customers have requested R and Scala support for fine-grained access controls, so we engineered our platform to not only enable data teams to analyze protected data sets across Python and SQL, but also R and Scala. This is an industry-first capability, meaning that Databricks customers using Immuta can now use their programming language of choice, across cluster types, to implement fine-grained access controls, while protecting against destructive DDL commands (like DROP) on tables.

Immuta for Databricks Architecture

The big data era required separation of compute and storage to scale, which gave rise to Apache Spark and Databricks. The current “personal data” era – in which organizations analyze large volumes of sensitive data for analytics and data science – requires separation of platform and policy to scale. Organizations using Databricks and Immuta are adopting this architectural best practice, as it enables scaling access and privacy controls when working with personal or other sensitive data. Now, SQL and Python are supported with table ACLs, and the same native architecture extends to R and Scala while completely removing the need for table ACLs and high concurrency clusters.

See how to use Immuta to implement fine-grained access control with R and Scala in Databricks with this short demo:

Get Started Now

Immuta’s newest capabilities support fine-grained access control from Python, SQL, R, and Scala notebooks in Databricks. To find out more about how these features work, request a demo today.

Request a demo

your data

Put all your data to work. Safely.

Innovate faster in every area of your business with workflow-driven solutions for data access governance and data marketplaces.