Passer au contenu principal

Authentification SSO

Le Single Sign-On (SSO) pré-autorise vos utilisateurs sur votre Tableau de votes Ducalis, éliminant ainsi le processus de connexion séparé. Vous saurez exactement qui a soumis chaque Idée.

👀 Démo en direct : Connectez-vous à Ducalis, puis visitez https://feedback.ducalis.io/Ducalis-roadmap/summary. Vous verrez vos mêmes identifiants, email, nom, avatar et nom d'entreprise appliqués automatiquement.

Pourquoi utiliser le SSO

Identifiez vos utilisateurs : Comprendre qui a soumis chaque Idée fournit un contexte essentiel pour les retours. Le SSO garantit que vous savez exactement quels utilisateurs ont fourni quels retours.

avertissement

Les Tableaux de votes privés nécessitent le SSO. Le widget vérifie l'identité et les permissions de chaque utilisateur avant d'afficher tout contenu. Sans SSO, le widget ne se chargera pour personne.

Expérience fluide : Les utilisateurs n'ont pas besoin de se connecter séparément pour soumettre des Idées ou voter. Ils peuvent s'abonner au journal des modifications de votre produit en un clic.

Sécurité : La vérification d'identité garde les conversations privées et empêche l'usurpation d'identité. Nous encourageons fortement tous les clients Ducalis à activer la vérification d'identité.

Fenêtre de confirmation d'abonnement

Obtenir le code du widget

  1. Accédez aux Settings (Paramètres) du Tableau de votes.

    Menu des paramètres du Tableau de votes
  2. Sélectionnez Embed (Intégrer) et suivez les instructions.

    Panneau des paramètres d'intégration

Configurer les paramètres d'authentification

Étendez votre code de widget avec les paramètres user :

<script>
!function(b,c,f,d,a,e){b.dclsPxl||(((d=b.dclsPxl=function(){d.callMethod?d.callMethod.apply(d,arguments):d.queue.push(arguments)}).push=d).queue=[],(a=c.createElement("script")).async=!0,a.src=f,(e=c.getElementsByTagName("script")[0]).parentNode.insertBefore(a,e))}(window,document,"https://hi.ducalis.io/js/widget.js")
dclsPxl("initWidget", {
appId: "_YOUR_APP_ID", // Required
boardId: "_YOUR_BOARD_ID", // Required
user: {
// required
email: "Your user Email",
hash: "User hash",
// optional
userID: "Your user ID",
name: "Your user Name",
avatar: "https://you-user-avatar-domain/avatar.png",
company: "Your user Company name",
},
});
</script>

Paramètres utilisateur

email (requis) : Email de l'utilisateur enregistré dans votre produit. Les utilisateurs doivent s'abonner explicitement au journal des modifications ou aux mises à jour du Tableau de votes avec double opt-in. L'email n'est visible que par vos coéquipiers Ducalis à l'intérieur de votre tableau.

Liste des Votants affichant les adresses email Vue détaillée de la liste d'emails

hash (requis) : Vérification de sécurité de l'identité. Voir Générer le hash utilisateur ci-dessous.

userID (facultatif) : L'identification unique de votre produit pour l'utilisateur connecté.

name (facultatif) : Nom de l'utilisateur dans votre produit. S'affiche comme Votant et auteur d'Idée. Visible uniquement par vos coéquipiers Ducalis à l'intérieur de votre tableau.

Noms des Votants affichés sur les Idées

avatar (facultatif) : Avatar de l'utilisateur depuis votre produit. S'affiche dans votre tableau lors de l'évaluation des retours. Clarifie qui a voté et pour quoi ils ont voté.

Avatar utilisateur affiché sur le Tableau de votes

company (facultatif) : Nom de l'organisation si votre produit a des comptes groupés. Recommandé pour consulter les demandes du Tableau de votes groupées par organisation.

Nom de l'entreprise affiché sur le profil du Votant

Pour les retours clients individuels

Si vos retours proviennent principalement d'utilisateurs individuels plutôt que d'entreprises, utilisez les données de l'utilisateur pour le paramètre company (par exemple, nom de l'utilisateur ou email). Cela vous permet de travailler avec des données au niveau entreprise où l'entreprise équivaut au nom de l'utilisateur.

Ajouter des champs personnalisés

Ajoutez des données de contexte personnalisées pour chaque Votant afin de capturer des informations supplémentaires comme les ventes, l'ARR ou le segment de marché. Les retours peuvent différer en fonction de la taille de l'entreprise, du marché ou de l'ancienneté du client.

Dans Ducalis, segmentez par ces données pour analyser les modèles de retours utilisateurs plus en profondeur.

Étendez votre code de widget avec les paramètres company :

<script>
!function(b,c,f,d,a,e){b.dclsPxl||(((d=b.dclsPxl=function(){d.callMethod?d.callMethod.apply(d,arguments):d.queue.push(arguments)}).push=d).queue=[],(a=c.createElement("script")).async=!0,a.src=f,(e=c.getElementsByTagName("script")[0]).parentNode.insertBefore(a,e))}(window,document,"https://hi.ducalis.io/js/widget.js")
dclsPxl("initWidget", {
appId: "_YOUR_APP_ID", // Required
boardId: "_YOUR_BOARD_ID", // Required
user: {
// required
email: "Your user Email",
hash: "User hash",
// optional
userID: "Your user ID",
name: "Your user Name",
avatar: "https://you-user-avatar-domain/avatar.png",
company: {
id: 123, // Required
name: "My Super Client", // Required
customFields: {
prop1: "Active",
prop2: 1.8
}
}
},
});
</script>

company.id, company.name (requis) : Champs requis lors du passage de données de contexte personnalisées.

customFields : Ajoutez autant de propriétés personnalisées que nécessaire. Par exemple, status: "Active" ou arr: 50000.

Générer le hash utilisateur

Pour permettre à vos utilisateurs de voter immédiatement pour des Idées ou d'en créer sur le Tableau de votes Ducalis, transmettez leurs données au widget. Ducalis vérifie que l'utilisateur provient de votre site en contrôlant la clé de hash avec les données utilisateur.

Le hash est généré en utilisant l'algorithme HMAC avec SHA-256. Utilisez l'email de l'utilisateur comme valeur et la clé secrète de votre organisation comme clé.

  1. Trouvez le secret de votre application dans les paramètres globaux de l'organisation :

    Paramètres de l'organisation affichant la clé secrète
  2. Vérifiez la génération du hash utilisateur sur https://www.freeformatter.com/hmac-generator.html

Exemples de génération de hash

Node.js :

const crypto = require("crypto");

// Mettez votre clé secrète ici (gardez-la privée !)
// Notice: the one below is an example, yours will be different
const secretKey = "0fd72e0ff53b274293029fd1f3f40c92123123123easf2edq312edwe";
var email = "user@gmail.com";
var hash = crypto.createHmac("sha256", secretKey).update(email).digest("hex");

console.log("hash is:", hash);

PHP :

$secret = '0fd72e0ff53b274293029fd1f3f40c92123123123easf2edq312edwe';
$email = 'user@gmail.com';
$hash = hash_hmac('sha256', $email, $secret);

echo 'Hash is: '. $hash;

Utiliser votre domaine

Par défaut, votre Tableau de votes est situé dans le domaine hi.ducalis.io, comme https://feedback.ducalis.io/Ducalis-roadmap/summary.

avertissement

Les navigateurs modernes bloquent les cookies inter-domaines, rendant l'identification des utilisateurs impossible sans domaine personnalisé.

Pour une expérience fluide du Tableau de votes, placez votre Tableau de votes sur le même domaine de second niveau que votre produit et les pages où vous intégrez les widgets. Cela permet de garder les utilisateurs identifiés à la fois dans le widget et le Tableau de votes.

Consultez Configuration d'un domaine personnalisé pour configurer l'adresse de votre Tableau de votes comme ideas.nomdevotreentreprise.com.

Exemple d'authentification inter-domaines

Votre domaine est superproduct.com. Votre produit s'exécute sur app.superproduct.com, les pages marketing sur superproduct.com, et le centre d'aide sur help.superproduct.com. Connectez votre Tableau de votes Ducalis au même domaine, comme voting.superproduct.com.

Ainsi seulement tous vos utilisateurs seront identifiés avec les mêmes identifiants à la fois dans le widget et le Tableau de votes.

Mis à jour : Cette semaine