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.
📝 Description
overview
Apache Ranger is a framework to enable, monitor and manage comprehensive data security across the Hadoop platform. Apache ranger.
There is currently a lack of metadata authentication solutions in the industry. Although Apache ranger provides hiveserver authentication solutions, this has limited support for hive-cli, spark-submit and other scenarios. The solution we designed is to reuse the ranger hiveserver plugin in waggle-dance to achieve permission control on the metadata side.
This solution has the following limitations:
Row level filtering
,Data masking
, etc., and only implements authentication.user
andgroup
in the Kerberos environment is implemented (other methods need to be expanded inRangerWrappingHMSHandler
)implement
We implement the
RangerWrappingHMSHandler
likeTokenWrappingHMSHandler
. Intercept the metastore API request and obtain the db and table fields, and then perform ranger authentication.Considering that a hive statement may execute multiple API requests (select statements will execute multiple get_table requests), we designed a gauva cache to cache a copy of permission information in memory.
🔗 Related Issues