pki-core: Add missing EC/ML-DSA profiles to EnableEST upgrade scriptlet - #5408
pki-core: Add missing EC/ML-DSA profiles to EnableEST upgrade scriptlet#5408vmishraredhat wants to merge 1 commit into
Conversation
EST deployments using EC or Post-Quantum (ML-DSA) algorithms fail system certificate enrollment with 403 Forbidden because 01-EnableEST.py misses these profiles from ACL updates. This patch adds caECInternalAuthServerCert and the ML-DSA server/subsystem profiles to the upgrade scriptlet. Signed-off-by: eric786 <eric.park786@gmail.com>
|
Caution The consumer version of Gemini Code Assist on GitHub has been sunset. All code review activity has officially ceased. |
📝 WalkthroughWalkthroughThe 11.9.0 EnableEST upgrade script now updates additional internal authentication profile configuration targets for EC Server and ML-DSA Server/Subsystem profiles. ChangesEnableEST internal profile update
Estimated code review effort: 1 (Trivial) | ~2 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@base/server/upgrade/11.9.0/01-EnableEST.py`:
- Around line 93-96: In update_internal_profiles(), replace the early return at
the existing EST ACL check with continue so an already-updated profile does not
stop processing. Ensure every profile, including caECInternalAuthServerCert and
the ML-DSA profiles, is checked independently.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro Plus
Run ID: 21bb1d1d-a3c1-4be4-8d05-b52e2785fbff
📒 Files selected for processing (1)
base/server/upgrade/11.9.0/01-EnableEST.py
| 'caInternalAuthSubsystemCert', | ||
| 'caECInternalAuthServerCert', # Add EC Server profile (Fixes 403 Forbidden on EC EST) | ||
| 'caMLDSAInternalAuthServerCert', # Add ML-DSA Server profile | ||
| 'caMLDSAInternalAuthSubsystemCert' # Add ML-DSA Subsystem profile |
There was a problem hiding this comment.
🎯 Functional Correctness | 🟠 Major | ⚡ Quick win
Do not exit when an earlier profile is already updated.
If caECInternalAuthSubsystemCert or another earlier profile already contains the EST ACL, the return at Lines 107-109 exits update_internal_profiles() before the newly added EC Server and ML-DSA profiles are processed. Partially upgraded installations will therefore still miss these ACLs and can continue returning 403 errors.
Replace that early return with continue so every profile is checked independently.
Proposed fix
if 'group="Enterprise EST Administrators"' in config['authz.acl']:
logger.info('Internal profile ACLs already updated.')
- return
+ continue📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| 'caInternalAuthSubsystemCert', | |
| 'caECInternalAuthServerCert', # Add EC Server profile (Fixes 403 Forbidden on EC EST) | |
| 'caMLDSAInternalAuthServerCert', # Add ML-DSA Server profile | |
| 'caMLDSAInternalAuthSubsystemCert' # Add ML-DSA Subsystem profile | |
| if 'group="Enterprise EST Administrators"' in config['authz.acl']: | |
| logger.info('Internal profile ACLs already updated.') | |
| continue |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@base/server/upgrade/11.9.0/01-EnableEST.py` around lines 93 - 96, In
update_internal_profiles(), replace the early return at the existing EST ACL
check with continue so an already-updated profile does not stop processing.
Ensure every profile, including caECInternalAuthServerCert and the ML-DSA
profiles, is checked independently.
EST deployments using EC or Post-Quantum (ML-DSA) algorithms fail system certificate enrollment with 403 Forbidden because 01-EnableEST.py misses these profiles from ACL updates. This patch adds caECInternalAuthServerCert and the ML-DSA server/subsystem profiles to the upgrade scriptlet.
Summary by CodeRabbit