SAML Single Sign-On (SSO) For ASP.NET Web Applications Using PingFederate As IDP

ASP.NET SAML SP Single Sign-On (SSO) module gives the ability to enable SAML Single Sign-On for your ASP.NET applications. Using Single Sign-On you can use only one password to access your ASP.NET application and services. Our module is compatible with all the SAML compliant Identity providers. Here we will go through a step-by-step guide to configure Single Sign-On (SSO) between ASP.NET and PingFederate considering PingFederate as IdP.

Download And Extract Package

  • Download miniOrange ASP.NET SAML 2.0 Module.
  • For Setting up the module, extract the asp-net-saml-sso-module-xxx.zip, you will find a DLL file miniorange-saml-sso.dll, a configuration file saml.config and a integration.md file which contain the steps for adding the module into your application.

Step 1: Add module in your application

  • Add miniorange-saml-sso.dll in the bin folder (where your other DLL files exist) for your application.
  • Register miniorangesamlsso module in your application according to the provided steps in the integration.md file.
  • Add the provided configuration file saml.config in the root directory for your application.
  • After integration open browser and browse the module dashboard with URL below:
    • https://<your-application-base-url>?ssoaction=config
  • If it pops up the registration page or login page, you have successfully added the miniOrange saml sso module for your application.

  • ASP.NET Ping Federate SAML SSO - login page
  • Register or Login for configuring the module.

Step 2: Configure PingFederate as Identity Provider

Follow the steps below to configure PingFederate as IdP

miniorange img Configure PingFederate as IdP

  • In the miniOrange ASP.NET SAML SSO Module, navigate to Service Provider Settings section. Here, you can find the SP metadata such as SP Entity ID and ACS (AssertionConsumerService) URL which are required to configure the Identity Provider.
  • ASP.NET Ping Federate SAML SSO -  upload metadata
  • Login to your Ping Federate User Admin dashboard.
  • Click on the Identity Provider in the left navigation menu.
  • Under SP CONNECTION, click on Create New button.
  • ASP.NET Ping Federate SAML SSO -SP CONNECTION
  • Select the Browser SSO Profiles connection template on the Connection Type tab and click Next.
  • ASP.NET Ping Federate SAML SSO - Browser SSO Profiles
  • Select Browser SSO on the Connection Options tab and click Next.
  • ASP.NET Ping Federate SAML SSO - Connection Options
  • Select File as the method for importing metadata and click Choose file to choose the miniOrange SSO plugin’s metadata on the Import Metadata tab. Click Next.
  • ASP.NET Ping Federate SAML SSO - Import Metadata
  • Review the information on the Metadata Summary tab and click Next.
  • In the General Info tab ensure that the Service Provider’s Entity ID, Connection Name, and Base URL fields pre-populate based on the metadata. Click Next.
  • Navigate to the Browser SSO tab and click on the Configure Browser SSO. You will be redirected to Browser SSO Setup wizard.

      1) Select the IdP-Initiated SSO and SP-Initiated SSO options on the SAML Profiles tab and click     Next.

      ASP.NET Ping Federate SAML SSO - SAML Profiles 2) Enter your desired assertion validity time from on the Assertion Lifetime tab and click Next.     By default, it is configured 5 minutes for both.

      3) Navigate to the Assertion Creation and click on the Configure Assertion Creation. You will be     redirected to the assertion creation setup wizard.

        I. In the Identity Mapping tab select STANDARD and click Next.

        II. Select a Subject Name Format for the SAML_SUBJECT on the Attribute Contract tab and     click Next.

        III. Click Map New Adapter Instance on the Authentication Source Mapping.

        ASP.NET Ping Federate SAML SSO - Authentication Source Mapping IV. Select an Adapter Instance and click Next. The adapter must include the user’s email     address.

        ASP.NET Ping Federate SAML SSO - Adapter Instance V. Select the Use only the adapter contract values in the SAML assertion option on the     Mapping Method tab and click Next.

        VI. Select your adapter instance as the Source and the email as the Value on the Attribute     Contract Fulfilment tab and click Next.

        ASP.NET Ping Federate SAML SSO - Mapping Method VII. (Optional) Select any authorization conditions you would like on the Issuance Criteria        tab and click Next.

        VIII. Click Done on the Summary.

        IX. Click Next on the Authentication Source Mapping tab.

        X. Click Done on the Summary tab.

        XI. Click Next on the Assertion Creation

    1. Navigate to the Protocol Settings tab of the Browser SSO wizard and click on the Configure Protocol settings.

        1) Select POST for Binding and specify the single sign-on endpoint URL in the Endpoint     URL field on the Assertion Consumer Service URL Click Next.

        ASP.NET Ping Federate SAML SSO - Browser SSO wizard 2) Select POST on the Allowable SAML Bindings tab and click Next.

        3) Select your desired signature policies for assertions on the Signature Policy tab and     click Next.

        ASP.NET Ping Federate SAML SSO - signature policies 4) Select your desired encryption policy for assertions on the Encryption Policy tab and     click Next.

        5) Click Done on the Protocol Settings Summary tab.

        6) Click Done on the Browser SSO Summary.

  • Navigate to the Credentials and click on the Configure Credentials. You will be redirected to the Credentials setup wizard.
      1) Select the Signing Certificate to use with the Single Sign-On service and select Include the certificate in the signature element in the Digital Signature Settings tab. Click Done.

      ASP.NET Ping Federate SAML SSO - Signing Certificate 2) Click Done on the Summary.

      3) Click Next on the Credentials.

  • Select Active for the Connection Status on the Activation & Summary tab and click Save.
  • Now, navigate to the Ping Federate User Admin dashboardè Identity Provide.
  • Click Manage All under SP Connections.
  • Click Export Metadata for the desired service provider connection.
  • Click Export on the Export & Summary tab and click Done.

Step 3: Configure ASP.NET SAML Module as Service Provider

  • After configuring your Identity Provider, it will provide you with IDP Entity ID, IDP Single Sign On URL and x.509 Certificate. Configure these values under IDP Entity ID, Single Sign-On Url and SAML X509 Certificate fields respectively. (Refer to the Metadata provided by Identity Provider)
  • Click Save to Save your IDP details.
  • ASP.NET Ping Federate SAML SSO -  idp settings

Step 4: Test Configuration

  • Click on the Test Configuration button to test the configuration.
  • ASP.NET Ping Federate SAML SSO -  test configuration settings

Step 5: Attribute Mapping

  • After testing the configuration, Map your application attributes with the Identity Provider (IdP) attributes.
  • Note: All the mapped attributes will be stored in the session so that you can access them in your application.
  • ASP.NET Ping Federate SAML SSO -  attribute mapping

Step 6: Integration Code

  • You can also find the Integration code in the Integration Code tab in the module. Just copy-paste that code snippet wherever you want to access the user attributes.
  • Note: All the mapped attributes will be stored in the session so that you can access them in your application.
  •  ASP.NET Ping Federate SAML SSO - integration code

Step 7: Login Settings

  • Use the following URL as a link in your application from where you want to perform SSO:
  • https://<your-application-base-url>/?ssoaction=login
  • For example you can use it as:
  • <a href="https://<your-application-base-url>/?ssoaction=login">Login</a>

Step 8: Logout Settings

  • Use the following URL as a link in your application from where you want to perform SLO:
  • https://<your-application-base-url>/?ssoaction=logout
  • For example you can use it as:
  • <a href="https://<your-application-base-url>/?ssoaction=logout">Logout</a>

    You can configure the ASP.NET SAML 2.0 Single Sign-On (SSO) module with any Identity Provider such as ADFS, Azure AD, Bitium, Centrify, G Suite, JBoss Keycloak, Okta, OneLogin, Salesforce, AWS Cognito, OpenAM, Oracle, PingFederate, PingOne, RSA SecureID, Shibboleth-2, Shibboleth-3, SimpleSAML, WSO2 or even with your own custom identity provider.

Application LINK
SAML SSO into DotNetNuke (DNN) site Click here
SAML SSO into SiteFinity site Click here
SAML SSO into Umbraco site Click here
Hello there!

Need Help? We are right here!

support
Contact miniOrange Support
success

Thanks for your inquiry.

If you dont hear from us within 24 hours, please feel free to send a follow up email to info@xecurify.com