Object OWNERSHIP
Last updated
Last updated
OWNERSHIP is a special privilege in Snowflake. You should read & fully understand the documentation first.
SnowDDL implementation of OWNERSHIP is following:
Account-level object types are typically owned by SnowDDL admin role
Schema-level objects are typically owned by SCHEMA ROLE (OWNER)
or DATABASE ROLE (OWNER)
which are created automatically.
For schema-level objects OWNERSHIP is assigned using There is no "race condition" between creation of object and change of OWNERSHIP, which is common for other object management tools.
SnowDDL typically creates schemas with MANAGED ACCESS
. It means that users having SCHEMA ROLE (OWNER)
can create / alter / drop objects in such schema, but they cannot grant access to objects in this schema to some other role (e.g. to PUBLIC
).
This is very important for security.