Privileges
Use the Catalog API to retrieve information about available privileges on the different types of catalog objects.
Dremio does not support retrieving privilege information for Arctic catalogs and sources.
{
"availablePrivileges": [
{
"grantType": "SPACE",
"privileges": [
"ALTER",
"ALTER_REFLECTION",
"MANAGE_GRANTS",
"MODIFY",
"SELECT",
"VIEW_REFLECTION"
]
},
{
"grantType": "SOURCE",
"privileges": [
"ALTER",
"ALTER_REFLECTION",
"MANAGE_GRANTS",
"MODIFY",
"SELECT",
"VIEW_REFLECTION"
]
},
{
"grantType": "MUTABLE_SOURCE",
"privileges": [
"ALTER",
"ALTER_REFLECTION",
"CREATE_TABLE",
"DELETE",
"DROP",
"INSERT",
"MANAGE_GRANTS",
"MODIFY",
"SELECT",
"TRUNCATE",
"UPDATE",
"VIEW_REFLECTION"
]
},
{
"grantType": "ARP_SOURCE",
"privileges": [
"ALTER",
"ALTER_REFLECTION",
"EXTERNAL_QUERY",
"MANAGE_GRANTS",
"MODIFY",
"SELECT",
"VIEW_REFLECTION"
]
},
{
"grantType": "FOLDER_IN_MUTABLE_SOURCE",
"privileges": [
"ALTER",
"ALTER_REFLECTION",
"CREATE_TABLE",
"DELETE",
"DROP",
"INSERT",
"MANAGE_GRANTS",
"SELECT",
"TRUNCATE",
"UPDATE",
"VIEW_REFLECTION"
]
},
{
"grantType": "FOLDER",
"privileges": [
"ALTER",
"ALTER_REFLECTION",
"MANAGE_GRANTS",
"SELECT",
"VIEW_REFLECTION"
]
},
{
"grantType": "PDS",
"privileges": [
"ALTER",
"DELETE",
"INSERT",
"MANAGE_GRANTS",
"SELECT",
"TRUNCATE",
"UPDATE"
]
},
{
"grantType": "VDS",
"privileges": [
"ALTER",
"MANAGE_GRANTS",
"SELECT"
]
},
{
"grantType": "FUNCTION",
"privileges": [
"ALTER",
"EXECUTE",
"MANAGE_GRANTS",
"MODIFY"
]
}
]
}
Privileges Attributes
[Object]
Information about the privileges that are available to assign to users and roles for each type of object in the catalog. Each availablePrivileges object contains two attributes: grantType and privileges.
Example [ { "grantType": "SPACE", "privileges": [ "ALTER", "ALTER_REFLECTION", "MANAGE_GRANTS", "MODIFY", "SELECT", "VIEW_REFLECTION" ] }, { "grantType": "SOURCE", "privileges": [ "ALTER", "ALTER_REFLECTION", "MANAGE_GRANTS", "MODIFY", "SELECT", "VIEW_REFLECTION" ] }, { "grantType": "MUTABLE_SOURCE", "privileges": [ "ALTER", "ALTER_REFLECTION", "CREATE_TABLE", "DELETE", "DROP", "INSERT", "MANAGE_GRANTS", "MODIFY", "SELECT", "TRUNCATE", "UPDATE", "VIEW_REFLECTION" ] }, { "grantType": "ARP_SOURCE", "privileges": [ "ALTER", "ALTER_REFLECTION", "EXTERNAL_QUERY", "MANAGE_GRANTS", "MODIFY", "SELECT", "VIEW_REFLECTION" ] }, { "grantType": "FOLDER_IN_MUTABLE_SOURCE", "privileges": [ "ALTER", "ALTER_REFLECTION", "CREATE_TABLE", "DELETE", "DROP", "INSERT", "MANAGE_GRANTS", "SELECT", "TRUNCATE", "UPDATE", "VIEW_REFLECTION" ] }, { "grantType": "FOLDER", "privileges": [ "ALTER", "ALTER_REFLECTION", "MANAGE_GRANTS", "SELECT", "VIEW_REFLECTION" ] }, { "grantType": "PDS", "privileges": [ "ALTER", "DELETE", "INSERT", "MANAGE_GRANTS", "SELECT", "TRUNCATE", "UPDATE" ] }, { "grantType": "VDS", "privileges": [ "ALTER", "MANAGE_GRANTS", "SELECT" ] }, { "grantType": "FUNCTION", "privileges": [ "ALTER", "EXECUTE", "MANAGE_GRANTS", "MODIFY" ] } ]
availablePrivileges
grantType
String
Type of the catalog object on which the listed privileges are available.
Note: The SOURCE
type does not include Arctic catalog sources. ARP_SOURCE
refers to relational-database sources.
SPACE, SOURCE, MUTABLE_SOURCE, ARP_SOURCE, FOLDER_IN_MUTABLE_SOURCE, FOLDER, PDS, VDS, FUNCTION
Example SOURCE
privileges
[String]
List of available privileges on the type of the catalog object specified in grantType.
For more information, read Privileges.
Example [ "ALTER", "ALTER_REFLECTION", "MANAGE_GRANTS", "MODIFY", "SELECT", "VIEW_REFLECTION" ]
Retrieving All Catalog Privileges
Retrieve information about the available privileges on each type of object in the catalog.
Dremio does not support retrieving privilege information for Arctic catalogs and sources.
GET /v0/projects/{project-id}/catalog/privileges
Parameters
project-id
path
String (UUID)
Unique identifier of the project that contains the catalog object whose privileges you want to retrieve.
type
query
String
Optional
Type of the catalog object whose available privileges you want to retrieve.
Note: The SOURCE
type does not include Arctic catalog sources.
For more information, read type Query Parameter.
EnumSPACE, SOURCE, MUTABLE_SOURCE, ARP_SOURCE, FOLDER_IN_MUTABLE_SOURCE, FOLDER, PDS, VDS, FUNCTION
Example Request
curl -X GET 'https://api.dremio.cloud/v0/projects/{project-id}/catalog/privileges' \
--header 'Authorization: Bearer <PersonalAccessToken>' \
--header 'Content-Type: application/json'
{
"availablePrivileges": [
{
"grantType": "SPACE",
"privileges": [
"ALTER",
"ALTER_REFLECTION",
"MANAGE_GRANTS",
"MODIFY",
"SELECT",
"VIEW_REFLECTION"
]
},
{
"grantType": "SOURCE",
"privileges": [
"ALTER",
"ALTER_REFLECTION",
"MANAGE_GRANTS",
"MODIFY",
"SELECT",
"VIEW_REFLECTION"
]
},
{
"grantType": "MUTABLE_SOURCE",
"privileges": [
"ALTER",
"ALTER_REFLECTION",
"CREATE_TABLE",
"DELETE",
"DROP",
"INSERT",
"MANAGE_GRANTS",
"MODIFY",
"SELECT",
"TRUNCATE",
"UPDATE",
"VIEW_REFLECTION"
]
},
{
"grantType": "ARP_SOURCE",
"privileges": [
"ALTER",
"ALTER_REFLECTION",
"EXTERNAL_QUERY",
"MANAGE_GRANTS",
"MODIFY",
"SELECT",
"VIEW_REFLECTION"
]
},
{
"grantType": "FOLDER_IN_MUTABLE_SOURCE",
"privileges": [
"ALTER",
"ALTER_REFLECTION",
"CREATE_TABLE",
"DELETE",
"DROP",
"INSERT",
"MANAGE_GRANTS",
"SELECT",
"TRUNCATE",
"UPDATE",
"VIEW_REFLECTION"
]
},
{
"grantType": "FOLDER",
"privileges": [
"ALTER",
"ALTER_REFLECTION",
"MANAGE_GRANTS",
"SELECT",
"VIEW_REFLECTION"
]
},
{
"grantType": "PDS",
"privileges": [
"ALTER",
"DELETE",
"INSERT",
"MANAGE_GRANTS",
"SELECT",
"TRUNCATE",
"UPDATE"
]
},
{
"grantType": "VDS",
"privileges": [
"ALTER",
"MANAGE_GRANTS",
"SELECT"
]
},
{
"grantType": "FUNCTION",
"privileges": [
"ALTER",
"EXECUTE",
"MANAGE_GRANTS",
"MODIFY"
]
}
]
}
Response Status Codes
200
OK
401
Unauthorized
404
Not Found