Andrea Cosentino created CAMEL-25405:
----------------------------------------

             Summary: camel-ai-tool - expose a runtime-neutral MCP principal 
name and roles for the AuthorizationPolicies
                 Key: CAMEL-25405
                 URL: https://issues.apache.org/jira/browse/CAMEL-25405
             Project: Camel
          Issue Type: Improvement
          Components: camel-mcp-server
            Reporter: Andrea Cosentino
            Assignee: Andrea Cosentino


Follow-up to CAMEL-24831 (MCP identity propagation, 4.23.0).

On the MCP-server path the authenticated caller is stamped on the tool-route 
exchange as the CamelMcpSecurityPrincipal property holding the RAW runtime 
principal object (for the Vert.x engine, the io.vertx.ext.auth.User from 
ctx.user()). Camel's shipped AuthorizationPolicies (SpiffeSecurityPolicy, 
KeycloakSecurityPolicy, OpaSecurityPolicy, Shiro) cannot read that 
runtime-specific object, so an identity-based policy cannot actually authorize 
an MCP tool call out of the box.

Expose a runtime-neutral view alongside the raw object - e.g. 
CamelMcpSecurityPrincipalName (String) and CamelMcpSecurityPrincipalRoles 
(collection), derived from the transport user - so the shipped policies and 
route authors can authorize on a stable name/roles regardless of the MCP server 
runtime.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to