[fix](fe) Add user existence check in DropRowPolicyCommand#63631
Open
heguanhui wants to merge 1 commit into
Open
[fix](fe) Add user existence check in DropRowPolicyCommand#63631heguanhui wants to merge 1 commit into
heguanhui wants to merge 1 commit into
Conversation
Contributor
|
Thank you for your contribution to Apache Doris. Please clearly describe your PR:
|
### What problem does this PR solve? Issue Number: close apache#63322 Problem Summary: DropRowPolicyCommand does not validate whether the user specified in the DROP ROW POLICY statement actually exists. This is inconsistent with CreatePolicyCommand, which checks user existence via doesUserExist(). Without this validation, a typo in the user name could silently match no policy, or the user might mistakenly believe the drop succeeded. Also, the auth check should be performed before user existence check to prevent information leakage. ### Release note DROP ROW POLICY now validates that the specified user exists, returning an error if it does not. This makes the behavior consistent with CREATE ROW POLICY. ### Check List (For Author) - Test: Unit Test, Regression test - Added testValidateUserNotExist in DropRowPolicyCommandTest - Added regression test in test_row_policy.groovy - Behavior changed: Yes. DROP ROW POLICY now throws AnalysisException when the specified user does not exist, whereas previously it would proceed without validation. - Does this need documentation: No
662ecbd to
a91be8d
Compare
Contributor
Author
|
run buildall |
Contributor
TPC-H: Total hot run time: 31503 ms |
Contributor
TPC-DS: Total hot run time: 172836 ms |
Contributor
FE Regression Coverage ReportIncrement line coverage |
morrySnow
approved these changes
May 26, 2026
morrySnow
reviewed
May 26, 2026
| PrivPredicate.GRANT.getPrivs().toString()); | ||
| } | ||
| tableNameInfo.analyze(ctx.getNameSpaceContext()); | ||
| if (user != null) { |
Contributor
There was a problem hiding this comment.
in doris, we maybe use external Authentication Service or use a temporary user. So users do not necessarily always exist in Doris.
Contributor
Author
There was a problem hiding this comment.
This is just to maintain consistency with the user existence verification when creating the policy
Contributor
|
PR approved by at least one committer and no changes requested. |
Contributor
|
PR approved by anyone and no changes requested. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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 problem does this PR solve?
Issue Number: close #63322
Problem Summary: DropRowPolicyCommand does not validate whether the user specified in the DROP ROW POLICY statement actually exists. This is inconsistent with CreatePolicyCommand, which checks user existence via
doesUserExist(). Without this validation, a typo in the user name could silently match no policy, or the user might mistakenly believe the drop succeeded. Also, the auth check should be performed before user existence check to prevent information leakage.Release note
DROP ROW POLICY now validates that the specified user exists, returning an error if it does not. This makes the behavior consistent with CREATE ROW POLICY.
Check List (For Author)
Check List (For Reviewer who merge this PR)