Role-Conditioned Refusals: Evaluating Access Control Reasoning in Large Language Models
Đorđe Klisura, Joseph Khoury, Ashish Kundu, Ram Krishnan, Anthony Rios
TL;DR
The paper addresses how to enforce RBAC-style access control in large language models that generate SQL queries, introducing a unified framework and RBAC-augmented datasets to evaluate role-conditioned refusals. It compares three enforcement strategies—direct prompting, a two-step generator–verifier pipeline, and LoRA-based fine-tuning—across multiple model families. The key finding is that explicit verification improves refusal precision and reduces false permits, while fine-tuning enhances utility by internalizing permission reasoning; longer, more complex policies degrade reliability across all methods. The work demonstrates the value of combining reasoning with structured access checks and releases the RBAC-augmented datasets and code to support broader evaluation and deployment in data-sensitive environments.
Abstract
Access control is a cornerstone of secure computing, yet large language models often blur role boundaries by producing unrestricted responses. We study role-conditioned refusals, focusing on the LLM's ability to adhere to access control policies by answering when authorized and refusing when not. To evaluate this behavior, we created a novel dataset that extends the Spider and BIRD text-to-SQL datasets, both of which have been modified with realistic PostgreSQL role-based policies at the table and column levels. We compare three designs: (i) zero or few-shot prompting, (ii) a two-step generator-verifier pipeline that checks SQL against policy, and (iii) LoRA fine-tuned models that learn permission awareness directly. Across multiple model families, explicit verification (the two-step framework) improves refusal precision and lowers false permits. At the same time, fine-tuning achieves a stronger balance between safety and utility (i.e., when considering execution accuracy). Longer and more complex policies consistently reduce the reliability of all systems. We release RBAC-augmented datasets and code.
