
Ultimate access to all questions.
In a scenario where you are tasked with implementing a secure and scalable solution to control access to sensitive data in a dataset based on user roles within an Azure SQL Database, which of the following techniques would be the MOST appropriate? Consider the need for minimal maintenance, compliance with data protection regulations, and the ability to dynamically adjust access as roles evolve. Choose the best option from the following:
A
Implementing a single static view that encompasses all data and applying row-level security (RLS) policies to filter data based on user roles, requiring manual updates to RLS policies whenever roles change.
B
Creating multiple static views for each user role, each pre-filtered to include only the data accessible to that role, necessitating the creation of new views or modification of existing ones as roles are added or changed.
C
Utilizing dynamic data masking (DDM) in conjunction with RLS to automatically adjust the data visible to users based on their roles, with RLS policies dynamically applied based on role membership stored in a separate table.
D
Applying column-level encryption to all sensitive data and managing decryption keys based on user roles, requiring users to have the correct keys to access encrypted columns.