SP Initiated SSO - ADFS 2.0 - asp.net

I've been trying to implement the SP initiated SSO with ADFS 2.0 configuration. But I could not find any solution to do that.
Not sure if the ADFS 2.0 supports the SP initiated SSO. I can see there are some third party libraries to do that but I don't want to use any third party libraries. I just need information on posting SAML request to identity provider and getting the SAML assertion back to the survive provider.
Here Service Provider is my application(asp.net) is and ADFS 2.0 is the Identity Provider.
Any idea how I can achieve this.
Thanks.

Your problem isn't ADFS - it's ASP.NET.
.NET has no SAML support. You need a third-party stack.
Refer: SAML : SAML connectivity / toolkit.
ADFS definitely supports the SP initiated SSO flow.

Related

How to Validate Azure AD SAML 2.0 Assertion in C# using ITfoxtec Identity SAML 2.0 library

My project technology is ASP.NET Webforms (.NET framework 4.6.2).
We are using "ITfoxtec Identity SAML 2.0" library for Azure AD SAML Authentication. The sample code present in Itfoxtech website was helpful but, my manager asked me, how you are validating saml assertion once user login was successful? But, I didn't find any documentation regading validating saml assertion when user login successful. can you please let me know how to do that? I am not aware of SAML before, hence, could you please explain in details?
Validating Azure AD SAML Assertion in ASP.NET Webforms applicaiton
The SAML 2.0 assertion is part of the SAML 2.0 authn response sendt from Azure AD. The ITfoxtec Identity SAML 2.0 library validates the authn response and the assertion. By validating the signature(s), issuer, audience and time.

Saml 2.0 authentication setup for an ASP.Net application with OpenAM as IDP

I have an existing ASP.net application with OpenAM as SSO, and there is now a requirement to implement SAML 2.0 authentication setup with an existing Openam as IDP. It should be an IDP initiated SSO.I am quite new to SAML and didn't find any relevant articles to achieve this requirement. I will be grateful to any suggestions/help.

.NET Core application to connect with Windows Server 2012 R2 ADFS (Version 3.0) supporting OAUTH 2.0 authorization protocol

I am trying to create a login mvc application in .NET through which any identity provider that supports OpenIdConnect for authentication and Oauth2.0 for authorization should be able to communicate. The objective is all my microservices will then call the login service ( which will act as a proxy) to perform single login and single logout and authorization via different identity providers such as Ping Identity or Okta or perhaps Azure AD. I am using the package Microsoft.AspNetCore.Authentication.OpenIdConnect to achieve this.
I don't have much experience setting up ADFS authentication in the .NET stack so forgive my ignorance if I am missing the obvious. But if some one can point me in the direction on how to configure ADFS and write a .NET Core application to request Oauth2.0 supported tokens from it, would help a lot. Please know that I am trying to connect with ADFS 2012 R2 , which supports Oauth2.0 Authorization code flow.
ADFS 2012 R2 does not support OpenID Connect and has no concept of an ID token.
You need to use ADFS 2016 or above.

ASP .NET MVC OWIN and ADFS 3.0 with saml 2.0

I am trying to understand how I can use OWIN (katana) with ADFS 3.0 as an IdP using a SAML 2.0 token.
When you setup the relying party registration with your application you have an option of using the WS-Federation and or the SAML 2.0 token
From what I understand the SAML 2.0 token is the newer standard than WS-Federation. I believe one of the big differences is that you do not have to do any back channel validation of the token that you get back from your IdP but as far as why I have no idea. Can someone help me understand the following?
What are the differences from using WS-Federation and SAML 2.0?
If SAML 2.0 is better then how do I use OWIN to get that to work?
SAML-P 2.0 (P for protocol) uses SAML 2.0 tokens. WS-Fed uses SAML 1.1 tokens.
Both protocols implement federation. Historically, WS-Fed is Microsoft (SharePoint, CMS, Office 365) and SAML is open-source (Java).
Neither is "better" or "worse" functionally. It depends on your use case and what your IDP supports.
In terms of OWIN, there is no Microsoft OWIN SAML stack for this. There are others - refer here. Kentor is a popular choice.
If you have a choice, use WS-Fed. There is an official Microsoft NuGet package. Also, fewer parameters to configure.

Posting user credentials in SAML to a service provider

I have been tasked to implement a SSO process for one our internet sites. I have been reading as much as I can to fully understand SSO and SAML so here goes:
I need to forward to a 3rd party's Service Provider (SP-3rd_party) the credentials a user used to login to our site (SP1). Then SP-3rd_party will authenticate those credentials against their own Identity Provider. Then that 3rd party IdP will redirect back to our service with either success or failure.
Our sites are all written in .NET 4.5. It seems that we as SP1 should just authenticate against their IdP and not go thru their Service Provider (SP-3rd_party). Does that make sense? I feel we are making an additional hop that shouldn't be needed but I am fairly new to all this. If anyone can provide guidance that would be great. Thank you!
This use case is commonly referred to as Service Provider Initiated SSO (SP-Init SSO) in SAML 2.0 and is fairly common. You can find a number of resources that outline the flow a little more succinctly -
http://documentation.pingidentity.com/display/PF70/SP-Initiated+SSO--Redirect-POST#SP-InitiatedSSO--Redirect-POST-1070862
https://developers.google.com/google-apps/sso/saml_reference_implementation
Also, see Section 4.1.2 of the SAML 2.0 Tech Overview document - https://www.oasis-open.org/committees/download.php/11511/sstc-saml-tech-overview-2.0-draft-03.pdf
HTH -
Ian

Resources