Shib3 Login Page - Faking MDUI for SPs who don't specify it

Cantor, Scott cantor.2 at osu.edu
Tue Mar 15 11:23:20 EDT 2016


> On our previous Shib2 login page, we utilized ECMAScript and file system
> access to basically store friendly service names for Service Providers that
> didn't natively provide it in MDUI elements in their metadata, so that we
> could provide a friendly name in all cases when a user logs in via our IdP. In
> the absence of a service name, we'd loop through lines of our own .txt file,
> comparing EntityIDs and print out the value we have stored, or at worst, a
> "generic" message if no mapping was found.

One way you could do this is to write a MetadataFIlter (an OpenSAML interface) to inject the MDUI information at runtime).

> 1.       The obvious one - figure out how to add a Java class that provides this
> data to login.vm

If the question is how to inject the class, that's a supported feature now, there's a hook in global.xml to do that.

> 2.       Use basic VTL language on the login.vm page to do something like the
> following:

Right, ugly but possible. I do that myself, but only for a very limited legacy set of customizations.

> 3.       Directly edit other SP's metadata locally to force in MDUI elements that
> the existing login page already understands how to display.

The filter approach would let you inject it on the fly if that's more palatable.

> 4.       Switch back to a JSP login page to use ECMAScript as we were doing
> before.

I wouldn't really do that, but YMMV.

-- Scott




More information about the users mailing list