OneLogin IdP
Introdução
Single Sign-on (SSO) é uma tecnologia que permite aos usuários fazer login apenas uma vez e, em seguida, acessar múltiplas aplicações/serviços sem a necessidade de reautenticação.
Se um portal web inclui várias seções independentes grandes (fórum, chat, blogs etc.), um usuário pode passar pelo procedimento de autenticação em um dos serviços e automaticamente obter acesso a todos os outros serviços sem precisar inserir credenciais várias vezes.
O SSO é sempre garantido pela operação conjunta de duas aplicações: um Provedor de Identidade e um Provedor de Serviço (também chamados de "IdP" e "SP"). O SSO do ONLYOFFICE implementa apenas o SP. Muitos provedores diferentes podem atuar como IdP, mas este artigo considera a implementação do OneLogin.
Criando um IdP no OneLogin
-
Inscreva-se no OneLogin, se ainda não estiver registrado;
-
Faça login no OneLogin como administrador;
-
Vá para o menu Applications -> Applications -> Add App:

-
No campo de busca Find Application, digite o seguinte texto: SAML Custom Connector (Advanced):

-
Selecione a opção encontrada;
-
Em uma nova janela que se abre, insira qualquer Display Name, por exemplo, "IDP OneLogin Apps", para distinguir esta aplicação das outras, e clique no botão Save:

-
Vá para o submenu Configuration e preencha os campos de acordo com a tabela abaixo:
observaçãoPor favor, especifique seu próprio nome de domínio ou IP público onde seu SP do ONLYOFFICE está hospedado em vez de
myportal-address.com.Detalhes da Aplicação RelayState https://myportal-address.comAudience (EntityID) https://myportal-address.com/sso/Recipient https://myportal-address.com/sso/acsACS (Consumer) URL Validator* ^https:\/\/myportal-address\.com\/sso\/acs$ACS (Consumer) URL* https://myportal-address.com/sso/acsSingle Logout URL https://myportal-address.com/sso/slo/callbackSAML initiator Service Provider SAML nameID format Email SAML issuer type Specific SAML signature element Assertion Encrypt assertion ✔ (marque esta caixa) Método de criptografia SAML AES-128-CBC Assinar solicitação SLO ✔ (marque esta caixa) Assinar resposta SLO ✔ (marque esta caixa) 


-
Clique no botão Save e vá para o submenu Parameters:

-
Use o link Add parameter para criar 3 parâmetros (
givenName,sn,mail). Marque a opção Include in SAML assertion e especifique um valor da lista Value, adequada para emissão a partir do catálogo de campos do diretório LDAP, para todos eles:
-
Depois de preencher todos os campos necessários para os atributos de asserção SAML no IdP, você deve obter um resultado quase igual ao mostrado na figura abaixo. Clique no botão Salvar:

-
Vá para o submenu SSO. Escolha um certificado válido na lista de certificados clicando no link Alterar, se você tiver vários certificados. No campo Algoritmo de Assinatura SAML, deixe a opção SHA-1 e clique no botão Salvar:

-
Copie o link do campo URL do Emissor (por exemplo,
https://app.onelogin.com/saml/metadata/4d87973f-629d-4a52-812e-bde45eff92b8) e acesse o seu espaço de trabalho ONLYOFFICE entrando como administrador. Abra a página Configurações -> Integração -> Single Sign-On.
Configurando ONLYOFFICE SP
-

Ative o SSO usando o interruptor Habilitar autenticação single sign-on e cole o link copiado do URL do emissor OneLogin no campo URL para XML de metadados do provedor de identidade:

-
Pressione o botão com a seta para cima para carregar os metadados do IdP, ou use o botão Selecionar arquivo para carregar o arquivo XML de metadados. O formulário Configurações do provedor de serviço do ONLYOFFICE será preenchido automaticamente com seus dados do OneLogin IdP:

-
Agora você precisa criar um certificado na seção Certificados do provedor de serviço. Para fazer isso, clique no botão Adicionar certificado na seção correspondente:
-
Na janela modal aberta, clique no link Gerar Novo Certificado Autoassinado, escolha a opção Assinatura e criptografia na lista Usar para. Antes de salvar o certificado, copie o texto do Certificado Público para a área de transferência (será necessário para o OneLogin), depois clique no botão OK:

-
Na seção Mapeamento de atributos, verifique se os campos Nome, Sobrenome e Email contêm os nomes de atributos criados no submenu Parameters do OneLogin:
givenName,snemail; -
Na seção Tipo de usuário, selecione o tipo que todos os usuários adicionados via SSO receberão no espaço de trabalho. As opções de Configurações avançadas abaixo dela são opcionais;
-
Clique no botão Salvar;
-
A seção Metadados do provedor de serviço do ONLYOFFICE deve ser aberta:
-
Retorne ao OneLogin para configurar a criptografia, abra seu aplicativo e vá para o submenu Configuração. Role a página para baixo - o novo campo Criptografia SAML para inserir uma chave de criptografia deve aparecer. Cole o texto do Certificado Público copiado do passo 4 desta instrução neste campo e clique no botão Salvar:

Criando usuários no OneLogin e concedendo-lhes acesso ao ONLYOFFICE
Para criar usuários no OneLogin e fornecer-lhes acesso ao nosso SP do ONLYOFFICE, execute as seguintes etapas:
-
Vá para a página de Usuários do OneLogin entrando como administrador:

-
Crie um novo usuário ou edite um existente;
-
Vá para o submenu Aplicações e clique no botão +;
-
Selecione nosso aplicativo recém-criado da lista e clique em Continuar:

-
Em uma nova janela que se abre, adicione os dados faltantes e clique no botão SALVAR;
-
Agora o usuário pode trabalhar no SP do ONLYOFFICE.
Verificando o funcionamento do SP do ONLYOFFICE com o IdP do OneLogin
Fazendo login no ONLYOFFICE pelo lado do SP
-
Vá para a página de Autenticação do ONLYOFFICE (por exemplo,
https://myportal-address.com/Auth.aspx); -
Clique no botão Single sign-on. Se o botão estiver ausente, isso significa que o SSO não está habilitado:
-
Se todos os parâmetros do SP e IdP estiverem configurados corretamente, seremos redirecionados para o formulário de login do IdP do OneLogin:

-
Insira o login e a senha do usuário que recebeu acesso ao SP do ONLYOFFICE e clique no botão ENTRAR;
-
Se as credenciais estiverem corretas, seremos redirecionados para a página principal do espaço de trabalho (o usuário será criado automaticamente se estiver ausente, ou os dados serão atualizados se alterados no IDP):
