snowflake.core.database_role.DatabaseRoleResource | Snowflake Documentation (original) (raw)

class snowflake.core.database_role.DatabaseRoleResource(name: str, collection: DatabaseRoleCollection)

Bases: DatabaseObjectReferenceMixin[DatabaseRoleCollection]

Represents a reference to a Snowflake database role.

With this database role reference, you can delete roles.

Attributes

database

The DatabaseResource this reference belongs to.

qualified_name

Return the qualified name of the object this reference points to.

root

The Root object this reference belongs to.

Methods

clone(target_database_role: str, target_database: str | None = None, mode: CreateMode = CreateMode.error_if_exists) → DatabaseRoleResource

Drop this database role.

Parameters:

Examples

Creating a database role clone using its reference:

new_database_role_reference = database_role_reference.clone("new-role-name")

clone_async(target_database_role: str, target_database: str | None = None, mode: CreateMode = CreateMode.error_if_exists) → PollingOperation[DatabaseRoleResource]

An asynchronous version of clone().

Refer to PollingOperation for more information on asynchronous execution and the return type.

drop(if_exists: bool | None = None) → None

Drop this database role.

Parameters:

if_exists (bool) – Check the existence of this database role before dropping it. Default is None, which is equivalent to False.

Examples

Deleting a database role using its reference:

database_role_reference.drop()

Deleting a database role using its reference if it exists:

database_role_reference.drop(if_exists=True)

drop_async(if_exists: bool | None = None) → PollingOperation[None]

An asynchronous version of drop().

Refer to PollingOperation for more information on asynchronous execution and the return type.

grant_future_privileges(privileges: list[str], securable_type: str, containing_scope: ContainingScope, grant_option: bool | None = None) → None

Grant privileges on all future securables matching the criteria to this database role.

Parameters:

Examples

Using a database role reference to grant privileges on all future schemas in a database to it:

database_role_reference.grant_future_privileges(["CREATE", "USAGE"], "schema", ContainingScope(database="test_db"))

grant_future_privileges_async(privileges: list[str], securable_type: str, containing_scope: ContainingScope, grant_option: bool | None = None) → PollingOperation[None]

An asynchronous version of grant_future_privileges().

Refer to PollingOperation for more information on asynchronous execution and the return type.

grant_privileges(privileges: list[str], securable_type: str, securable: Securable | None = None, grant_option: bool | None = None) → None

Grant privileges on a securable to this database role.

Parameters:

Examples

Using a database role reference to grant privileges to it:

database_role_reference.grant_privileges(["CREATE", "USAGE"], "database", Securable(database="test_db"))

grant_privileges_async(privileges: list[str], securable_type: str, securable: Securable | None = None, grant_option: bool | None = None) → PollingOperation[None]

An asynchronous version of grant_privileges().

Refer to PollingOperation for more information on asynchronous execution and the return type.

grant_privileges_on_all(privileges: list[str], securable_type: str, containing_scope: ContainingScope, grant_option: bool | None = None) → None

Grant privileges on all securables matching the criteria to this database role.

Parameters:

Examples

Using a database role reference to grant privileges on all schemas in a database to it:

database_role_reference.grant_privileges_on_all(["CREATE", "USAGE"], "schema", ContainingScope(database="test_db"))

grant_privileges_on_all_async(privileges: list[str], securable_type: str, containing_scope: ContainingScope, grant_option: bool | None = None) → PollingOperation[None]

An asynchronous version of grant_privileges_on_all().

Refer to PollingOperation for more information on asynchronous execution and the return type.

grant_role(role_type: str, role: Securable) → None

Grant a role to this database role.

Parameters:

Examples

Using a database role reference to grant a role to it:

database_role_reference.grant("database role", Securable(name="test_role"))

grant_role_async(role_type: str, role: Securable) → PollingOperation[None]

An asynchronous version of grant_role().

Refer to PollingOperation for more information on asynchronous execution and the return type.

iter_future_grants_to(show_limit: int | None = None) → Iterator[Grant]

List future grants to this database role.

Lists all privileges on new (i.e. future) objects of a specified type in a database or schema granted to the database role.

Parameters:

show_limit (int , optional) – Limit of the maximum number of rows returned by iter(). The default is None, which behaves equivalently to show_limit=10000. This value must be between 1 and 10000.

Examples

Using a database role reference to list future grants to it:

database_role_reference.iter_future_grants_to()

iter_future_grants_to_async(show_limit: int | None = None) → PollingOperation[Iterator[Grant]]

An asynchronous version of iter_future_grants_to().

Refer to PollingOperation for more information on asynchronous execution and the return type.

iter_grants_to(show_limit: int | None = None) → Iterator[Grant]

List grants to this database role.

Lists all privileges and roles granted to the database role.

Parameters:

show_limit (int , optional) – Limit of the maximum number of rows returned by iter(). The default is None, which behaves equivalently to show_limit=10000. This value must be between 1 and 10000.

Examples

Using a database role reference to list grants to it:

database_role_reference.iter_grants_to()

iter_grants_to_async(show_limit: int | None = None) → PollingOperation[Iterator[Grant]]

An asynchronous version of iter_grants_to().

Refer to PollingOperation for more information on asynchronous execution and the return type.

revoke_future_privileges(privileges: list[str], securable_type: str, containing_scope: ContainingScope, mode: DeleteMode | None = None) → None

Revoke privileges on all future securables matching the criteria from this database role.

Parameters:

Examples

Using a database role reference to revoke privileges on all future schemas in a database from it:

database_role_reference.revoke_future_privileges(["CREATE", "USAGE"], "schema", ContainingScope(database="test_db"))

revoke_future_privileges_async(privileges: list[str], securable_type: str, containing_scope: ContainingScope, mode: DeleteMode | None = None) → PollingOperation[None]

An asynchronous version of revoke_future_privileges().

Refer to PollingOperation for more information on asynchronous execution and the return type.

revoke_grant_option_for_future_privileges(privileges: list[str], securable_type: str, containing_scope: ContainingScope, mode: DeleteMode | None = None) → None

Revoke grant option for privileges on all future securables matching the criteria from this database role.

Parameters:

Examples

Using a database role reference to revoke grant option for privileges on all future schemas in a database from it:

database_role_reference.revoke_grant_option_for_future_privileges(["CREATE", "USAGE"], "schema", ContainingScope(database="test_db"))

revoke_grant_option_for_future_privileges_async(privileges: list[str], securable_type: str, containing_scope: ContainingScope, mode: DeleteMode | None = None) → PollingOperation[None]

An asynchronous version of revoke_grant_option_for_future_privileges().

Refer to PollingOperation for more information on asynchronous execution and the return type.

revoke_grant_option_for_privileges(privileges: list[str], securable_type: str, securable: Securable | None = None, mode: DeleteMode | None = None) → None

Revoke grant option for privileges on a securable from this database role.

Parameters:

Examples

Using a database role reference to revoke grant option for privileges from it:

database_role_reference.revoke_grant_option_for_privileges(["CREATE", "USAGE"], "database", Securable(database="test_db"))

revoke_grant_option_for_privileges_async(privileges: list[str], securable_type: str, securable: Securable | None = None, mode: DeleteMode | None = None) → PollingOperation[None]

An asynchronous version of revoke_grant_option_for_privileges().

Refer to PollingOperation for more information on asynchronous execution and the return type.

revoke_grant_option_for_privileges_on_all(privileges: list[str], securable_type: str, containing_scope: ContainingScope, mode: DeleteMode | None = None) → None

Revoke grant option for privileges on all securables matching the criteria from this database role.

Parameters:

Examples

Using a database role reference to revoke grant option for privileges on all schemas in a database from it:

database_role_reference.revoke_grant_option_for_privileges_on_all(["CREATE", "USAGE"], "schema", ContainingScope(database="test_db"))

revoke_grant_option_for_privileges_on_all_async(privileges: list[str], securable_type: str, containing_scope: ContainingScope, mode: DeleteMode | None = None) → PollingOperation[None]

An asynchronous version of revoke_grant_option_for_privileges_on_all().

Refer to PollingOperation for more information on asynchronous execution and the return type.

revoke_privileges(privileges: list[str], securable_type: str, securable: Securable | None = None, mode: DeleteMode | None = None) → None

Revoke privileges on a securable from this database role.

Parameters:

Examples

Using a database role reference to revoke privileges from it:

database_role_reference.revoke_privileges(["CREATE", "USAGE"], "database", Securable(database="test_db"))

revoke_privileges_async(privileges: list[str], securable_type: str, securable: Securable | None = None, mode: DeleteMode | None = None) → PollingOperation[None]

An asynchronous version of revoke_privileges().

Refer to PollingOperation for more information on asynchronous execution and the return type.

revoke_privileges_on_all(privileges: list[str], securable_type: str, containing_scope: ContainingScope, mode: DeleteMode | None = None) → None

Revoke privileges on all securables matching the criteria from this database role.

Parameters:

Examples

Using a database role reference to revoke privileges on all schemas in a database from it:

database_role_reference.revoke_privileges_on_all(["CREATE", "USAGE"], "schema", ContainingScope(database="test_db"))

revoke_privileges_on_all_async(privileges: list[str], securable_type: str, containing_scope: ContainingScope, mode: DeleteMode | None = None) → PollingOperation[None]

An asynchronous version of revoke_privileges_on_all().

Refer to PollingOperation for more information on asynchronous execution and the return type.

revoke_role(role_type: str, role: Securable) → None

Revoke a role from this database role.

Parameters:

Examples

Using a database role reference to revoke a role from it:

database_role_reference.revoke("database role", Securable(name="test_role"))

revoke_role_async(role_type: str, role: Securable) → PollingOperation[None]

An asynchronous version of revoke_role().

Refer to PollingOperation for more information on asynchronous execution and the return type.