CalvinKirs opened a new pull request, #67286:
URL: https://github.com/apache/doris/pull/67286

   ### What problem does this PR solve?
   
   Issue Number: N/A
   
   Problem Summary:
   
   The authentication plugin API-version gate rejects every plugin jar that 
does not contain `Doris-Authentication-Plugin-Api-Version`. Authentication 
plugins were distributed before this manifest contract existed, so upgrading FE 
breaks those legacy artifacts even when they implement the current v1 API.
   
   This change adds an opt-in legacy mapping to the generic API gate and 
configures only the authentication family to treat a genuinely absent 
declaration as API 1.0:
   
   - unversioned legacy authentication plugins load with an operator warning;
   - empty, malformed, and explicitly incompatible declarations remain rejected;
   - connector, filesystem, lineage, and other strict gates keep their existing 
fail-closed behavior;
   - when the FE authentication API moves to another major, legacy v1 plugins 
are rejected automatically.
   
   Enterprise OIDC regression fixes for the Iceberg Groovy concatenation and 
invalid-token preflight are separate because those cases live in the 
enterprise-plugins repository.
   
   ### Release note
   
   Preserve compatibility with legacy unversioned authentication plugins when 
upgrading to a Doris FE that serves authentication plugin API 1.x.
   
   ### Check List (For Author)
   
   - Test
       - [ ] Regression test
       - [x] Unit Test
       - [ ] Manual test (add detailed scripts or steps below)
       - [ ] No need to test or manual test.
   
     Ran:
   
     `mvn -f fe/pom.xml -pl 
fe-extension-loader,fe-authentication/fe-authentication-handler -am test`
   
     Focused results:
     - `ApiVersionGateTest`: 16 passed
     - `AuthenticationPluginManagerTest`: 20 passed
     - Maven reactor and Checkstyle: passed
   
   - Behavior changed:
       - [ ] No.
       - [x] Yes. Missing authentication plugin API declarations are treated as 
legacy API 1.0 and logged; explicit incompatible declarations are still 
rejected.
   
   - Does this need documentation?
       - [x] No.
       - [ ] Yes.
   
   ### Check List (For Reviewer who merge this PR)
   
   - [ ] Confirm the release note
   - [ ] Confirm test cases
   - [ ] Confirm document
   - [ ] Add branch pick label
   


-- 
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]

Reply via email to