How to Use ADFS to Implement Single Sign-On for an ASP.NET MVC Application

Similar documents
Configuring Alfresco Cloud with ADFS 3.0

Configuration Guide - Single-Sign On for OneDesk

Microsoft ADFS Configuration

Qualys SAML & Microsoft Active Directory Federation Services Integration

Integrating YuJa Active Learning into ADFS via SAML

ADFS integration with Ibistic Commerce Platform A walkthrough of the feature and basic configuration

VIEVU Solution AD Sync and ADFS Guide

Integrating the YuJa Enterprise Video Platform with ADFS (SAML)

Configuring Microsoft ADFS for Oracle Fusion Expenses Mobile Single Sign-On

Colligo Console. Administrator Guide

ArcGIS Server and Portal for ArcGIS An Introduction to Security

SAML-Based SSO Solution

Integrating YuJa Active Learning with ADFS (SAML)

Using Your Own Authentication System with ArcGIS Online. Cameron Kroeker and Gary Lee

TECHNICAL GUIDE SSO SAML. At 360Learning, we don t make promises about technical solutions, we make commitments.

ADFS Setup (SAML Authentication)

CONFIGURING AD FS AS A THIRD-PARTY IDP IN VMWARE IDENTITY MANAGER: VMWARE WORKSPACE ONE OPERATIONAL TUTORIAL VMware Workspace ONE

Five9 Plus Adapter for Agent Desktop Toolkit

DYNAMICS AX 2012 R3 ENTERPRISE PORTAL SETUP WITH AUTH0

ArcGIS Enterprise Administration

Unity Connection Version 10.5 SAML SSO Configuration Example

Configuring Claims-based Authentication for Microsoft Dynamics CRM Server. Last updated: May 2015

SAML-Based SSO Solution

April Understanding Federated Single Sign-On (SSO) Process

Configuring SAML-based Single Sign-on for Informatica Web Applications

Nimsoft Service Desk. Single Sign-On Configuration Guide. [assign the version number for your book]

Unified Contact Center Enterprise (UCCE) Single Sign On (SSO) Certificates and Configuration

Integration Guide. SafeNet Authentication Service. NetDocuments

Configure Single Sign-On using CUCM and AD FS 2.0 (Windows Server 2008 R2)

Cloud Access Manager Configuration Guide

D9.2.2 AD FS via SAML2

Configuring Claims-based Authentication for Microsoft Dynamics CRM Server. Last updated: June 2014

CLI users are not listed on the Cisco Prime Collaboration User Management page.

Enhancing cloud applications by using external authentication services. 2015, 2016 IBM Corporation

O365 Solutions. Three Phase Approach. Page 1 34

Configuring ADFS for Academic Works

NETOP PORTAL ADFS & AZURE AD INTEGRATION

CLI users are not listed on the Cisco Prime Collaboration User Management page.

Health Professional & ADFS Integration Guide

Enabling Single Sign-On Using Microsoft Azure Active Directory in Axon Data Governance 5.2

Integrating the YuJa Enterprise Video Platform with Dell Cloud Access Manager (SAML)

SSO Authentication with ADFS SAML 2.0. Ephesoft Transact Documentation

Trusted Login Connector (Hosted SSO)

Unified Communications Manager Version 10.5 SAML SSO Configuration Example

Remote Desktop (RD) Web Access Server (2012 R2) Integration Guide

Single Sign-On (SSO)Technical Specification

Five9 Plus Adapter for Microsoft Dynamics CRM

Quick Start Guide for SAML SSO Access

esignlive SAML Administrator's Guide Product Release: 6.5 Date: July 05, 2018 esignlive 8200 Decarie Blvd, Suite 300 Montreal, Quebec H4P 2P5

All about SAML End-to-end Tableau and OKTA integration

Introduction... 5 Configuring Single Sign-On... 7 Prerequisites for Configuring Single Sign-On... 7 Installing Oracle HTTP Server...

SAML 2.0 SSO Implementation for Oracle Financial Services Lending and Leasing

AD FS CONFIGURATION GUIDE

October 14, SAML 2 Quick Start Guide

TECHNICAL GUIDE SSO SAML Azure AD

About This Document 3. Overview 3. System Requirements 3. Installation & Setup 4

ArcGIS Enterprise Security: An Introduction. Gregory Ponto & Jeff Smith

Configure the Identity Provider for Cisco Identity Service to enable SSO

Cloud Secure Integration with ADFS. Deployment Guide

PASS4TEST. IT Certification Guaranteed, The Easy Way! We offer free update service for one year

Extranet User Manager

Quick Start Guide for SAML SSO Access

Configuring ADFS 2.1 or 3.0 in Windows Server 2012 or 2012 R2 for Nosco Web SSO

SAML 2.0 SSO. Set up SAML 2.0 SSO. SAML 2.0 Terminology. Prerequisites

Vendor: Microsoft. Exam Code: Exam Name: Administering Office 365. Version: DEMO

SecureAuth IdP Realm Guide

Setting Up Resources in VMware Identity Manager 3.1 (On Premises) Modified JUL 2018 VMware Identity Manager 3.1

Single Sign-On with Sage People and Microsoft Active Directory Federation Services 2.0

Enabling SAML Authentication in an Informatica 10.2.x Domain

RECOMMENDED DEPLOYMENT PRACTICES. The F5 and Okta Solution for High Security SSO

Mozy. Implementing with Federated Identity

Setting Up the Server

Integration Guide. PingFederate SAML Integration Guide (SP-Initiated Workflow)

Copyright

Add OKTA as an Identity Provider in EAA

SAML with ADFS Setup Guide

Extranet Identity Management and Authentication for SharePoint On Premise, Office 365 and Beyond

Deploying VMware Identity Manager in the DMZ. JULY 2018 VMware Identity Manager 3.2

Juniper Networks SSL VPN Integration Guide

IBM Domino WEB Federated Login

Securing ArcGIS Services

for SharePoint On-prem (v5)

Web Application Proxy

Five9 Plus Adapter for NetSuite

DATACENTER MANAGEMENT Goodbye ADFS, Hello Modern Authentication! Osman Akagunduz

Integration Guide. SafeNet Authentication Manager. Using SAM as an Identity Provider for PingFederate

Installation Guide Blueprint 8.1 Storyteller 2.2

Single Sign On (SSO) with Polarion 17.3

Module 3 Remote Desktop Gateway Estimated Time: 90 minutes

Installation Guide Worksoft Certify Execution Suite

TACACs+, RADIUS, LDAP, RSA, and SAML

VMware AirWatch System Settings Reference Manual for SaaS Customers A comprehensive listing of AirWatch system settings

Configuring Confluence

Deploying VMware Identity Manager in the DMZ. SEPT 2018 VMware Identity Manager 3.3

VMware AirWatch System Settings Reference Manual for On-Premises Customers A comprehensive listing of AirWatch system settings. AirWatch v9.

Coveo Platform 7.0. Microsoft SharePoint Legacy Connector Guide

Single Sign-On for PCF. User's Guide

Setting Up Resources in VMware Identity Manager (On Premises) Modified on 30 AUG 2017 VMware AirWatch 9.1.1

SafeNet Authentication Service

Five9 Plus Adapter for Oracle Service Cloud

Transcription:

How to Use ADFS to Implement Single Sign-On for an ASP.NET MVC Application With Azure s Access Control service retiring next month, I needed to find another way to use an on-premise Active Directory account without changing the current login process I already set up. Without using any complex code logic, I leveraged Microsoft s Single Sign-On (SSO) on my existing ASP.NET MVC web application. Introduction Thanks to Microsoft s Active Directory Federation Services (AD FS), implementing Single Sign-On (SSO) is now a whole lot easier! Here is my solution to implement SSO using ASP.NET MVC, AD FS and the OnPremise Active Directory account. AD FS is an enterprise-level identity and access management service. Because it runs as a separate service, any application that supports WS-Federation and Security Assertion Markup Language (SAML) can leverage this authentication service. Where to use this solution? This article shows how to use an on-premise Active Directory account services to securely login a domain user on an external ASP.NET MVC application. This

eliminates the need to create and maintain different login credentials for different applications. This solution can also be used in desktop and mobile applications. Here, I used a preconfigured AD FS Single Sign-On. Before I created the ASP.NET MVC application, I added our URL as a Relying Party Trust on the server where the AD FS is configured. If this is running on a client machine, ask a system admin to perform the steps below. Adding a Relying Party Trust Log into the server where AD is installed. Open the Server Manager Dashboard. Under Tools choose AD FS Management. Choose Add Relying Party Trust

Click Start.

Choose the option Enter data about relying party manually and click Next Add the display name as Example Enterprise AD FS and click Next/ Choose the AD FS profile option and click Next.

Click Next. Click Next.

Under Relying party trust identifier add your application s website. Click Add and then click Next. The website needs to have an SSL certificate and https as the navigation path. The AD FS will only communicate through https context. For demo purposes, we have an IIS Express development certificate.

Click Next.

Click Next. Click Next.

Close the wizard.

In the new popup window, click Add Rule. Choose the Claim rule template as Send LDAP Attributes as Claims and click Next. Add a Claim rule name (my example here is Example Enterprise Claim ) Select Active Directory as the Attribute Store.

Configure the LDAP attributes to outgoing claim types. Add the above four LDAP attributes and their corresponding outing claim type. Click Finish. Set your website URL as the destination page. AD FS will need to redirect back after a successful domain account login. On the AD FS Management window, expand Trust Relationships on the left side.

Click Relying Party Trusts. Right-click on your trust and open Properties. Under the Endpoints tab, add a WS-Federation Passive Endpoint with your URL. After a successful login, the data is encrypted by default. I needed a thumbprint of the client s SSL certificate that is used by AD FS. After receiving the thumbprint, I am now ready to configure the ASP.NET MVC application.

Configure the ASP.NET MVC Application Open Visual Studio. Choose ASP.NET Web Application. Enter a project name (my example here is AD FS-Demo). Select a folder where you want to create the project. Click OK. In the next screen, choose MVC as the project. Under Authentication, click Change Authentication and change the Authentication to Individual User Accounts.

Add the Microsoft.Owin.Security.WsFederation package. Installing this will also install its dependencies. Under Solution Explorer, open the file ~/App_Start/Startup.Auth.cs and add the following code. The FederationMetadata.xml URL from the AD FS server. Wtrealm is the current website URL (i.e., https://www.example.com/).

The last option Wreply is used to call the DomainLogin method after successfully logging in from the AD FS server. To read back claims from the server, add these claim identifiers in web.config. <add key="claimsnameidentifier" value="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/n ameidentifier" /> <add key="claimsupnidentifier" value="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/u pn" /> <add key="claimsemailidentifier" value="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/e mailaddress" /> To read data from the encrypted claims, add the following configuration setting in the web.config. <system.identitymodel> <identityconfiguration> <audienceuris> <add value="https://www.example.com/" /> </audienceuris> <issuernameregistry type="system.identitymodel.tokens.validatingissuernameregistry, System.IdentityModel.Tokens.ValidatingIssuerNameRegistry"> <authority name="http://ad FS.server.com/AD FS/services/trust"> <keys> <add thumbprint="a8f1a0a474c8ff51f5b84945b6504813687733b8" /> </keys> <validissuers>

<add name=" http://ad FS.server.com/AD FS/services/trust" /> </validissuers> </authority> </issuernameregistry> <!--certificationvalidationmode set to "None" by the the Identity and Access Tool for Visual Studio. For development purposes.--> <certificatevalidation certificatevalidationmode="none" /> </identityconfiguration> </system.identitymodel> On the website, navigate to the login page. Now you ll see Federation under External Logins. After a successful login, the claims can be retrieved in back in code by using the below line. var claimsidentity = (ClaimsIdentity)Thread.CurrentPrincipal.Identity; You can verify the user s identity with the claims. After setting these values, execute the application and navigate to the login page. Click the Federation button. This will navigate to the AD FS server.

Using a valid domain account, login to the AD FS. You will navigate back to the application. The application contains the claims email, name and other data. Use this data to sign in and navigate to the home screen!