ADA-C01 Question 462
Single answerIdentify use cases for views and secure viewsA healthcare company stores patient encounter data in a shared Snowflake database. Internal analysts can query standard views over the base tables. The company now needs to share a subset of this data with an external research partner using Secure Data Sharing. The shared object must hide implementation details of the underlying tables and prevent consumers from inferring sensitive information through view definitions or query behavior. Which object should the Snowflake administrator create to meet these requirements?
- A
A standard view, because views already restrict access to selected columns and rows
- B
A materialized view, because precomputed results prevent exposure of underlying table logic
- C
A secure view, because it is designed for data sharing scenarios where the view definition and certain internal details must be protected
- D
A temporary view, because temporary objects are isolated and therefore safer for external consumers
Show answer and explanation
Correct answer: C
Explanation
The key requirement is not just limiting columns or rows, but protecting the underlying implementation details while sharing data externally. In Snowflake, secure views are designed for this use case. They are commonly used with Secure Data Sharing because they provide stronger confidentiality for shared objects than standard views. Standard views are useful for abstraction and access control within an organization, but secure views are the preferred choice when the provider must prevent consumers from seeing or inferring sensitive logic or metadata from the shared object. Materialized views address performance, not confidentiality, and temporary views are only for short-term session use. This is consistent with Snowflake documentation and best practices around secure views and data sharing.
- A. Incorrect.
Incorrect. A standard view can restrict rows and columns, but it is not the best choice for secure sharing when the provider must protect underlying implementation details. In Snowflake, secure views are specifically intended for cases such as Secure Data Sharing, where the data provider needs stronger confidentiality around the exposed logic and metadata.
- B. Incorrect.
Incorrect. A materialized view improves performance for certain workloads by storing precomputed results, but it is not a substitute for a secure view when the requirement is to protect the view definition and limit exposure of internal details in a data sharing scenario. Performance optimization does not address the security objective in this question.
- C. Correct.
Correct. A secure view is the appropriate object when sharing data externally and the provider must protect the underlying definition and implementation details. Secure views are intended for scenarios where exposing business logic, filtering logic, or base table structure would be inappropriate. This aligns with Snowflake best practices for secure data sharing and controlled external access.
- D. Incorrect.
Incorrect. Temporary views are session-scoped objects meant for short-lived internal work. They are not designed for external sharing and do not provide the security properties required here. Their temporary nature is unrelated to protecting shared logic or metadata.