Identity providers can use OpenID extensions to obtain and communicate user attributes to consumers.
The attribute exchange extension provides identity providers the ability to communicate user attributes to consumers.
The Attribute Exchange Extension (AX) protocol can be extended to accommodate varying types of attributes and multi-valued attributes. The attributes are identified by a unique URI and typically correspond to personal identity information. For more information see OpenID documentation at: http://openid.net/specs/openid-attribute-exchange-1_0.html
Attribute Exchange Extension provides strict compatibility with OpenID 2.0. You can use either or both extensions simultaneously. Use Attribute Exchange Extension unless you need to be compatible with older OpenID 1.1 implementations that only support SREG.
As an administrator, you can add a set of parameters to the OpenID login form posted to the login endpoint.
<form name="openidLoginForm" method="post" action="https://sp.example.com/FIM/sps/openidsp/openid/login"> <input name="openid.mode" type="hidden" value="checkid_setup"> <input name="openid.ax.required" type="hidden" value="axemail"> <input name="openid.ax.if_available" type="hidden" value="axfullname,axdob,axfriends,axgroups"> <input name="openid.ax.type.axemail" type="hidden" value="http://axschema.org/contact/email"> <input name="openid.ax.type.axfullname" type="hidden" value="http://axschema.org/namePerson"> <input name="openid.ax.type.axdob" type="hidden" value="http://axschema.org/birthDate"> <input name="openid.ax.type.axfriends" type="hidden" value="http://example.com/myschema/friends"> <input name="openid.ax.count.axfriends" type="hidden" value="5"> <input name="openid.ax.type.axgroups" type="hidden" value="http://example.com/myschema/groups"> <input name="openid.ax.count.axgroups" type="hidden" value="unlimited"> <input name="TARGET" type="hidden" value="https://sp.example.com/myapp"> <input name="openid_identifier" type="text"> <input value="OpenID Login" type="submit"> </form>
Tivoli® Federated Identity Manager sends parameters to the identity provider during checkid_immediate and checkid_setup requests. The fetch messages sent with the request retrieves the user's personal identity attributes. For additional information about fetch messages see the OpenID documentation: http://openid.net/specs/openid-attribute-exchange-1_0.html#fetch
The Attribute Exchange Extension supports an information model that combines a subject identifier, an attribute type identifier, a count, and a value. Including additional parameters attaches the Attribute Exchange Extension fetch request on a standard authentication request. To enable the consumer to retrieve information from the identity provider, specify the following form field parameters in the login form.
After granting access to an identity provider, a fetch response message supplies the information in the fetch request parameters. The following optional fetch response parameters specify the retrieved personal attributes from the identity provider.