Authentification unique Blazor SAML (SSO)
L'application permet d'activer l'authentification unique SAML pour vos applications Blazor. Grâce à l'authentification unique, vous ne pouvez utiliser qu'un seul mot de passe pour accéder à votre application et à vos services Blazor. Notre application est compatible avec tous les fournisseurs d'identité compatibles SAML. Nous allons ici vous guider étape par étape pour configurer l'authentification unique (SSO) entre Blazor et PingFederate en considérant PingFederate comme IdP. Pour en savoir plus sur les fonctionnalités que nous proposons pour Blazor SSO, cliquez sur
ici.
Prise en charge de la plateforme: L'application Blazor SAML prend en charge ASP.NET Core 2.0 et versions ultérieures. Elle prend en charge toutes les plateformes Blazor, notamment Windows, Linux et macOS.
Étapes pour configurer Blazor Single Sign-On (SSO) à l'aide de PingFederate comme IDP
Étape 1 : Prérequis : téléchargement et installation
- Installez le middleware Blazor SAML SSO dans votre package d'application à l'aide du package nuget
using miniorange.saml
public class Startup
{
public void ConfigureServices(IServiceCollection services)
{
services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme).AddCookie();
services.AddControllersWithViews();
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
app.UseHttpsRedirection();
app.UseRouting();
app.UseAuthorization();
app.MapRazorPages();
app.UseCookiePolicy();
app.UseAuthentication();
app.UseStaticFiles();
app.UseminiOrangeSAMLSSOMiddleware();
app.Run();
}
}
using Microsoft.AspNetCore.Authentication.Cookies;
using miniOrange.saml;
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddRazorPages();
builder.Services.AddminiOrangeServices(Assembly.GetExecutingAssembly());
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();
app.useantiforgery();
-
Après l'intégration, ouvrez votre navigateur et parcourez le tableau de bord du connecteur avec l'URL ci-dessous :
https://<blazor-application-base-url>/?ssoaction=config
-
Si la page d’inscription ou la page de connexion s’affiche, vous avez ajouté avec succès le connecteur miniOrange ASP.NET SAML SSO à votre application.
-
Inscrivez-vous ou connectez-vous avec votre compte en cliquant sur le S'enregistrer bouton pour configurer l'application.
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 , sélectionnez PingFédérer comme fournisseur d'identité dans la liste affichée.
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 l' 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 :
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 :
- 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 .
-
Sélectionnez le Profils SSO du navigateur modèle de connexion sur le Type de connexion onglet et cliquez
Suivant.
-
Sélectionnez SSO du navigateur sur le Options de connexion onglet et cliquez
Suivant.
-
Choisir Fichier comme méthode d'importation de métadonnées et cliquez sur Choisissez fichier pour choisir les métadonnées du plugin miniOrange SSO sur le Importer des métadonnées languette. Cliquez sur
Suivant.
-
Consultez les informations sur le Résumé des métadonnées onglet et cliquez Suivant.
-
Dans l' Onglet Informations générales s'assurer que le
ID d'entité du fournisseur de services, nom de connexion et
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 navigateurVous serez redirigé vers l’assistant de configuration SSO du navigateur.
-
Sélectionnez le SSO initié par le fournisseur d'identité et
SSO initié par le SP options sur le Profils SAML onglet et cliquez
Suivant.
-
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'assertions et cliquez sur Configurer la création d'assertions. Vous serez redirigé vers l'assistant de configuration de création d'assertions.
- 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.
-
Sélectionnez un Instance d'adaptateur et cliquez sur
SuivantL'adaptateur doit inclure l'adresse e-mail de l'utilisateur.
-
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
Matériau et l'e-mail comme Valeur
sur le Exécution du contrat d’attribut tabulation et clic Suivant.
-
(Facultatif) Sélectionnez les conditions d'autorisation que vous souhaitez sur la page
Critères de délivrance onglet et cliquez
Suivant.
- Cliquez à nouveau OK sur le Résumé.
-
Cliquez à nouveau Suivant sur le
Mappage des sources d'authentification languette.
- Cliquez à nouveau OK dans l'onglet Résumé.
-
Cliquez à nouveau 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 à nouveau
Suivant.
-
Choisir 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.
-
Sélectionnez la politique de chiffrement souhaitée pour les assertions sur le
Politique de cryptage onglet et cliquez Suivant.
-
Cliquez à nouveau OK sur le
Résumé des paramètres de protocole languette.
-
Accédez à la Titres de compétences et cliquez sur le
Configurer les informations d'identification. Vous serez redirigé vers le
Titres de compétences 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é.
- Cliquez à nouveau OK sur le Résumé.
-
Cliquez à nouveau Suivant sur le Titres de compétences.
-
Choisir Active pour
État de la connexion sur le
Activation et résumé onglet et cliquez
Enregistrer.
-
Accédez maintenant au tableau de bord d’administration des utilisateurs de Ping Federate, puis à la fonction Identité.
-
Cliquez à nouveau Gérer tout sous Connexions SP.
-
Cliquez à nouveau Exporter les métadonnées pour la connexion au fournisseur de services souhaité.
-
Cliquez à nouveau Télécharger sur le
Exportation et résumé onglet et cliquez
Terminé.
3. Configurez l'application Blazor SAML en tant que fournisseur de services
Il existe deux manières détaillées ci-dessous avec lesquelles vous pouvez configurer les métadonnées de votre fournisseur d'identité SAML dans l'application.
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 des métadonnées ou le fichier de métadonnées (format .xml uniquement), vous pouvez simplement configurer les métadonnées du fournisseur d'identité dans l'application à l'aide de l'
Télécharger les métadonnées IDP option.
- Vous pouvez vous référer à la capture d'écran ci-dessous :
-
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 et
Certificat SAML X509 champs respectivement.
- Cliquez à nouveau Enregistrer pour enregistrer vos informations IDP.
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.
-
Si vous rencontrez une erreur au niveau de l'application, une fenêtre similaire à celle ci-dessous s'affichera.
- 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.
-
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échargez le 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).
-
Dans le plugin gratuit, vous pouvez configurer uniquement NameID
-
Remarque : tous les attributs mappés seront stockés dans les revendications afin que vous puissiez y accéder dans votre application.
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 Blazor.
-
Copiez-collez simplement cet extrait de code là où vous souhaitez accéder aux attributs utilisateur.
-
À noter: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;
}
var identity = (ClaimsIdentity)User.Identity;
IEnumerable claims = identity.Claims;
string mobileNumber = identity.FindFirst("mobileNumber")?.Value;
}
À noter: 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.
-
Utilisez l'URL suivante comme lien dans l'application à partir de laquelle vous souhaitez effectuer le SSO :
https://blazor-application-base-url/?ssoaction=login
-
Par exemple, vous pouvez l'utiliser comme :
<a href=”https://blazor-application-base-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://blazor-application-base-url/?ssoaction=logout
-
Par exemple, vous pouvez l'utiliser comme :
<a href=”https://blazor-application-base-url/?ssoaction=logout”>Log
out</a>
Pour configurer votre IDP, vous pouvez trouver les métadonnées du fournisseur de services dans le fichier appsetting.json. Pour les métadonnées SP, vous pouvez vous référer à la capture d'écran ci-dessous :
Dès miniOrange section, copiez dépenséityid, acsurl et fournissez-le à l'équipe de votre fournisseur d'identité.
-
Une fois les métadonnées du fournisseur de services configurées du côté de l'IdP, vous recevrez le fichier de métadonnées de l'IdP ou l'URL de métadonnées ou des URL de métadonnées telles que l'ID d'entité IdP, l'URL SSO de l'IdP, etc.
-
Pour configurer vos métadonnées IDP, accédez à
appsettings.json déposer. Vous trouverez les paramètres suivants dans la section JSON du miniorange
-
Pour configurer directement votre IDP, accédez à
appsettings.json fichier.
-
Configurez les métadonnées fournies appropriées et enregistrez les paramètres.
| idp_cert |
Entrez le certificat IDP dans ce champ |
| sourl |
Saisissez l'URL SSO dans ce champ |
| idp_issuer |
Entrez l'émetteur IDP dans ce champ |
Cartographie d'attributs
-
Mappez les attributs de votre application avec les attributs du fournisseur d'identité (IDP).
-
À noter: Tous les attributs mappés seront stockés dans la session afin que vous puissiez y accéder dans votre application.
Code d'intégration
-
Copiez-collez simplement l'extrait de code là où vous souhaitez accéder aux attributs utilisateur.
-
À noter: Tous les attributs mappés seront stockés dans la session afin que vous puissiez y accéder dans votre application.
string name="";
string claimtype="";
string claimvalue="";
if(User.Identity.IsAuthenticated) {
name= User.Identity.Name;
foreach( var claim in User.Claims) {
claimtype = claim.Type;
claimValue = claim.Value;
}
}
Vous pouvez configurer l'application Blazor SAML 2.0 Single Sign-On (SSO) avec n'importe quel fournisseur d'identité tel que
ADFS, Microsoft Entra ID (anciennement 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 supplémentaires
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.