AI-powered assistant that helps security teams detect, investigate, and respond to threats
Is there a way to allow users to automatically grant authorization for SQL queries without manually approving every time?
This browser is no longer supported.
Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.
When an End User triggers a topic that uses an SQL connector to query data, an authorization prompt appears. Is it possible to bypass this authorization by using Creator's permissions instead of End User's? How can this be achieved?
AI-powered assistant that helps security teams detect, investigate, and respond to threats
Is there a way to allow users to automatically grant authorization for SQL queries without manually approving every time?
AI answer
End-user authorization is required when the connector or app is designed to run SQL queries under the end user’s identity. Creator (or author) permissions do not automatically bypass this, and cannot be used as a “proxy” unless the solution is explicitly redesigned to run under an app/service identity instead of the end user.
Across Azure SQL, Synapse, and Fabric SQL engines, authorization is always evaluated against the identity that connects to the database:
db_datareader – read datadb_datawriter – write datadb_owner – full control (generally too powerful for end users)When a connector is configured to use the signed-in user’s identity (for example, via Microsoft Entra ID), the platform passes that user’s credentials to the SQL engine for both authentication and authorization. If additional consent or authorization is required, the user is prompted, and the database enforces that user’s permissions only.
This is by design: the SQL engine does not “inherit” the creator’s or admin’s permissions when the end user is the one connecting.
No, not in the sense of “use the creator’s rights while the end user is the one being authenticated.”
Key points from the platform behavior:
db_datareader to a user or a role).So creator authorization does not “bypass” end-user authorization. Instead, the creator can choose a different execution identity for the connector.
To avoid end-user authorization prompts and per-user SQL permissions, the solution must be designed so that SQL access is performed under a non-user identity (for example, a service principal or dedicated application account). In that model:
db_datareader (and db_datawriter if writes are needed).db_owner unless absolutely necessary.This pattern is reflected in the Spark connector guidance, where the identity can be a user or an app, and the required permissions (db_datareader, db_datawriter, etc.) must be granted to that identity.
When switching from “run as user” to “run as app/creator identity,” there are important implications:
References: