...
Name | Cardinality | Description |
---|
<Template> | 0 or 1 | The template to use. If a template is not provided, then the output value is produced by appending the input values of each of the input attributes in the order in which they are declared as sources, but this is a DEPRECATED approach. | <SourceAttribute> | 0 or more | DEPRECATED, this is the older means of providing the names of the source attributes which are to be fed into the template
Note that it's usually an anti-pattern to use a <InputDataConnector>
with the allAttributes
property, because this will only work correctly if all the inputs have the same number of values. If you have result sets (e.g. from LDAP) that don't satisfy this rule, just make sure to enumerate the attributes you need. This used to be handled with an extra configuration element called <SourceAttribute>
but this is no longer needed because of the new dependency syntax.
Example
Code Block |
---|
|
<AttributeDefinition id="template" xsi:type="Template">
<InputAttributeDefinition ref="OtherAttr" />
<InputDataConnector ref="myLdap" attributeNames="attrFromLdap" />
<ad:Template>${attrFromLdap}::${OtherAttr}</ad:Template>
<AttributeEncoder xsi:type="SAML2String" name="https://example.org/example/name" friendlyName="templated" />
</AttributeDefinition> |