Jan Bernhardt created CXF-6763: ---------------------------------- Summary: STS requires ClaimHandler even in ClaimMapping only scenarios Key: CXF-6763 URL: https://issues.apache.org/jira/browse/CXF-6763 Project: CXF Issue Type: Bug Components: STS Affects Versions: 3.1.4 Reporter: Jan Bernhardt Priority: Minor
In case that the STS is used only for token mapping, the STS does not need ClaimHandler to lookup claims from a backend. Example Scenario: Fediz-IDP is used as a RP-IDP only (with no direct user login), but only doing claim mappings. In this case the STS only needs a relationship with a ClaimMapper, but no ClaimHandler are required. The following code within {{org.apache.cxf.sts.operation.TokenIssueOperation}} however checks if ClaimMapper for requested Claims exists and fails if not. {code} //Check if the requested claims can be handled by the configured claim handlers ClaimCollection requestedClaims = providerParameters.getRequestedPrimaryClaims(); checkClaimsSupport(requestedClaims); requestedClaims = providerParameters.getRequestedSecondaryClaims(); checkClaimsSupport(requestedClaims); providerParameters.setClaimsManager(claimsManager); {code} >From my understanding these {{checkClaimsSupport}} can be removed completely, >because the STS will still fail, if the requested Claims are not available in >the end. -- This message was sent by Atlassian JIRA (v6.3.4#6332)