Help > Forum > Integração de sites > Logon único - autenticação baseada em token
Logon único - autenticação baseada em token
Se você estiver usando o WordPress, use nosso plugin WordPress.
Podemos fazer isso por você - Vá para as configurações de logon único e selecione o construtor de sites para que nossa equipe de desenvolvimento integre o SSO para você, a partir de apenas $199.
Também oferecemos suporte ao logon único usando SAML, OAuth2, LDAP, SQL e OpenID.
Você pode usar a API de logon único (SSO) para registrar automaticamente seus visitantes em seu fórum. Isso pode ser útil se você tiver uma área de login separada em seu site e não quiser que seus visitantes façam login duas vezes.
A API SSO permite que você faça uma solicitação de API para obter um token de login para um usuário e, em seguida, incluí-lo no endereço do fórum para fazer login do usuário.
Siga as instruções abaixo para integrar a API de SSO em seu site:
-
Faça uma solicitação para um token de login
No script de login do seu site, faça um Solicitação HTTP para o URL de login da API SSO:https://FORUM_DOMAIN/register/setauthtoken?type=json&apikey=APIKEY&user=USERSubstitua APIKEY pela chave de API que você recuperou na etapa 1.Substitua USER pelo nome de usuário do fórum que você gostaria de fazer login. Se o seu site não usa nomes de usuário, você pode usar um endereço de e-mail como nome de usuário. Como alternativa, se você tiver o ID de usuário do fórum do usuário armazenado em seu banco de dados, um parâmetro &userid= USERID poderá ser usado em vez do parâmetro &user= USER.
Opcionalmente, você pode incluir um parâmetro &email=Email se quiser que a conta do fórum seja criada automaticamente nos casos em que a conta do fórum especificada ainda não exista. Recomendamos incluir o parâmetro de e-mail. (Substitua EMAIL pelo endereço de e-mail do usuário.)
Opcionalmente, você também pode especificar outras informações da conta, como o nome completo do usuário (parâmetro “nome”), avatar (parâmetro “avatar”) e muito mais. Parâmetros adicionais devem ser codificados por URL.
Se você estiver usando PHP, é altamente recomendável usar nossa biblioteca PHP SSO. Ele contém um arquivo com todo o código da biblioteca de que você precisa e outros arquivos com exemplo de uso.
-
Obtenha o token da resposta
Analise o JSON retornado pela solicitação HTTP para obter o token de autenticação e o ID do usuário e armazená-lo em um cookie ou em seu banco de dados. O token de autenticação expira em 6 meses ou imediatamente após ter sido usado para garantir um alto nível de segurança. A resposta JSON será semelhante a esta:{ "authtoken": "88SngRVArwrsZ053lfrqL", "userid": 424764 }
Se ocorrer um erro, um JSON semelhante ao JSON abaixo aparecerá em vez da resposta JSON normal:
{ "message": "The error message will be here." }
-
Faça login do usuário com o token
Passe o token de autenticação no link do fórum em seu site. Por exemplo:<a href="https://FORUM_DOMAIN/?authtoken=AUTHTOKEN&remember=REMEMBER">Forum</a>Substitua AUTHTOKEN pelo token de autenticação recuperado nas etapas anteriores. Substitua LEMBRAR por 1 se você quiser manter o usuário conectado mesmo depois que o navegador for fechado ou exclua-o se desejar que o usuário seja desconectado no final da sessão do navegador.
Se você estiver usando o código incorporado, poderá passar o token de autenticação para a página na qual o fórum está incorporado ou dentro do atributo src do código incorporado. Por exemplo:
<!--Begin Website Toolbox Forum Embed Code-->
<div id="wtEmbedCode"><script type="text/javascript" id="embedded_forum" src="https://FORUM_DOMAIN/js/mb/embed.js?authtoken=AUTHTOKEN&remember=REMEMBER"></script> <noscript><a href="https://FORUM_DOMAIN">Forum</a></noscript></div>
<!--End Website Toolbox Forum Embed Code-->Como alternativa, se você não quiser passar o token de autenticação no endereço do fórum, você pode adicionar a seguinte tag HTML IMG à sua página de destino “login bem-sucedido”:
<img src="//FORUM_DOMAIN/register/dologin?authtoken=AUTHTOKEN&remember=REMEMBER" border="0" width="1" height="1" alt="">Devido ao bloqueio de cookies de terceiros no navegador Safari, a abordagem da tag IMG não funcionará no Safari, a menos que seu fórum tenha sido configurado para usar um subdomínio.
-
Faça logout do usuário com o token
Depois que um usuário sair do seu site, redirecione-o para o seguinte endereço para também desconectá-lo do fórum:
https://FORUM_DOMAIN/register/logout?authtoken=AUTHTOKEN&redirect=REDIRECT_URLSubstitua REDIRECT_URL pelo endereço do site codificado por URL para o qual você gostaria de enviar o usuário após ele ter sido desconectado do fórum. Substitua AUTHTOKEN pelo token de autenticação recuperado nas etapas anteriores. Quando usado para fazer logout, um token é válido por 6 meses, mesmo que já tenha sido usado para fazer login de um usuário. Depois de usado para desconectar um usuário, o token expira imediatamente.
Como alternativa, se você não quiser redirecionar o usuário, você pode adicionar a seguinte tag HTML IMG à página de destino “logout bem-sucedido” em seu site:
<img src="//FORUM_DOMAIN/register/logout?authtoken=AUTHTOKEN" border="0" width="1" height="1" alt="">Devido ao bloqueio de cookies de terceiros no navegador Safari, a abordagem da tag IMG não funcionará no Safari, a menos que seu fórum tenha sido configurado para usar um subdomínio.
-
Faça seu fórum usar a página de login do seu site
Na seção Configurações -> Login único da sua conta do Website Toolbox, especifique o endereço da página de Login do seu site para garantir que todos os logins do fórum ocorram usando o formulário de login do seu site.
-
Faça seu fórum usar a página de logout do seu site
Opcionalmente, na seção Configurações -> Logon único da sua conta do Website Toolbox, especifique o endereço da página de Logout do seu site para garantir que os usuários vejam a página de logout do seu site depois de terem sido desconectado do fórum.
Use um domínio personalizado e nosso código de incorporação, API e webhooks para configurar ainda mais integração.
If you still need help, please contact us.