Problem
Other NS8 modules need to manage trunk routing in NethVoice proxy, but there is no dedicated permission for trunk actions. The existing routeadm role only covers domain routes.
Proposed solution
Add a trunkadm permission so authorized modules can create or update, inspect, list, and remove trunk routing rules. Make it available on both fresh installations and upgrades..
QA test cases
Use a test NS8 node with a configured NethVoice destination. Run authorization checks as a caller module without administrator access or broader grants on the proxy.
- Fresh installation: install the updated proxy and verify that
trunkadm grants exactly add-trunk, get-trunk, remove-trunk, and list-trunks.
- Trunk management: grant the caller module only
trunkadm on the proxy. Add a valid trunk rule, retrieve it, list it, update its destination through add-trunk, and remove it. Every action succeeds and the returned configuration reflects each change.
- Access restrictions: verify that the same caller cannot use
add-route or configure-module. A caller without trunkadm or a broader grant cannot invoke any of the four trunk actions.
- Upgrade and regression: upgrade an existing proxy with route and trunk rules. Verify that
trunkadm becomes available, existing rules are preserved, and the trunk management case succeeds. Confirm that existing routeadm callers can still manage domain routes and the proxy retains access to its own actions.
Problem
Other NS8 modules need to manage trunk routing in NethVoice proxy, but there is no dedicated permission for trunk actions. The existing
routeadmrole only covers domain routes.Proposed solution
Add a
trunkadmpermission so authorized modules can create or update, inspect, list, and remove trunk routing rules. Make it available on both fresh installations and upgrades..QA test cases
Use a test NS8 node with a configured NethVoice destination. Run authorization checks as a caller module without administrator access or broader grants on the proxy.
trunkadmgrants exactlyadd-trunk,get-trunk,remove-trunk, andlist-trunks.trunkadmon the proxy. Add a valid trunk rule, retrieve it, list it, update its destination throughadd-trunk, and remove it. Every action succeeds and the returned configuration reflects each change.add-routeorconfigure-module. A caller withouttrunkadmor a broader grant cannot invoke any of the four trunk actions.trunkadmbecomes available, existing rules are preserved, and the trunk management case succeeds. Confirm that existingrouteadmcallers can still manage domain routes and the proxy retains access to its own actions.