How to implement discovery service with node js application?

Peter Schober peter.schober at univie.ac.at
Wed May 16 03:57:00 EDT 2018


* dalipcse91 <dalipcse91 at gmail.com> [2018-05-16 08:52]:
> I hosted mvc app on IIS with SSO ISAPI filter to intercept request. When i
> trying to access url : http://localhost/Shibboleth.sso/Login it redirect me
> to discovery url, from where i can select IDP for authenticate.
> *Now problem is with angular app (Hosted by node.js server).

Angular is a framework for client-side applications, i.e., they're
running on the JS interpreter of the web browser. But you're saying
your "angular app [is] (Hosted by node.js server)"?
Well, if it's running on the server then it's just like any other
(traditional) web application and you use the Shibboleth SP software
like usual. In this case by proxying to the Node.js web server from
Apache httpd (or a patched Nginx) and the Shibboleth SP, and using
provided session data from HTTP Request Headers set by the Shib SP.

> my first question is:
> 1. How i attach shibboleth .sso filter with angular app?

If things were the way you said (server-side application) then the
same way you'd use any other web application or framework with the
Shibboleth SP. (Whatever "attaching shibboleth .sso filter" means.)

> 2. How can i use discovery service with angualr 2 app.?

I guess you could either implement IDP Discovery within the
application, using the Shib SP's /Shibboleth.sso/DiscoFeed JSON as
basis (just like the Shibboleth EDS does, which is also a client-side
application in pure JavaScript+HTML+CSS).

Or you'd use the SAML IDP Discovery Protocol as specified by OASIS
(and implemented by e.g. the Shibboleth EDS or many other projects),
i.e., based on HTTP GET and redirects as per the specification.

> Looking for valuable response.

Stating the opposite ("Looking for useless resonses") would be rather
original.

-peter


More information about the users mailing list