DP-300 Dynamic Data Masking Practice Question
You are setting up a new Azure SQL Database for a development team. The database will contain test data that mimics production but with some sensitive fields obfuscated. You need to ensure that developers can query the database without seeing the actual sensitive data. The developers will use Microsoft Entra ID authentication. You have the following requirements: - The sensitive data should be automatically masked in query results for all developers except the database administrator. - The masking should be applied without modifying the application code. - The solution should be easy to manage and not require changes to the data model.
What should you implement?
⚠ Common exam trap
Candidates often confuse Dynamic Data Masking with other security features like Always Encrypted or Row-Level Security. DDM masks data in query results at the database level without altering the underlying data or requiring application changes.
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
Configure dynamic data masking on the sensitive columns, and add the database administrator to the unmask permission.
Dynamic Data Masking (DDM) can be configured on sensitive columns to automatically mask data in query results without modifying application code or the data model. The database administrator can be added to the unmask permission to see the actual data. Option A is incorrect because creating views would require changes to the data model and application queries. Option C is incorrect because Always Encrypted requires application code changes to handle encryption/decryption. Option D is incorrect because Row-Level Security filters rows based on predicates, not columns, and does not mask data.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Create views that exclude sensitive columns and grant developers access to the views instead of the base tables.
Why it's wrong here
Views excluding sensitive columns require developers to query those views, and direct base-table access must be revoked; the requirement states masking without modifying application code or data model. It is tempting because views are a legitimate column-hiding technique, and would be correct where applications can be repointed to views.
- ✓
Configure dynamic data masking on the sensitive columns, and add the database administrator to the unmask permission.
Why this is correct
Dynamic data masking masks sensitive columns in query results automatically, requiring no application code or data model changes, and the UNMASK permission exempts the database administrator. This satisfies all three stem requirements, including Microsoft Entra ID authentication compatibility.
- ✗
Implement Always Encrypted with column encryption, and grant the developers access to the encryption keys.
Why it's wrong here
Always Encrypted encrypts column data at rest and in transit, so developers holding the keys decrypt and view plaintext, not masked values. It is tempting because Always Encrypted genuinely protects sensitive columns, and would be correct where even administrators must be unable to read the data.
- ✗
Create a row-level security policy that denies access to sensitive rows for developers.
Why it's wrong here
Row-level security filters which rows a developer retrieves, leaving sensitive column values in returned rows fully visible. It is tempting because RLS is a real access-control feature, and would be correct where the requirement is restricting developers to their own subset of rows rather than hiding column contents.
Go deeper
Related to this question
Learn chapter
Overview of Azure Data Platform Options
Key term
Azure SQL Authentication
Azure SQL Authentication is the process of verifying a user's identity to access an Azure SQL database using either a username and password (SQL Authentication) or a Microsoft Entra ID (formerly Azure AD) identity.
Key term
Azure SQL Performance Tuning
Azure SQL Performance Tuning is the process of optimizing the speed and efficiency of queries and database operations in Microsoft Azure SQL Database or SQL Managed Instance to reduce latency and improve throughput.
About these practice questions
This DP-300 question is part of Courseiva's 574-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This DP-300 practice question is part of Courseiva's free Microsoft certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the DP-300 exam.