O Single Sign On (SSO) permita que os seus usuários acessem em seu portal de suporte usando tanto as suas credenciais Gmail, Facebook ou Twitter, em vez de exigir-los manualmente para se inscrever para uma conta. Você também pode criar um mecanismo de SSO para validar os usuários que tentam entrar em sua portal para Freshdesk usando o script hospedado localmente. Estes poderiam ser os usuários que já têm uma conta em sua aplicação web ou cujas informações você tem armazenado em sua aplicação interna como o Active Directory.


Aqui está como SSO / autenticação remota funciona:

Um usuário (agente / cliente) quer acessar remotamente ao seu portal de suporte.

Você redirecionar o usuário para uma página de login remoto a configurar.

O usuário digita suas credenciais de login e você validar ele.

Você deve executar uma criptografia HMAC-MD5 em seus detalhes de login (nome, e-mail e hora), utilizando as ações Freshdesk chave secreta com você e gerar um hash.

Você envia Freshdesk o valor criptografado e detalhes de login do usuário da seguinte maneira:


['freshdesk_domain_name']+"login/sso?name=

"+current_user.username+"&email="+current_user.email+

"×tamp="+utctime+

"&phone="+phone+ 

"&company="+company+

“&hash="+gen_hash_from_params_hash(utctime)



Freshdesk executa a mesma criptografia HMAC-MD5 em seus detalhes de login usando a chave secreta e verifica se o hash resultante corresponde o hash que você enviou.

Se forem iguais, Freshdesk sabe que o usuário tenha sido validado pelo que você já e concede acesso ao seu portal. 



 


► Guia rápido sobre como ativar a autenticação remota no seu portal Freshdesk:

► Por favor, note que você vai precisar de ajuda do desenvolvedor para configurar o SSO. 

► Acesse seu portal como administrador. Certifique-se de que você é um agente de tempo integral em seu helpdesk.

► Clique em "Administrador - Configurações Gerais - Segurança". 

► Activar Single Sign On, clicando na alternância.

► Irá aparecer uma chave secreta que você vai compartilhar com Freshdesk. Esta chave deve ser mantida confidencial quanto qualquer um espera obter nesta chave pode usá-lo para acessar o seu portal de suporte.

► Configurar o seu login remoto e remoto Sair páginas e fornecer essas URLs aqui.

URL Login Remoto: Este é o URL da página para que Freshdesk vai redirecionar os usuários que solicitam login remoto para o seu portal de suporte. Aqui está como você pode configurá-lo usando Ruby.

URL Sair remoto: Freshdesk redireciona os usuários que se conectam a partir do seu portal de suporte a esta página.



• Parâmetros e propriedades.

► Nome: O nome do usuário logar, seja ele novo ou velho, será definido para o usuário com o endereço de e-mail correspondente enviada. 

► E-mail: Um endereço de email válido precisa ser aprovada. Se nenhum usuário existe com este e-mail em Freshdesk, é criada uma conta para ele em movimento. 

► Timestamp: O carimbo de hora UTC de quando o usuário tenta ligar-se remotamente em segundos desde época. Este valor tem de estar dentro dos últimos 30 minutos. Caso contrário, o hash é rejeitado e o usuário é negado login. 

► Telefone: Um número de telefone pode ser passado como um parâmetro opcional. Isto no entanto não é utilizado para gerar o valor hash. 

companhia

O nome da empresa pode ser passado como um parâmetro opcional. Isto no entanto não é utilizado para gerar o valor hash.

► Valor de hash: Uma criptografia HMAC-MD5 de Nome, e-mail e Timestamp feito usando a chave secreta compartilhada. 

► Redirect_to (opcional): Normalmente, uma vez que um usuário faz login no seu portal de suporte, ele é levado para a página inicial. Você pode personalizar este de acordo com os papéis de seus usuários. Por exemplo, uma vez que você verificar o usuário e descobrir o que ele é um administrador, ele poderia ser redirecionado para support.yourcompany.com/Admin/home. Se ele é o seu cliente, ele pode ser levado para sua visão tickets recentes. Isso pode ser feito anexando & redirect_to = "o URL para o usuário precisa acessar" com a autenticação que você enviar de volta para Freshdesk que contém os valores de hash e login.


Criando a página de login remoto

O próximo passo é configurar uma página de login remoto que irá realizar a autenticação com Freshdesk usando o Shared chave secreta. Isto é feito passando um hash HMAC-MD5 de volta para Freshdesk que contém o necessário mail, nome e carimbo tempo juntos.

Você pode encontrar códigos de amostra nos seguintes links:

Ruby - https://github.com/kirandarisi/freshdesk_sso

Java - https://github.com/kirandarisi/freshdesk_sso_java/blob/master/FDHmac.java

ASP.NET C# - https://gist.github.com/barryokane/2718191

ASP.NET MVC - https://gist.github.com/kellyelton/8776309