The lightweight SAML for ASP.NET component plug directly into your application enabling SAML service provider or identity provider support.
It's been tested successfully against ADFS, Azure AD, Facebook, Google, IdentityServer4, Office 365, Okta, OneLogin, Ping Identity, Salesforce, Shibboleth and many more.
Thousands of our clients have been using our award winning components in production systems throughout the world for many years.
SAML for ASP.NET
Example projects to help you
Example SAML ASP.NET projects written in C#, with full source code, are included.
The examples demonstrate:
- Acting as the SAML service provider (SP)
- Acting as the SAML identity provider (IdP)
- Service provider initiated SSO
- Identity provider initiated SSO
- Setting and retrieving SAML attributes
- SAML metadata creation and consumption
- OWIN ASP.NET Identity integration
High Level API
Add SSO functionality to your web application with just a few lines of code.
A high-level, configuration-driven API provides a very simple to use interface that hides the mechanics of SAML SSO. This makes it easy to add SSO functionality to your web application with just a few lines of code.
Configuration changes, including adding support for additional partner identity providers or service providers, may be made with zero code changes.
Initiating SSO from the SP
A SAML authn request is created and sent to the IdP.
// SP-initiated SSO. SAMLServiceProvider.InitiateSSO(Response, returnUrl, partnerIdP);
Initiating SSO from the IdP
A SAML response is created and sent to the IdP.
// IdP-initiated SSO. SAMLIdentityProvider.InitiateSSO(Response, userName, attributes, targetUrl, partnerSP);
Receiving the SAML Response
A SAML response is received from the SP and processed.
// SP or IdP-initiated SSO. SAMLServiceProvider.ReceiveSSO(Request, out isInResponseTo, out partnerIdP, out authnContext, out userName, out attributes, out targetUrl);
Low Level API
A low-level API provides complete control and flexibility.
The low-level API provides accesses to the SAML profiles, protocols, bindings, assertions and metadata. The high-level API is implemented using the low-level API. For most scenarios, the high-level API provides all the control you need in a simpler interface. For those situations where this isn’t enough, the low-level API is available.
The SAML component supports all .NET framework versions from v2.0 and above. This includes all versions of Visual Studio. Both 32-bit and 64-bit versions of Windows Server and Desktop are supported.
For your assurance and convenience, the complete source code for the component is available for purchase.
For consulting and implementation inquires, contact us at email@example.com.
SAML v2.0 Specification Compliance
All SAML v2.0 profiles are fully supported, acting as either the identity provider or service provider.
- Web browser single sign-on (identity provider and service provider initiated)
- Single logout
- Artifact resolution
- Identity provider discovery
- Authentication, attribute and assertion query
- Name identifier management and mapping
All SAML v2.0 protocols are fully supported.
- Create, modify and access SAML protocol messages
- Serialize SAML messages to and from XML
- Generate and verify XML signatures on SAML messages
All SAML v2.0 bindings are fully supported.
- HTTP POST
- HTTP Redirect
- HTTP Artifact
- SAML URI
SAML v2.0 assertions are fully supported.
- Create, modify and access SAML assertions
- Serialize SAML assertions to and from XML
- Generate and verify XML signatures on SAML assertions
- Encrypt and decrypt SAML assertions, attributes and identifiers
SAML v2.0 metadata is fully supported.
- Create, modify and access all SAML metadata
- Serialize SAML metadata to and from XML
- Generate and verify XML signatures on SAML metadata
Fast, effective SAML SSO Solutions for ASP.NET and ASP.NET Core
SAML for ASP.NET Core
SSO enable your ASP.NET Core applications with our easy to use component.
The SAML for ASP.NET Core component is fully compliant with the SAML v2.0 specification.Learn more
The SAML Suite includes the SAML components for ASP.NET and ASP.NET Core.
The SAML components are fully compliant with the SAML v2.0 specification.Learn more