SAML authentication with client certificate but without user interaction using ITfoxtec.Identity.Saml2 - saml-2.0

I need to call a SOAP webservice using SAML authentication.
They expect the saml token as part of the SOAP request(This should not be a problem).
The actual authentication on the IDP must be done using a client certificate (private key), but without any user interaction.
As far as i understand are the samples on https://www.itfoxtec.com/IdentitySaml2 are based on browser based redirection authentication.
Question: Is it possible to authenticate on an IDP via client certificate without user interaction using the ITfoxtec.Identity.Saml2 library?
If yes, could you point me in the direction of how to do this, or is there even a sample for such a use case?

No it is not possible to authenticate on an IdP via a client certificate without user interaction using the ITfoxtec.Identity.Saml2 library. The library support SAML 2.0 and SAML 2.0 profile (browser based redirect/post login and logout).
Inested you need to use WS-Trust and SAML 2.0 which is supported by .NET.

Related

How to do Non Interactive User Login from browser for SAML SSO flow between IDP and SP

I am unable to find Api's on implementing SAML authentication flow for the SP Application programmatically without user's to manually enter their credentials on SAML compliant IDP( SAP IAS) login screen configured for the SP application as a starting point , I have established the trust between the the IDP and SP application ,trying to implement non interactive login from browser , is there any way to implement this approach.
According to the saml standards you can't send password via saml authn request, therefore you will not be able to authenticate from idp without redirecting to idp login using saml. But if you have control over idp you can implement a shared cookie concept to achve this requirement, but then this is no more saml compliant.
SAML was never designed for machine-to-machine authorization. The closest (IMO) that you can safely get while staying inside intended usage and specs is passing a SAML assertion wrapped in a WS-Trust STS transaction.
I would suggest you look into either WS-Trust or OAuth. Either of these are built for machine-to-machine transactions.

SAML enabling a web/mobile application

We have a web application where the appThe lication is downloaded to the client using appcache and runnig int the client. It gets data into to via ajax calls. What it differes from the rest it we do not have a web server but the whole application is downloaded to the client is via an unauthenticated API call (via middleware server). Once the pages are downloaded to th client the login page is loaded and upon successful authentication the client will get a token for the session.
Now we want to secure this with SAML. But since we do not have a web server per say there is no way we can specify a URL (ACS) to redirect in SAML.
How do people implement SAML in this type of scenarios?
SAML only works through browser redirects.
You also have to have an IDP that supports SAML 2.0 e.g. ADFS.
The interaction is between the SAML application and the IDP. There is no 3rd party.
SAML is not ideal for mobile. OpenID Connect is a better choice. Either way, you have to add a client-side stack that supports the protocol to your application.
Also, SAML does not have a web API flow. OIDC does.

Does LDAP support SAML 2.0 requests?

I am working on a project where we are planning to use SAML 2.0 to send authentication requests to OpenLDAP. Can someone please tell me if its supported or not? I am not able to get the clear answer via Google.
SAML and LDAP are completely different things. SAML is mostly used for Web-based SSO. The identity provider (IdP) part of the access manager software/system you're using (i.e., the one that implements SAML authentication authority) may use a back-end LDAP server (e.g., OpenLDAP) for authenticating users.

IdP initiated SSO using custom library

I have a custom MVC solution based on user login through database based user validation. Now I want to send a SAML token by doing a IDP initiated SSO which will send my user data to service provider using X.509 based encryption.
I don't want to use any external Identity Provider for that. Is there any open source Java library through which I can generate a SAML token from my custom JEE application?
There are a number detailed here: SAML : SAML connectivity / toolkit.

How do I implement SAML in my application

I am using a SaaS application and I want to use our own LDAP to Login to that 3rd party application. I want to provide a link to that application in my Portal. Both the applications are hosted in Cloud and are Spring based.
Please let me know where to Start and how to go about implementing SP initiated SAML.
Thanks!
First of all you need a SAML IDP that authenticates against LDAP e.g. shibboleth.
Then you need a client side SAML stack.
Refer: SAML : SAML connectivity / toolkit.
You could also look at IDaaS e.g. Auth0 or Okta.

Resources