check_target_privileges

Function check_target_privileges 

Source
pub async fn check_target_privileges(client: &Client) -> Result<PrivilegeCheck>
Expand description

Check if connected user has sufficient privileges for target database

Queries pg_roles to determine the privileges of the currently connected user. For target databases, the user must have CREATEDB privilege (or be a superuser) to create new databases during migration.

§Arguments

  • client - Connected PostgreSQL client

§Returns

Returns a PrivilegeCheck containing the user’s privileges.

§Errors

This function will return an error if the database query fails.

§Examples

let client = connect("postgresql://user:pass@localhost:5432/mydb").await?;
let privs = check_target_privileges(&client).await?;
assert!(privs.has_create_db || privs.is_superuser);