Résultats de recherche :

×

Authentification unique (SSO) SAML ASP.NET Core avec PingFederate comme IDP


Authentification unique (SSO) ASP.NET Core SAML Le module donne la possibilité d'activer l'authentification unique SAML pour vos applications principales ASP.NET. Grâce à l'authentification unique, vous ne pouvez utiliser qu'un seul mot de passe pour accéder à votre application et à vos services principaux ASP.NET. Notre module est compatible avec tous les fournisseurs d'identité conformes à SAML. Ici, nous allons passer en revue un guide étape par étape pour configurer l'authentification unique (SSO) entre ASP.NET Core et PingFederate en considérant PingFederate comme IdP. Pour en savoir plus sur les fonctionnalités que nous proposons pour ASP.NET Core SSO, cliquez sur ici.

Prise en charge de la plateforme: Le middleware ASP.NET Core SAML prend en charge ASP.NET Core 2.1 et supérieur. Il prend en charge toutes les plates-formes ASP.NET Core, notamment Windows, Linux et macOS.

Pré-requis : téléchargement et installation


PM> NuGet\Install-Package miniOrange.SAML.SSO.Middleware -Version 5.0.2
      
using Microsoft.AspNetCore.Authentication.Cookies; using miniOrange.saml; var builder = WebApplication.CreateBuilder(args); builder.Services.AddRazorPages(); // Add authentication services builder.Services.AddControllersWithViews(); builder.Services.AddAuthentication(options =>  { options.DefaultAuthenticateScheme = "SSO_OR_Admin"; options.DefaultScheme = "SSO_OR_Admin"; options.DefaultChallengeScheme = "SSO_OR_Admin";  }) .AddCookie("moAdmin", options =>  {  }) .AddCookie(CookieAuthenticationDefaults.AuthenticationScheme, options =>  { // Configure cookie options as needed for SSO Users }) .AddPolicyScheme("SSO_OR_Admin", "SSO_OR_Admin", options => { // runs on each request options.ForwardDefaultSelector = context => { // filter by auth type, here if the moAdmin cookie is coming in any request the Admin Authentication will work foreach (var cookie in context.Request.Cookies) { if (cookie.Key.Contains(".AspNetCore.Cookies")) { return CookieAuthenticationDefaults.AuthenticationScheme; } } // otherwise always check for cookie auth return "moAdmin"; }; }); var app = builder.Build(); if (!app.Environment.IsDevelopment())  {     app.UseExceptionHandler("/Error");     app.UseHsts();  } app.UseHttpsRedirection(); app.UseRouting(); app.UseAuthorization(); app.MapRazorPages(); app.UseCookiePolicy(); app.UseAuthentication(); app.UseStaticFiles(); app.UseminiOrangeSAMLSSOMiddleware(); app.Run();

Étapes pour configurer l'authentification unique (SSO) ASP.NET Core à l'aide de PingFederate comme IDP

1. Ajouter un module sur l'application ASP.NET Core

  • Après l'intégration, ouvrez votre navigateur et parcourez le tableau de bord du connecteur avec l'URL ci-dessous :
    https://<your-application-base-url>/?ssoaction=config
  • Si la page d'enregistrement ou la page de connexion apparaît, vous avez ajouté avec succès le connecteur SAML SSO d'authentification middleware miniOrange ASP.NET à votre application.
  • ASP.NET Core SAML Single Sign-On (SSO) utilisant PingFederate comme IDP - registre dll saml
  • Inscrivez-vous ou connectez-vous avec votre compte en cliquant sur le Inscription bouton pour configurer le module.

2. Configurez PingFederate en tant que fournisseur d'identité

  • En vertu des Normes sur l’information et les communications, les organismes doivent rendre leurs sites et applications Web accessibles. Ils y parviennent en conformant leurs sites Web au niveau AA des Web Content Accessibility Guidelines (WCAG). Paramètres Plugin onglet, sélectionnez PingFédérer comme fournisseur d'identité dans la liste affichée.
  • ASP.NET Core SAML Single Sign-On (SSO) utilisant PingFederate comme IDP - Sélectionnez PingFederate comme fournisseur d'identité

Il existe deux manières détaillées ci-dessous de configurer les métadonnées SAML SP du côté de votre fournisseur d'identité.

A] Utilisation d'une URL de métadonnées SAML ou d'un fichier de métadonnées :
  • Dans le Menu Paramètres du plugin, chercher Paramètres du fournisseur de services. En dessous, vous pouvez trouver l'URL des métadonnées ainsi que la possibilité de télécharger les métadonnées SAML.
  • Copiez l'URL des métadonnées ou téléchargez le fichier de métadonnées pour configurer la même chose du côté de votre fournisseur d'identité.
  • Vous pouvez vous référer à la capture d'écran ci-dessous :
  • ASP.NET Core SAML Single Sign-On (SSO) utilisant PingFederate comme IDP - Copier les métadonnées téléchargées
B] Téléchargement manuel des métadonnées :
  • Extrait du Paramètres du fournisseur de services section, vous pouvez copier manuellement les métadonnées du fournisseur de services comme ID d'entité SP, URL ACS, URL de déconnexion unique et partagez-le avec votre fournisseur d'identité pour la configuration.
  • Vous pouvez vous référer à la capture d'écran ci-dessous :
  • Authentification unique (SSO) SAML ASP.NET Core utilisant PingFederate comme IDP - Métadonnées manuelles
  • Connectez-vous à votre tableau de bord d'administration des utilisateurs Ping Federate.
  • Cliquez sur le Fournisseur d'identité dans le menu de navigation de gauche.
  • Sous CONNEXION SP, cliquer sur CRÉER UN NOUVEAU DOSSIER .
  • Authentification unique (SSO) SAML ASP.NET Core utilisant PingFederate comme IDP - SP CONNECTION
  • Sélectionnez le Profils SSO du navigateur modèle de connexion sur le Type de connexion onglet et cliquez Suivant.
  • Authentification unique (SSO) SAML ASP.NET Core utilisant PingFederate comme IDP - Profils SSO du navigateur
  • Sélectionnez SSO du navigateur sur le Options de connexion onglet et cliquez Suivant.
  • ASP.NET Core SAML Single Sign-On (SSO) utilisant PingFederate comme IDP - Options de connexion
  • Sélectionnez Déposez votre dernière attestation comme méthode d'importation des métadonnées et cliquez sur Selectionnez fichier pour choisir les métadonnées du plugin miniOrange SSO sur le Importer des métadonnées languette. Cliquez sur Suivant.
  • ASP.NET Core SAML Single Sign-On (SSO) utilisant PingFederate comme IDP - Importer des métadonnées
  • Consultez les informations sur le Résumé des métadonnées onglet et cliquez Suivant.
  • Dans le Onglet Informations générales s'assurer que le ID d'entité du fournisseur de services, nom de connexionet URL de base les champs sont pré-remplis en fonction des métadonnées. Cliquez sur Suivant.
  • Accédez à la SSO du navigateur onglet et cliquez sur le Configurer l'authentification unique du navigateur. Vous serez redirigé vers l’assistant de configuration SSO du navigateur.
    • Sélectionnez le SSO initié par le fournisseur d'identité ainsi que SSO initié par le SP options sur le Profils SAML onglet et cliquez Suivant.
    • Authentification unique (SSO) SAML ASP.NET Core utilisant PingFederate comme IDP - Profils SAML
    • Entrez la durée de validité de votre assertion souhaitée à partir du Durée de vie des assertions onglet et cliquez Suivant. Par défaut, il est configuré 5 minutes pour les deux.
    • Accédez à la création d'assertion et cliquez sur Configurer la création d'assertion. Vous serez redirigé vers l'assistant de configuration de création d'assertion.
      • Dans l'onglet Mappage d'identité, sélectionnez STANDARD et cliquez sur Suivant.
      • Sélectionnez un format de nom de sujet pour SAML_SUBJECT sur le Contrat d'attribut et cliquez sur Suivant.
      • Cliquez sur Mapper une nouvelle instance d'adaptateur dans le mappage de source d'authentification.
      • ASP.NET Core SAML Single Sign-On (SSO) utilisant PingFederate comme IDP - Mappage de source d'authentification
      • Sélectionnez un Instance d'adaptateur et cliquez sur Suivant. L'adaptateur doit inclure l'adresse e-mail de l'utilisateur.
      • Authentification unique (SSO) SAML ASP.NET Core utilisant PingFederate comme IDP - Instance d'adaptateur
      • Sélectionnez le Utilisez uniquement les valeurs du contrat de l'adaptateur dans l'assertion SAML option sur le Méthode de cartographie onglet et cliquez Suivant.
      • Sélectionnez votre instance d'adaptateur comme Identifier et l'e-mail comme Valeur sur le Exécution du contrat d’attribut onglet et cliquez Suivant.
      • ASP.NET Core SAML Single Sign-On (SSO) utilisant PingFederate comme IDP - Méthode de mappage
      • (Facultatif) Sélectionnez les conditions d'autorisation que vous souhaitez sur la page Critères de délivrance onglet et cliquez Suivant.
      • Cliquez OK sur le Résumé.
      • Cliquez Suivant sur le Mappage des sources d'authentification languette.
      • Cliquez OK dans l'onglet Résumé.
      • Cliquez Suivant sur le Création d'assertions
  • Accédez à l’onglet Paramètres du protocole de l’assistant SSO du navigateur et cliquez sur les paramètres Configurer le protocole.
    • Sélectionnez POST pour Fixations et spécifiez l'authentification unique URL du point de terminaison dans le champ URL du point de terminaison sur le URL du service consommateur d'assertions Cliquez Suivant.
    • ASP.NET Core SAML Single Sign-On (SSO) utilisant PingFederate comme IDP - Assistant SSO du navigateur
    • Sélectionnez POSTEZ sur le Liaisons SAML autorisées onglet et cliquez Suivant.
    • Sélectionnez les politiques de signature souhaitées pour les assertions sur le Politique de signature onglet et cliquez Suivant.
    • ASP.NET Core SAML Single Sign-On (SSO) utilisant PingFederate comme IDP - stratégies de signature
    • Sélectionnez la politique de chiffrement souhaitée pour les assertions sur le Politique de cryptage onglet et cliquez Suivant.
    • Cliquez OK sur le Résumé des paramètres de protocole languette.
  • Accédez à la Lettres de créance et cliquez sur le Configurer les informations d'identification. Vous serez redirigé vers le Lettres de créance Assistant de configuration.
    • Sélectionnez le certificat de signature à utiliser avec le service d'authentification unique et sélectionnez Inclure le certificat dans l'élément de signature dans l'onglet Paramètres de signature numérique. Cliquez sur Terminé.
    • ASP.NET Core SAML Single Sign-On (SSO) utilisant PingFederate comme IDP - Certificat de signature
    • Cliquez OK sur le Résumé.
    • Cliquez Suivant sur le Lettres de créance.
  • Sélectionnez Actif pour le État de la connexion sur le Activation et résumé onglet et cliquez Épargnez.
  • Maintenant, accédez au tableau de bord Ping Federate User Admin et Identity Provide.
  • Cliquez Gérer tout sous Connexions SP.
  • Cliquez Exporter les métadonnées pour la connexion du fournisseur de services souhaité.
  • Cliquez Exportations sur le Exportation et résumé onglet et cliquez Terminé.

3. Configurez le module ASP.NET SAML en tant que fournisseur de services

Il existe deux manières détaillées ci-dessous de configurer les métadonnées de votre fournisseur d'identité SAML dans le module.

A] Téléchargez les métadonnées à l'aide du bouton Télécharger les métadonnées IDP :
  • Si votre fournisseur d'identité vous a fourni l'URL ou le fichier de métadonnées (format .xml uniquement), vous pouvez simplement configurer les métadonnées du fournisseur d'identité dans le module à l'aide du Télécharger les métadonnées IDP option.
  • Vous pouvez vous référer à la capture d'écran ci-dessous :
  • ASP.NET Core SAML Single Sign-On (SSO) utilisant PingFederate comme IDP - Télécharger des métadonnées
  • Vous pouvez choisir l’une des options en fonction du format de métadonnées dont vous disposez.
B] Configurez manuellement les métadonnées du fournisseur d'identité :
  • Après avoir configuré votre Fournisseur d'identité, il vous fournira ID d'entité IDP, URL d'authentification unique IDP ainsi que Certificat SAML X509 champs respectivement.
  • Cliquez Épargnez pour enregistrer vos informations IDP.
  • ASP.NET Core SAML Single Sign-On (SSO) utilisant PingFederate comme IDP - Configuration de la DLL SAML

4. Test de l'authentification unique SAML

  • Cliquez sur le Configuration du test pour tester si la configuration SAML que vous avez effectuée est correcte.
  • La capture d'écran ci-dessous montre un résultat réussi. Cliquer sur Intégration SSO pour poursuivre l'intégration SSO.
  • ASP.NET Core SAML Single Sign-On (SSO) utilisant PingFederate comme IDP - Configuration de test SAML dll
  • Si vous rencontrez une erreur à l'extrémité du module, une fenêtre similaire à celle ci-dessous s'affichera.
  • ASP.NET Core SAML Single Sign-On (SSO) utilisant PingFederate comme IDP - Activer les journaux de débogage
  • Pour résoudre l'erreur, vous pouvez suivre les étapes ci-dessous :
    • Sous Résolution des problèmes , activez la bascule pour recevoir les journaux du plugin.
    • ASP.NET Core SAML Single Sign-On (SSO) utilisant PingFederate comme IDP - Activer les journaux de débogage
    • Une fois activé, vous pourrez récupérer les journaux du plugin en accédant à Paramètres Plugin onglet et en cliquant sur Configuration du test.
    • Télécharger fichier journal du Résolution des problèmes onglet pour voir ce qui n'a pas fonctionné.
    • Vous pouvez partager le fichier journal avec nous à aspnetsupport@xecurify.com et notre équipe vous contactera pour résoudre votre problème.

5. Cartographie des attributs

  • Après avoir testé la configuration, mappez les attributs de votre application avec les attributs du fournisseur d'identité (IdP).
  • Remarque: Tous les attributs mappés seront stockés dans la session afin que vous puissiez y accéder dans votre application.
  • ASP.NET Core SAML Single Sign-On (SSO) utilisant PingFederate comme IDP - mappage d'attributs

6. Code d'intégration

  • Ces étapes vous permettent de récupérer les informations utilisateur SSO dans votre application sous la forme de revendications utilisateur.
  • Vous pouvez également regarder le visite d'installation pour comprendre comment l'intégration SSO fonctionnerait dans votre application middleware asp.net.
  • Copiez-collez simplement cet extrait de code là où vous souhaitez accéder aux attributs utilisateur.
  • Authentification unique (SSO) SAML ASP.NET Core | Authentification ASP.NET Core | ASP.NET Core SAML SSO - code d'intégration
  • Remarque:Ce middleware d'essai prend uniquement en charge les informations utilisateur dans les réclamations. La récupération des informations utilisateur en session et en-têtes est disponible dans le plugin premium.
  • Vous pouvez également copier le code d'intégration ci-dessous :
  •           
      string name="";   string claimtype="";   string claimvalue="";    if(User.Identity.IsAuthenticated)    {      foreach( var claim in User.Claims)      {        claimtype = claim.Type;        claimvalue = claim.Value;      }      //retrive custom attributes(for eg. Retrieve Mapped 'mobileNumber' attribute of your IDP)      var identity = (ClaimsIdentity)User.Identity;      IEnumerable claims = identity.Claims;      string mobileNumber = identity.FindFirst("mobileNumber")?.Value;    }
  • Remarque: Tous les attributs mappés seront stockés dans les revendications accessibles dans votre application.
  • Si vous souhaitez de l'aide concernant le code d'intégration, contactez-nous à aspnetsupport@xecurify.com

7. Paramètres de connexion

  • Survolez Sélectionner des actions et cliquez sur Copier le lien SSO.
  • ASP.NET Core SAML Single Sign-On (SSO) utilisant ADFS comme IDP - Copier le lien SSO
  • Utilisez l'URL suivante comme lien dans l'application à partir de laquelle vous souhaitez effectuer le SSO :
    https://asp.net-middleware-base-url/?ssoaction=login
  • Par exemple, vous pouvez l'utiliser comme :
    <a href=”https://asp.net-middleware-base-url/?ssoaction=login”>Log in</a>

7. Paramètres de connexion

  • Survolez Sélectionner des actions et cliquez sur Copier le lien SSO.
  • ASP.NET Core SAML Single Sign-On (SSO) utilisant ADFS comme IDP - Copier le lien SSO
  • Utilisez l'URL suivante comme lien dans l'application à partir de laquelle vous souhaitez effectuer le SSO :
    https://base-url/?ssoaction=login
  • Par exemple, vous pouvez l'utiliser comme :
    <a href=”https://asp-net-middlewarebase-url/?ssoaction=login”>Log in</a>

8. Paramètres de déconnexion

  • Utilisez l'URL suivante comme lien vers votre application à partir de laquelle vous souhaitez effectuer un SLO :
    https://asp-net-middleware-base-url/?ssoaction=logout
  • Par exemple, vous pouvez l'utiliser comme :
    <a href=”https://asp-net-middleware-base-url/?ssoaction=logout”>Log out</a>

Vous pouvez configurer le module d'authentification unique (SSO) ASP.NET Core SAML 2.0 avec n'importe quel fournisseur d'identité tel que 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 ou même avec votre propre fournisseur d'identité personnalisé. Consultez la liste des fournisseurs d'identité ici.

Ressources additionnelles


Besoin d'aide?

Vous ne parvenez pas à trouver votre fournisseur d'identité ? Envoyez-nous un mail à aspnetsupport@xecurify.com et nous vous aiderons à configurer le SSO avec votre IDP et pour des conseils rapides (par e-mail/réunion) sur vos besoins et notre équipe vous aidera à sélectionner la solution/le plan le mieux adapté à vos besoins.

Bonjour!

Besoin d'aide? Nous sommes ici !

Support
Contacter l'assistance miniOrange
succès

Merci pour votre demande.

Si vous n'avez pas de nouvelles de nous dans les 24 heures, n'hésitez pas à envoyer un e-mail de suivi à info@xecurify.com