HIVE-28739: support restricting users to create deferred view #5634
+28
−4
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What changes were proposed in this pull request?
I suggest a new configuration "metastore.users.restricted_to_deferred_view" to support a feature that makes some of proxyusers to be forced to create deferred view.
Why are the changes needed?
In our environment, we use Impala with HiveMetastore. Since "impala" user is a proxy user, if I create a view through Impala, it will create a view, not a deferred view. (impala doesn't have impersonation support)
In our policy, we want to force users to create deferred view if there is no special reason not to create deferred view in order to follow permissions of source tables.
So I tried to exclude "impala" user from proxy user, there is some bottle neck and the change even causes impala cluster hang. I guess that with HiveMetastoreAuthorizer, impala cannot skip authorization if I exclude "impala" user from proxy user.
Also, on impala side, Ranger authorization is already applied. It is meaningless because the same hive policy applied already on impala side.
Therefore, I gave up to exclude "impala" user from proxy user.
Does this PR introduce any user-facing change?
No.
Is the change a dependency upgrade?
No.
How was this patch tested?
Our internal Hadoop cluster.