Discovery may be used also in embedded fashion. For that to work authentication needs to be triggered from a page that includes javascript that provides the functionality. Here we provide examples for Shibboleth SP and SimpleSAMLphp.
Shibboleth SP
This example relies on having eduTEAMS discovery set as default login handler discovery service.
<SSO discoveryProtocol="SAMLDS" discoveryURL="https://discovery.eduteams.org/wayf.php"> SAML2 SAML1 </SSO>
If you use the discovery in embedded fashion you need to include javascript in head
element on the page triggering the authentication,
<head> <!-- HTML elements --> <script type="text/javascript" src="https://discovery.eduteams.org/ds.js"></script> <!-- HTML elements --> </head>
and then display the element itself that triggers the authentication as defined in default handler.
<a href="/Shibboleth.sso/Login" onclick="startOverlay(event)">Log in</a>
As a result the discovery is shown in embedded fashion.
SimpleSAMLphp
This example relies on having eduTEAMS discovery set as default sp discovery service.
'default-sp' => array( 'saml:SP', 'entityID' => 'https://sp.example.com/simplesaml/', 'idp' => NULL, 'discoURL' => 'https://discovery.eduteams.org/wayf.php', 'privatekey' => 'example.key' ),
If you use the discovery in embedded fashion you need to include javascript in head
element on the page triggering the authentication,
<head> <!-- HTML elements --> <script type="text/javascript" src="https://discovery.eduteams.org/ds.js"></script> <!-- HTML elements --> </head>
and then display a element triggering the authentication.
<a href="/simplesaml/module.php/core/authenticate.php" onclick="startOverlay(event)">Log in</a>