Configuring Delegation for Clients
Impala supports user and group delegation for client connections.
When users submit Impala queries through a separate application, such
as Hue or a business intelligence tool, typically all requests are
treated as coming from the same user. Impala supports delegation
where users whose names you specify can delegate the execution of a
query to another user. The query runs with the privileges of the
delegated user, not the original authenticated user.
You also have an option to delegate using groups. Instead of listing a large number of delegated users, you can create a group of those users and specify the delegated group name in the Impalad startup option. The client sends the delegated user name, and Impala performs an authorization to see if the delegated user belongs to a delegated group.
The name of the delegated user is passed using the HiveServer2
protocol configuration property impala.doas.user
when
the client connects to Impala.
doAs
parameter can be specified in the HTTP path. For
example:/?doAs=delegated_user
Currently, the delegation feature is available only for Impala queries submitted through application interfaces such as Hue and BI tools. For example, Impala cannot issue queries using the privileges of the HDFS user.