An organization's AI application stores conversation history in Azure Cosmos DB. A security engineer must ensure the application's managed identity can only read conversation data and cannot write or delete records. Which approach achieves least-privilege access to Cosmos DB?
Select an answer to reveal the explanation.
Short Explanation and Infographic
Here's the deal — c is correct because Azure Cosmos DB supports data plane RBAC with granular action-level permissions. Creating a custom role definition that includes only the 'read' action for items and assigning it to the managed identity provides least-privilege read-only access to conversation data without write or delete permissions.
Full explanation below image
Full Explanation
C is correct because Azure Cosmos DB supports data plane RBAC with granular action-level permissions. Creating a custom role definition that includes only the 'read' action for items and assigning it to the managed identity provides least-privilege read-only access to conversation data without write or delete permissions. A is incorrect because 'Cosmos DB Account Reader Role' is a control plane role that grants access to account metadata and settings, not data plane read access to documents. B is incorrect because 'readMetadata' only grants access to metadata about the database structure, not to actual conversation history items. D is incorrect because firewall rules control network-level access but do not enforce data plane least-privilege permissions.