Autenticação SSO
O Single Sign-On (SSO) pré-autoriza seus usuários no Quadro de Ideias do Ducalis, eliminando o processo de login separado. Você saberá exatamente quem enviou cada Ideia.
👀 Demonstração ao vivo: Faça login no Ducalis e visite https://feedback.ducalis.io/Ducalis-roadmap/summary. Você verá o mesmo login, e-mail, nome, avatar e nome da empresa aplicados automaticamente.
Por que usar SSO
Identifique seus usuários: Entender quem enviou cada Ideia fornece contexto essencial para o feedback. O SSO garante que você saiba exatamente quais usuários forneceram qual feedback.
Quadros de Ideias privados exigem SSO. O widget verifica a identidade e as permissões de cada usuário antes de exibir qualquer conteúdo. Sem SSO, o widget não carregará para ninguém.
Experiência fluida: Os usuários não precisam fazer login separadamente para enviar Ideias ou votar. Eles podem assinar o changelog do seu produto com um clique.
Segurança: A Verificação de Identidade mantém conversas privadas e evita falsificação de identidade. Recomendamos fortemente que todos os clientes do Ducalis ativem a Verificação de Identidade.
Obter o código do widget
-
Acesse Settings (Configurações) do Quadro de Ideias.
-
Selecione Embed (Incorporar) e siga as instruções.
Configurar parâmetros de autenticação
Estenda o código do seu widget com os parâmetros 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>
Parâmetros de usuário
email (obrigatório): E-mail do usuário registrado no seu produto. Os usuários devem assinar explicitamente o changelog ou atualizações do Quadro de Ideias com dupla confirmação. O e-mail é visível apenas para os membros da sua equipe do Ducalis dentro do seu quadro.
hash (obrigatório): Verificação de segurança de identidade. Veja Gerar hash de usuário abaixo.
userID (opcional): A identificação única do seu produto para o usuário logado.
name (opcional): Nome do usuário no seu produto. Exibido como votante e autor da Ideia. Visível apenas para os membros da sua equipe do Ducalis dentro do seu quadro.
avatar (opcional): Avatar do usuário do seu produto. Exibido no seu quadro ao avaliar feedback. Esclarece quem votou e no que votou.
company (opcional): Nome da organização se o seu produto tiver contas agrupadas. Recomendado para visualizar solicitações do Quadro de Ideias agrupadas por organização.
Para feedback de clientes individuais
Se o seu feedback vem principalmente de usuários individuais e não de empresas, use os dados do usuário para o parâmetro company (por exemplo, nome ou e-mail do usuário). Isso permite trabalhar com dados no nível de empresa, onde empresa é igual ao nome do usuário.
Adicionar campos personalizados
Adicione dados de contexto personalizados para cada Votante para capturar informações adicionais como vendas, ARR ou segmento de mercado. O feedback pode variar com base no tamanho da empresa, mercado ou idade do cliente.
No Ducalis, segmente por esses dados para analisar padrões de feedback do usuário de forma mais profunda.
Estenda o código do seu widget com os parâmetros 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 (obrigatório): Campos obrigatórios ao passar dados de contexto personalizados.
customFields: Adicione qualquer número de propriedades personalizadas. Por exemplo, status: "Active" ou arr: 50000.
Gerar hash de usuário
Para permitir que seus usuários votem imediatamente em Ideias ou as criem no Quadro de Ideias do Ducalis, passe os dados deles para o widget. O Ducalis verifica se o usuário veio do seu site verificando a chave hash junto com os dados do usuário.
O hash é gerado usando o algoritmo HMAC com SHA-256. Use o e-mail do usuário como valor e a chave secreta da sua organização como chave.
-
Encontre o segredo do seu aplicativo nas configurações globais da organização:
-
Verifique a geração do hash de usuário em https://www.freeformatter.com/hmac-generator.html
Exemplos de geração de hash
Node.js:
const crypto = require("crypto");
// Put your secret key here (keep it private!)
// 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;
Usar seu domínio
Por padrão, seu Quadro de Ideias está localizado no domínio hi.ducalis.io, como https://feedback.ducalis.io/Ducalis-roadmap/summary.
Navegadores modernos bloqueiam cookies entre domínios, tornando a identificação do usuário impossível sem um domínio personalizado.
Para uma experiência fluida no Quadro de Ideias, coloque seu Quadro de Ideias no mesmo domínio de segundo nível do seu produto e das páginas onde você incorpora widgets. Isso mantém os usuários identificados tanto no widget quanto no Quadro de Ideias.
Consulte Configurar um domínio personalizado para configurar o endereço do seu Quadro de Ideias como ideas.suaempresa.com.
Exemplo de autenticação entre domínios
Seu domínio é superproduto.com. Seu produto é executado em app.superproduto.com, páginas de marketing em superproduto.com e central de ajuda em ajuda.superproduto.com. Conecte seu Quadro de Ideias do Ducalis ao mesmo domínio, como ideias.superproduto.com.
Somente assim todos os seus usuários serão identificados com as mesmas credenciais no widget e no Quadro de Ideias.