Account Security and Data Protection
This domain is one of the larger topic areas on the SnowPro Advanced: Architect (ARA-C01) exam under the current (carried-over, unverified) blueprint weighting — tied with Performance Optimization, and second to Design. It tests your ability to design, implement, and troubleshoot enterprise-grade security controls across authentication, network isolation, encryption, access governance, data recovery, and audit. Expect scenario-based questions that require you to pick the right combination of features — not just recognize that a feature exists, but know its exact behavior, defaults, tier requirements, and failure modes.
Authentication
Snowflake supports multiple authentication mechanisms. An architect must know when each applies, what it requires, and how they interact.
| Method | Mechanism | MFA Support | Requires External IdP | Notes |
|---|---|---|---|---|
| Username/Password | Native Snowflake credential | Optional (TOTP via Duo) | No | Default; weakest |
| MFA (Duo) | TOTP pushed via Duo Security | Yes (IS MFA) | No | Enforced via MFA_ENROLLMENT parameter |
| SSO / SAML 2.0 | Federation via external IdP | Delegated to IdP | Yes (Okta, ADFS, Azure AD, etc.) | Uses CREATE SECURITY INTEGRATION with type=SAML2 |
| OAuth | Token-based delegated auth | Delegated to IdP | Yes (Snowflake native OAuth or external) | Two types: Snowflake OAuth, External OAuth |
| Key-Pair Authentication | RSA public/private key (2048-bit minimum) | No (bypass MFA) | No | Required for service accounts; keys rotated manually |
| SCIM Provisioning | User/group lifecycle via SCIM 2.0 API | N/A (provisioning, not auth) | Yes (Okta, Azure AD) | Does not authenticate; provisions users/roles |
Key distinctions:
- Snowflake OAuth issues tokens scoped to Snowflake itself; used by Tableau, PowerBI, and similar BI tools.
- External OAuth validates tokens issued by a third-party authorization server (Azure AD, Okta, Ping) using a
CREATE SECURITY INTEGRATIONoftype=EXTERNAL_OAUTH. - SCIM provisions users and groups but does NOT authenticate them. SCIM-provisioned users still need an auth method.
- Key-pair auth is the recommended authentication method for automated pipelines and service accounts; passwords are discouraged for non-human identities.
- MFA enforcement is controlled via
ALTER ACCOUNT SET MFA_ENROLLMENT = REQUIRED(forces users to enroll) versusOPTIONAL.
Common traps
- Confusing SCIM (provisioning) with SSO (authentication) — they are complementary, not the same.
- Thinking key-pair auth satisfies MFA requirements — it does not; it bypasses MFA.
- External OAuth requires a
SECURITY INTEGRATION; failing to specifyEXTERNAL_OAUTH_ISSUERorEXTERNAL_OAUTH_TOKEN_USER_MAPPING_CLAIMcauses token validation failure. - SAML SSO does not eliminate the need for a Snowflake user object; the user must still exist in Snowflake (SCIM solves this gap).
Network Policies
Network policies control which IP addresses can reach a Snowflake account or specific users.
| Feature | Scope | What It Does |
|---|---|---|
| Network Policy (IP allowlist) | Account or User | Allows/blocks CIDRs; BLOCKED_IP_LIST is evaluated first |
| AWS PrivateLink | Account | Keeps traffic on AWS backbone; no public internet exposure |
| Azure Private Link | Account | Same concept on Azure; requires Business Critical or higher |
| GCP Private Service Connect (PSC) | Account | Same concept on GCP |
Network Policy rules:
ALLOWED_IP_LISTandBLOCKED_IP_LISTare both CIDR lists.BLOCKED_IP_LISTtakes precedence overALLOWED_IP_LIST.- A policy can be applied at the account level (
ALTER ACCOUNT SET NETWORK_POLICY) or user level (ALTER USER SET NETWORK_POLICY). - User-level policy overrides account-level policy for that user.
- Only one network policy can be active per user and one per account at any time.
Private Link requirements:
- Available on Business Critical tier and higher.
- Requires a Snowflake support ticket and customer-side VPC endpoint / private endpoint configuration.
- DNS must be updated so the Snowflake account URL resolves to the private endpoint.
Common traps
- Applying a network policy to a user does not stack with the account-level policy — it replaces it for that user.
- Private Link is a tier-gated feature; Standard and Enterprise accounts cannot use it.
BLOCKED_IP_LISTbeing empty does not mean all IPs are allowed —ALLOWED_IP_LISTmust include the desired CIDRs.- Network policies do not apply to internal stages or Snowflake-managed services communicating internally.
Unlock with a paid plan
12 more sections (about 2,776 words) continue below. Every paid plan unlocks all ARA-C01 study guides, the full question bank and mock exams, from $4.97/month.