The award-winning SAML library for ASP.NET allows you to quickly and securely add SAML SSO support to your application.
Successfully tested against ADFS, Microsoft Entra (Azure AD), Okta, Google, Salesforce, OneLogin, Ping Identity, Shibboleth, Microsoft 365 and many more.
SAML for ASP.NET
SAML C# Example Projects to Help You
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 Logout
- SAML metadata creation and consumption
- OWIN ASP.NET Identity integration
High Level SAML API
Add SAML SSO functionality to your web application with just a few lines of code.
A high-level, configuration-driven SAML API hides the complexities of SAML SSO, making for a quick and easy implementation.
Configuration changes, including adding support for additional partner providers, can be made with zero code updates.
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 SAML API
A low-level API provides complete control and flexibility.
The low-level SAML API allows access to the SAML profiles, protocols, bindings, assertions and metadata. For most scenarios, the high-level SAML API provides all the control you need in a simpler interface. For situations where this isn’t enough, the low-level SAML API is available.
ASP.NET example projects are included demonstrating interoperability with:
The SAML library supports all .NET framework versions from v4.0 and above.
For your assurance and convenience, the complete source code for the SAML library is available for purchase.
For consulting and implementation inquires, feel free to contact us at [email protected].
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
SAML for ASP.NET Core
SSO enable your ASP.NET Core applications with our easy to use SAML library.
The SAML library for ASP.NET Core is fully compliant with the SAML v2.0 specification.SAML for ASP.NET Core
The SAML Suite includes the SAML libraries for both ASP.NET and ASP.NET Core.
The SAML libraries are fully compliant with the SAML v2.0 specification.SAML Suite