github-actions[bot] commented on code in PR #69623:
URL: https://github.com/apache/doris/pull/69623#discussion_r4376054229
##########
fe/fe-core/src/main/java/org/apache/doris/service/FrontendServiceImpl.java:
##########
@@ -1476,10 +1477,11 @@ public TLoadTxnBeginResult
loadTxnBegin(TLoadTxnBeginRequest request) throws TEx
}
private TLoadTxnBeginResult loadTxnBeginImpl(TLoadTxnBeginRequest request,
String clientIp) throws UserException {
+ UserIdentity txnUser = null;
Review Comment:
[P2] Record an owner when an ordinary load carries auth_code
`txnUser` stays null in the `isSetAuthCode()` branch, but that branch is
reachable through the ordinary authenticated HTTP producer: `parse_basic_auth`
accepts any numeric `auth_code` header and `set_request_auth` forwards it
instead of the password. For example, Alice can prepare
`/api/db/table/_stream_load` with valid Basic credentials,
`two_phase_commit:true` and `auth_code:1`; FE authenticates her before
redirecting, but this begin call stores no owner. Planning and precommit also
accept that branch. Bob can then commit or abort the new transaction by ID or
label using his own Basic credentials and LOAD grant, because
`checkTransactionUser` treats it as legacy/internal. This affects the in-scope
ordinary producer in both modes, independently of the excluded SQL HTTP path.
Reject the deprecated header for external loads or preserve a verified
authenticated owner through this branch, and cover this producer variant in the
two-user test.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]