Fix osmo-admin internal endpoint denial#1076
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: 📒 Files selected for processing (5)
📝 WalkthroughWalkthroughThis PR converts the ChangesAuthorization admin role explicit denial
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Warning There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure. 🔧 golangci-lint (2.12.2)level=error msg="[linters_context] typechecking error: pattern ./...: directory prefix . does not contain main module or its selected dependencies" Comment |
Summary
This restores the intended osmo-admin boundary for internal OSMO endpoints. The admin role still gets broad
*:*access, but now has an explicitDeny internal:*policy so operator, logger, and router backend endpoints remain reserved for the service roles that own them.Root Cause
The semantic default role kept the admin allow-all policy but replaced the old path-based internal deny rules with an empty policy. Because the authz sidecar only denies when a matching Deny policy exists, the empty policy did not block anything.
Validation
go test ./service/authz_sidecar/serverbazelisk test //src/utils/connectors/tests:test_default_roles //src/service/authz_sidecar/server:server_test //src/service/authz_sidecar/server:server_integration_testSummary by CodeRabbit
Bug Fixes
Tests