Resumo
O login único de consulta assinada (SQSSO) é um mecanismo leve de login único que você pode usar para fazer login “silenciosamente” de seus usuários na LearnUpon.
A integração de SSO e os idiomas adicionais do portal estão disponíveis dependendo do seu plano da LearnUpon.
Mecanismo leve não significa menos seguro. Nesse contexto, isso significa que ele é mais fácil implementar do que alguns módulos SSO, como OAuth ou SAML.
A premissa básica por trás do SQSSO é que tanto a LearnUpon quanto um terceiro compartilham uma chave secreta. Usando essa chave secreta, o chamador (o sistema do cliente) “assina” uma solicitação de URL: uma solicitação para fazer login de um usuário na LearnUpon. Depois que a LearnUpon validar essa solicitação, o usuário será conectado ao seu portal na LearnUpon “silenciosamente”, ou seja, sem a necessidade de se autenticar novamente.
Se você precisar de acesso ao SQSSO em seu portal, entre em contato com a equipe de suporte.
Configurações gerais do SQSSO
Essas configurações controlam o caminho padrão quando os usuários fazem login.
Depois que a equipe de suporte ativar o SQSSO no seu portal:
- Na navegação principal, vá para Configurações > Integrações > SSO QueryString assinado.
- Selecione Configurações gerais.
- Selecione Ativado? para ativar o recurso SQSSO.
- Em Páginas de destino, verifique as configurações padrão ou digite
- Página de destino: para logins bem-sucedidos
- URL não autorizado: página de destino para logins não autorizados ou com erro
- URL de logout: a página que os usuários veem quando fazem logout
- Opcionalmente: para criar um caminho de login diferente, selecione Desativar página de login do portal? e insira um URL de login alternativo.
- Em Parâmetros de URL, insira quaisquer parâmetros de URL de SQSSO personalizados e altere qualquer nome de parâmetro padrão, conforme necessário.
- Em Assinatura de URL, revise as configurações padrão ou digite:
- sua chave secreta do SQSSO
- formato de token assinado
- nome do parâmetro do nome de usuário (se os nomes de usuário estiverem habilitados)
- Clique em Salvar para concluir.
Observação: Veja mais detalhes sobre como a chave secreta é usada na seção SSOToken.
Configurações de usuário do SQSSO
Em Configurações do usuário, você tem a opção de criar novos usuários. Ativar essa opção permite especificar parâmetros para:
- nome e sobrenome do aluno
- uma preferência de idioma opcional, para que os alunos possam fazer login em um portal no idioma de sua preferência
- tipo de associação, se estiver em uso
Essa opção também atualiza as informações do usuário existente para manter seus dados sincronizados.
Os códigos de idioma usados pela LearnUpon estão disponíveis no guia da API.
- Na navegação principal, vá para Configurações > Integrações > SSO QueryString assinado.
- Selecione Configurações do usuário.
- Selecione Criar usuários se eles não existirem?
- Insira os parâmetros que você usa.
- Opcionalmente: selecione Inscrever usuários automaticamente em cursos publicados? para adicionar novos usuários automaticamente aos seus cursos.
A captura de tela a seguir mostra as opções de Configurações do usuário.
- Se a sua organização usa campos de dados personalizados editáveis, especifique o nome do parâmetro para cada campo de dados personalizado para que a LearnUpon possa atualizar esses dados e mantê-los sincronizados.
- Clique em Salvar para concluir.
Observação: O SQSSO só pode atualizar campos de dados personalizados editáveis do usuário. Consulte Dados personalizados do usuário: configurar campos personalizados.
A captura de tela a seguir mostra os parâmetros de exemplo de Configurações personalizadas de dados do usuário.
Exemplo de chamada SSO
Leia um exemplo de como seria uma solicitação de URL de SSO e, em seguida, analise as configurações discutidas para ver como elas se encaixam na chamada.
Um usuário conhecido jose.silva@empresa.com faz login em seu site www.empresa.com e você deseja permitir que ele acesse a LearnUpon sem precisar de um login adicional, ou seja, o acesso ao seu site dá a ele acesso à LearnUpon. Você quer um login integrado, em que um login basta para acessar tudo.
Você cria um novo botão ou link em www.empresa.com que aparece apenas para usuários conectados: neste exemplo, use um link que diz Acessar meu aprendizado.
Quando o usuário seleciona Acessar meu aprendizado, esse evento faz com que seu aplicativo:
- gere um link de SQSSO para acessar a LearnUpon
- redirecione o usuário para o local do link de SQSSO
Esse link de SQSSO terá a seguinte aparência:
Cada componente do URL cria parte da solicitação.
Componentes do URL
Componente | Descrição |
https |
Todo acesso ao SQSSO é direcionado por SSL (Camada de soquete seguro), um protocolo que proporciona transmissão segura. |
seuportal.learnupon.com |
Use o subdomínio/URL para acessar seu portal na LearnUpon. |
/sqsso? | Necessário para acessar o serviço SQSSO da LearnUpon. |
Email=jose.silva@empresa.com |
Aqui, você está especificando qual usuário está efetuando login na LearnUpon. Por padrão, a LearnUpon usa o e-mail como identificador exclusivo do usuário. Você pode ativar o nome de usuário em vez do endereço de e-mail como identificador exclusivo em seu portal. Nesse caso, SSOUserName atua como o identificador no URL. Entre em contato com o Suporte da LearnUpon para obter mais informações se sua empresa requer nomes de usuário. Observação: se o usuário ainda não existir na LearnUpon, você poderá criá-lo automaticamente como parte do processo. Por enquanto, suponha que o usuário existe na LearnUpon, e esse e-mail o identifica. Se o usuário não for encontrado na LearnUpon, o aplicativo rejeitará a tentativa de login único. |
SSOUserName=jose.silva |
Esse é um valor/nome de usuário exclusivo do usuário no aplicativo que emite a solicitação de SSO. Não armazenamos esse valor na LearnUpon, a menos que você implemente nomes de usuário. Se você implementar nomes de usuário em seu portal, a LearnUpon usará esse valor para pesquisar o usuário ao autenticá-lo. Se você não implementar nomes de usuário, a LearnUpon recomenda que você use um valor exclusivo interno ao seu próprio sistema, que nem todos saibam: por exemplo, um id exclusivo para uma coluna/linha de usuário no banco de dados. Considere a geração de uma string segura/aleatória para cada URL do SQSSO que você gerar. O que você usar deve ser exclusivo por usuário. |
Lang=nn Lang=nn_nn |
O componente de idioma é opcional. Se o seu portal usar idiomas adicionais e especificar uma escolha de idioma para o usuário na solicitação de SSO, o usuário poderá acessar o portal no idioma de sua preferência. |
Tipo de adesão |
Observação: aplica-se somente ao recurso Associações. Você pode especificar o tipo de adesão dos usuários (como Membro ou Não membro). Se os tipos de adesão especificados não existirem em seu portal, o usuário receberá o tipo de adesão padrão de Membro. Você pode alterar o tipo de adesão padrão em Configurações. |
TS= |
Essa é a hora gravada no formato Unix UTC, que é um formato padrão em todas as linguagens de programação. A solicitação precisa de um carimbo de data/hora porque a LearnUpon rejeitará todas as solicitações com mais de 30 segundos. Carimbo de data/hora em Ruby: Time.now.getutc.to_iCarimbo de data/hora no PHP: $date = new DateTime(); $utc_timestamp = $date->getTimestamp(); |
SSOToken= |
O SSOToken é a ação de consulta assinada do URL. Exemplo: usemos o seguinte formato de token assinado: USER=jose.silva&TS=1366383106&KEY=sua_chave_secreta sua_chave_secreta é a chave secreta conhecida compartilhada entre seu aplicativo e a LearnUpon. Aplique o algoritmo de hash definido em seu portal (Configurações > Integrações > SQSSO > Configurações gerais) a essa string. O hash gerado agora é adicionado ao URL do SQSSO com o parâmetro SSOToken. |
Lembrete de chamada de exemplo
Configurações de SQSSO em detalhes
Revise a página Configurações da LearnUpon > Integrações > Integração do SQSSO.
Configurações |
Descrição |
Ativado? |
Alterne o controle para ativar ou desativar o SSO em seu portal. |
Página de destino |
O painel da LearnUpon é a página de destino padrão. Ao fazerem login, os usuários são direcionados ao painel. Se você usar o e-commerce ou o catálogo interno em um portal, poderá enviar os usuários para essas páginas depois que eles fizerem login. Dica: você pode personalizar esse destino especificando um redirect_uri na chamada de URL do SQSSO. Consulte Redirecionar URI, em que você substitui essa configuração da Página de destino e especifica outro destino. |
Criar usuários que não existirem? |
Essa opção aparecerá se o usuário que estiver fazendo login ainda não existir na LearnUpon. Se você ativar essa configuração, a LearnUpon criará os usuários para você usando o endereço de e-mail (ou nomes de usuário, se você os tiver implementado) e gerará uma senha aleatória para eles. Observação: a senha é desconhecida para o usuário final, portanto, você deve cuidar do gerenciamento de senhas. Principalmente se um usuário alterar a senha na LearnUpon, ele poderá não saber qual login usar em cada site. |
Inscrever usuários automaticamente em cursos publicados? |
Quando um usuário faz login bem-sucedido na LearnUpon, o aplicativo o inscreve automaticamente em todos os cursos publicados em seu portal. Nos logins subsequentes via SSO o aplicativo confirma que ele está inscrito em todos os cursos e o inscreve em novos cursos. |
{login_param} Nome do parâmetro de login |
Informa à LearnUpon o nome do parâmetro de login para os parâmetros de URL. O padrão é e-mail ou E-mail. Por padrão, o endereço de e-mail é o identificador exclusivo de um usuário. Para configurar o nome de usuário como alternativa, entre em contato com a equipe de suporte. |
{time_stamp_param} Nome do parâmetro do carimbo de data/hora |
Informa à LearnUpon o nome do parâmetro de URL do carimbo de data/hora: o padrão é TS. |
{username_param} Nome do parâmetro de nome de usuário |
Informa à LearnUpon o nome do parâmetro Nome de usuário nos parâmetros de URL: o padrão é SSOUserName. |
{lang} Nome do parâmetro de idioma padrão do usuário
|
Informa à LearnUpon o idioma padrão do usuário, para que o usuário visualize o portal em seu idioma de preferência. |
{membership_type_param} Nome do parâmetro do tipo de adesão
|
Informa à LearnUpon o nome do parâmetro do tipo de adesão, nos parâmetros de URL. O padrão é MembershipType. Esse parâmetro só se aplica se você ativar o modo LearnUpon para Associações no seu portal. |
{secret_key} Sua chave secreta. |
A chave secreta compartilhada entre você e a LearnUpon. Você pode alterá-la a qualquer momento: se fizer isso, deverá atualizar seu código de terceiros e/ou site com as mesmas informações. |
Nome do parâmetro de token |
Informa à LearnUpon o nome do parâmetro de URL que contém seu token SSO assinado. |
Formato de token assinado |
Use essa configuração para personalizar o formato do token assinado. A LearnUpon recomenda usar a configuração padrão. Exemplo de caso de uso: se você não tiver um SSOUserName disponível para o processo de SSO, então você pode omiti-lo configurando o formato de token para: TS={time_stamp_param}&KEY={secret_key} |
URL não autorizado |
Permite especificar um URL de destino se a solicitação de SSO do usuário for rejeitada e não autorizada. O padrão é /users/sign_in, a página de login da LearnUpon. |
URL de logout |
Permite especificar um URL de destino para quando um usuário (que fez login via SSO) fizer logout. O padrão é /users/sign_in, a página de login da LearnUpon. |
URI de redirecionamento
Conforme mencionado em Configurações de SQSSO em detalhes: nas configurações do SQSSO você pode especificar uma página de destino para usuários que se conectam com êxito à LearnUpon via SSO.
Opcionalmente: você pode substituir essa configuração e especificar seus próprios URLs personalizados usando um parâmetro redirect_uri.
Exemplo
Você pode especificar qualquer URL aqui:
- um URL para um curso em sua loja: os usuários poderão visualizar a descrição do curso e optar por se inscrever
- um URL na LearnUpon: qualquer URL que você queira usar
- iniciar um curso para o usuário: inscreve o usuário e abre o curso imediatamente
Redirecionar o usuário para sua loja
Redirecionar para um curso específico na loja
Este exemplo requer o course_id que você deseja que o usuário visualize. Você pode extrair essa informação de nossa API ou talvez tenha os IDs registrados em seu próprio site.
Substitua {course_id} pelo ID do curso, como destino, depois que o usuário fizer login na LearnUpon. https://yourportal.learnupon.com/sqsso?Email=jose.silva@empresa.com&SSOUserName=jose.silva&SSOToken=4e9f552e86b8ad7f37a64eba6e867043&TS=1366383106&redirect_uri=/store/{course_id}
Redirecionar o usuário para seu catálogo
Redirecionar para um curso específico no catálogo
Este exemplo requer o course_id que você deseja que o usuário visualize. Você pode extrair essa informação de nossa API ou talvez tenha os IDs registrados em seu próprio site.
Substitua {course_id} pelo ID do curso, como destino, depois que o usuário fizer login na LearnUpon. https://yourportal.learnupon.com/sqsso?Email=jose.silva@empresa.com&SSOUserName=jose.silva&SSOToken=4e9f552e86b8ad7f37a64eba6e867043&TS=1366383106&redirect_uri=/catalog/{course_id}
Iniciar um curso específico para um usuário
Este exemplo requer o enrollment_id do curso que você deseja iniciar. Você pode extrair essas informações de usuário de nossa API ou talvez tenha inscrito um usuário antes do processo de SSO, dando a você um enrollment id.
Dica: para abrir a página de descrição do curso quando a inscrição for iniciada, adicione %3Fvd%3D1 ao final de redirect_urii, o que enviará um parâmetro de redirecionamento de ?vd=1.
Desativar página de login
Consulte: Configurar o SSO via SAML em seu portal
Se você selecionar Desativar página de login do portal em Configurações > Integrações > SSO via SAML > Configurações gerais, ainda poderá acessar a página de login do portal adicionando users/sign_in?no_sso=true ao URL padrão do portal. Por exemplo:
nomedaempresa.learnupon.com/users/sign_in?no_sso=true
Observação: ao fazer login por SSO, você é autenticado para um único portal, e não em todos os seus portais. O alternador de portal na barra de navegação superior mostra apenas os portais aos quais você já está conectado.
Para manter o acesso a todos os seus portais por meio do alternador de portal, faça login pela página de login da LearnUpon, adicionando o sufixo users/sign_in?no_sso=true
ao URL do portal.
Consulte: