Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The <QueryTemplate> element provides the template from which the SQL query is built.

Schema Name and Location

This element is defined by the Namespace:urn:mace:shibboleth:2.0:resolver namespace, the schema for which is located at 
Schema: http://shibboleth.net/schema/idp/shibboleth-attribute-resolver.xsd

...

The <QueryTemplate> element provides the template from which the SQL query is built. It carries no attributes or child elements.

Typically the XML "CDATA" construct is used to wrap the text because it avoids the need for special escaping of most characters.

...

languagexml

...

.

...

Attributes

No attributes are defined.

Child Elements

No child elements are defined.

Template Context

As enumerated below, several variables are available to the template context. In practice $resolutionContext.principal and any dependent attributes tend to be most useful.

NameWhen ValidDescription

resolutionContext

alwaysThe AttributeResolutionContext. Commonly useful members include $resolutionContext.principal and $resolutionContext.attributeRecipientID

requestContext

If the springResource attribute is not defined on the containing <DataConnector>The legacy V2SAMLProfileRequestContext, provided for compatibility with most legacy SQL query templates.

foo, bar, etc.

Whenever the enclosing element has a <Dependency> elementFor each IdPAttribute available from all the provided dependencies, the attributes' values are available as a collection under the attribute's name. For the first value, append .get(0) to the attribute name.

Example

Code Block
languagexml
<QueryTemplate>
  <![CDATA[
         SELECT * FROM people WHERE userid='$resolutionContext.principal'
  ]]>
</QueryTemplate>