- Grant privileges on the object to any role.
- Grant roles you own to other users or roles without needing administrator permissions.
- Transfer ownership of the object to another entity.
Supported object types
Firebolt supports ownership at both the organization level and the account level.Organization-level objects
The following organization-level objects support ownership:- Organization
- Account
- Login
- Service account
- Network policy
Account-level objects
The following account-level objects support ownership:- Role
- Location
- User
- Engine
- Database
- Schema
- Table
- View
Viewing object ownership
The current owner of an object can be viewed in the correspondinginformation_schema
view:
Object Type | View |
---|---|
Organization | information_schema.organization |
Account | information_schema.accounts |
Login | information_schema.logins |
Service Account | information_schema.service_accounts |
Network Policy | information_schema.network_policies |
Role | information_schema.enabled_roles |
Location | information_schema.locations |
User | information_schema.users |
Database | information_schema.catalogs |
Engine | information_schema.engines |
Schema | information_schema.schemata |
Table | information_schema.tables |
View | information_schema.views or information_schema.tables |
Indexes inherit ownership from their parent table. In
information_schema.indexes
, the table owner is displayed as the index owner.Changing an object’s owner
You can transfer ownership of an object using the following syntax:- For organization-level objects, you must specify a login or service account.
- For account-level objects, you must specify a user.
Examples of updating ownership permissions
The following examples demonstrate how to change the ownership of different object types.Organization-level objects
Account-level objects
Dropping users that own objects
Before dropping a user who owns objects, you must either drop the objects owned by the owner or transfer ownership of them to another user. The following code example shows how to drop a table that has dependent views not owned by the table’s owner using theCASCADE
parameter to enforce the drop: