Privileges enterprise
Use the Catalog API to retrieve information about available privileges on the different types of catalog objects.
Privileges Object{
"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 grant types and 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.
Enum
SPACE
,
SOURCE
,
MUTABLE_SOURCE
,
ARP_SOURCE
,
FOLDER_IN_MUTABLE_SOURCE
,
FOLDER
,
PDS
,
VDS
,
FUNCTION
Example
SPACE
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.
Method and URLGET /api/v3/catalog/privileges
Parameters
type
query
String
Optional
Type of the catalog object whose available privileges you want to retrieve. For more information, read type Query Parameter.
Enum
SPACE
,
SOURCE
,
MUTABLE_SOURCE
,
ARP_SOURCE
,
FOLDER_IN_MUTABLE_SOURCE
,
FOLDER
,
PDS
,
VDS
,
FUNCTION
Example Request
curl -X GET 'https://{hostname}/api/v3/catalog/privileges' \
--header 'Authorization: _dremio{tokenstring}' \
--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