Grant Ownership Snowflake


Grant Ownership Snowflake

Understanding and Using “GRANT OWNERSHIP” in Snowflake

In a cloud-based data warehousing platform like Snowflake, where roles govern access and permissions, the concept of ownership plays a crucial role in managing objects and data. The GRANT OWNERSHIP command is a fundamental tool that helps administrators transfer ownership of Snowflake objects between roles, providing flexibility and control over object management.

What is Ownership in Snowflake?

In Snowflake, the role that creates an object (such as a database, schema, table, view, etc.) automatically becomes its owner. The owner possesses the following vital privileges:

  • Total Control: The owner can modify or drop the object.
  • Granting Privileges: The owner can grant other roles the ability to use or manage the object.
  • Transferring Ownership: The owner can use the GRANT OWNERSHIP command to transfer ownership to a different role.

Why Change Ownership?

Several scenarios might necessitate transferring object ownership in Snowflake:

  • Role Transitions: When an administrator leaves a company or changes responsibilities, it might be necessary to reassign ownership of objects they created to another role.
  • Organizational Restructure: If roles are merged, split, or renamed, ownership adjustments might align the permissions structure with the new organization.
  • Security Best Practices: Transferring ownership can facilitate the separation of duties or help implement least-privilege principles for enhanced security.

Using the GRANT OWNERSHIP Command

Here’s the basic syntax of the GRANT OWNERSHIP command:


GRANT OWNERSHIP ON <object_type> <object_name> TO ROLE <role_name> [COPY CURRENT GRANTS];

Use code with caution.


Things to keep in mind:

  • MANAGE GRANTS Privilege: Only roles with the MANAGE GRANTS privilege can transfer ownership, except when transferring ownership from the current role to a child role in the hierarchy.
  • COPY CURRENT GRANTS: This optional clause automatically copies all existing privileges on the object to the new owner.
  • Outbound Privileges: The GRANT OWNERSHIP statement will be blocked if other roles have privileges on the object. You should revoke outbound privileges first.


Let’s say you want to transfer ownership of the schema “MARKETING_DATA” from the role “ANALYST” to the role “DATA_ADMIN”:



Use code with caution.


Important Considerations

  • Revoking Ownership: You cannot directly revoke ownership. The previous owner must transfer ownership to another role.
  • Shares and Connections: Ownership of shares and connections cannot be transferred; these are tied to the ACCOUNT ADMIN role.
  • Managed Access Schemas: Future grants on objects within Managed Access Schemas have restrictions, as ownership can only be transferred to subordinate roles of that schema’s owner

Best Practices

  • Review object ownership to ensure it aligns with your organizational structure and security requirements.
  • Document ownership changes and the reasons behind them for better governance.

In Conclusion

The GRANT OWNERSHIP command is a powerful tool for managing object control in Snowflake. Understanding its use cases, syntax, and limitations is essential for effective data warehouse administration and maintaining a secure and well-organized Snowflake environment.

You can find more information about  Snowflake  in this  Snowflake



Unogeeks is the No.1 IT Training Institute for SAP  Training. Anyone Disagree? Please drop in a comment

You can check out our other latest blogs on  Snowflake  here –  Snowflake Blogs

You can check out our Best In Class Snowflake Details here –  Snowflake Training

Follow & Connect with us:


For Training inquiries:

Call/Whatsapp: +91 73960 33555

Mail us at:

Our Website ➜

Follow us:





Leave a Reply

Your email address will not be published. Required fields are marked *