Árvore de páginas



O Desktop SSO é um componente não obrigatório na arquitetura do Identity e que pode ser habilitado pelo administrador do contexto. Ele é responsável pelo Single Sign On (SSO), o que permite aos usuários que já estejam autenticados no Windows da estação de trabalho acessar o Identity sem informar as credenciais (e-mail e senha) manualmente.

A validação das credenciais do Windows no Identity é realizada através de um script ASP, que é gerado pelo próprio Identity e deve ser hospedado em um servidor IIS (Internet Information Service). O script consulta as credenciais no Active Directory, recupera o e-mail associado ao usuário e o valida no Identity.

Se as credenciais forem legítimas, o usuário obterá acesso ao Identity sem a necessidade de informá-las manualmente. Caso as credenciais não sejam válidas, será apresentada ao usuário a página de login do Identity, onde ele deverá informar o e-mail e senha para ter acesso às aplicações.

Para maior segurança, é possível cadastrar intervalos de IPs, que restringem a permissão para utilização do recurso de SSO. Isto permite, por exemplo, que usuários internos da empresa tenham a experiência SSO habilitada, enquanto usuários externos à rede corporativa serão obrigados a entrar com credenciais manualmente para ter acesso ao Identity e seus aplicativos.

oculto

Os passos para configuração dessa página foram repassados ao artigo: https://centraldeatendimento.fluig.com/hc/pt-br/articles/360025124393
Caso tenha alguma alteração, lembrar de atualizar lá! (piscar o olho)


Habilitando o Desktop SSO no Identity

Siga os passos abaixo como administrador do contexto para habilitar o Desktop SSO.

    • Para habilitar o SSO em um contexto do TOTVS Identity, o administrador deve acessar  Configurações.
    • Acessar a aba Active Directory.

    • No final da página, marcar a opção Permitir o acesso via Desktop SSO.
    • Acionar o link Configurações do Desktop SSO.

    • Nesta página será realizada a definição dos intervalos de endereços IP que serão liberados para executar o SSO.
    • Acionar  (Editar).
    • É importante que o responsável pela infraestrutura do cliente acompanhe o processo de configuração do Identity, inclusive a configuração do Desktop SSO. Este profissional poderá facilitar algumas configurações como por exemplo, IPs externos, dados de conexão com o Active Directory e usuários para teste.



    • Informar um endereço IP externo permitido. Os endereços IP informados na configuração do Desktop SSO devem ser IPs externos para garantir a comunicação com o TOTVS Identity, que não possui acesso aos IPs internos da rede. Caso não saiba qual o endereço o IP externo, o administrador pode usar sites como http://www.meuip.com.br/ para identifica-los.
    • Além de informar um endereço IP específico, é possível informar um intervalo de IPs. Por exemplo: 192.168.4.[0-10]. Essa expressão indica que todos os endereços IP entre 192.168.4.0 e 192.168.4.10 serão permitidos.

    Os IPs externos não cadastrados serão redirecionados para a página de login, onde os usuários deverão informar manualmente as credenciais para obter acesso ao contexto. É necessário que a empresa possua um IP externo estático garantindo que usuários deste IP utilizem o Desktop SSO e os IPs diferentes do cadastrado possam utilizar suas credenciais pela tela de autenticação.

    • Acionar Salvar.

    Se o administrador cadastrar [0-255]. [0-255]. [0-255]. [0-255] como endereço permitido, o Identity entenderá que todos os endereços de acesso são válidos. Contudo, essa configuração poderá acarretar problemas, pois usuários de fora da rede não terão acesso ao endereço do Desktop SSO e receberão uma mensagem erro.



    • A definição dos endereços IPs permitidos é apenas o primeiro passo para configuração do acesso via Single Sign On. O próximo passo é a configuração do script remote_auth.asp no servidor IIS.
    • O script remote_auth.asp é único para cada contexto e seu download é habilitado apenas após a definição dos IPs pelo administrador (acionando o botão Salvar).
    • Para fazer o download, acionar o botão Baixar, que será ativado na seção Baixar o Script de Autenticação SSO.

    O Single Sign On só será realizado caso o usuário acesse o Identity através do subdomínio cadastrado para o contexto, por exemplo, [empresa].fluigidentity.com.



    Configurar o Desktop SSO no IIS

    Para realizar a configuração do Desktop SSO, é necessário possuir um servidor Windows com o recurso IIS (Internet Information Services) habilitado para que o script de autenticação SSO seja hospedado. Nos tutoriais abaixo são demonstradas em um servidor Windows Server 2012 R2 a inclusão dos roles exigidos e a configuração do script no IIS.

    Habilitar Roles

    Para o correto funcionamento do Single Sign On, é fundamental adicionar os seguintes roles ao servidor Windows:


      • O role Web Server inclui o IIS (Internet Information Services) e é um pré-requisito para os demais roles exigidos para o SSO.
      • No Server Manager do Windows, acionar ManageAdd Roles and Features.
      • No wizard apresentado, acionar Next até chegar à pagina Server Roles.
      • Marcar a opção Web Server (IIS) e acionar Next.
      • Será apresentando um quadro questionando se os recursos (features) necessários para o IIS também devem ser instalados. Acionar Add Features.
      • Acionar Next até chegar à página Confirmation e acionar Install para instalar o role Web Server.


      • Por padrão, o IIS executa aplicações ASP .NET (deve ser a versão 4.5), mas também é preciso habilitar aplicações ASP Classic.
      • Para isso, após a instalação do IIS, acessar novamente o Server Manager do Windows, acionar ManageAdd Roles and Features.
      • Na página Server Roles, expandir Web Server (IIS) → Web ServerApplication Development e marcar o role ASP.
      • Acionar Next até concluir o wizard.



      • Outro role que deve ser habilitado no IIS é a autenticação Windows no Desktop SSO. Desta forma, o navegador poderá enviar as credenciais para a aplicação efetuar as validações necessárias no Active Directory.
      • Acessar o Server Manager do Windows, acionar ManageAdd Roles and Features.
      • Na página Server Roles, expandir Web Server (IIS) → Web ServerSecurity e marcar o role Windows Authentication.
      • Acionar Next até concluir o wizard.



      Ativar tráfego NTLM

      O Desktop SSO depende do protocolo NTLM para funcionar corretamente. Confira os passos abaixo para ativar o tráfego NTLM.

        Pressione a tecla Windows e a tecla R para abrir a janela de Executar (Run). Digite gpmc.msc.

        Irá abrir a janela Group Policy Management. Expanda o item Forest, em seguida Domains, o seu domínio, até chegar no item Default Domain Policy.

        Clique com botão direito no Default Domain Policy. Clique em Edit.

        Irá abrir a janela Group Policy Management Editor.

        Acesse Policies > Windows Settings > Security Settings > Local Policies > Security Options.

        Localize a opção indicada abaixo e altere para Permitir tudo.

        Configurar o Script no IIS

        Após a habilitação dos roles obrigatórios, o script de autenticação do Desktop SSO deve ser configurado e hospedado no IIS.


          • Abrir o Internet Information Services (IIS) Manager.
          • Acionar Add Website....



          • Preencher as informações necessárias para a criação do site e acionar OK.
          • No exemplo abaixo, o Site name será "desktopSSO", uma pasta chamada "DSSO" foi criada no diretório padrão "C:\inetpub\wwwroot" e definida como Physical path, e a porta será "81".



          • Copiar o script de autenticação do Desktop SSO "remote_auth.asp" para a pasta criada no passo anterior.

          Para obter o script, seguir as orientações do passo a passo Habilitando o Desktop SSO no Identity. Lembrando que é preciso informar nas configurações do Desktop SSO no Identity o endereço de hospedagem do remote_auth.asp no IIS, por exemplo: http://localhost:81/remote_auth.asp.



          • No Internet Information Services (IIS) Manager, acionar Add Application... para criar uma nova aplicação ASP ao website.



          • Preencher os campos necessários para a criação da aplicação e acionar OK.
          • No exemplo abaixo, o Alias da aplicação será "dsso" e o Physical path será o mesmo do website.



          • Após a criação da aplicação, deve-se configurar as regras de autenticação.
          • Acionar Authentication.



          • O status da opção Windows Authentication deve ser definido como Enabled (Habilitado).
          • Todas as demais opções disponíveis devem ter os status definidos como Disabled (Desabilitado).



          • Clicar com o botão direito do mouse sobre o item Windows Authentication e acionar a opção Providers... para definir os provedores utilizados pela autenticação.



          • No quadro Providers, apenas a opção NTLM deve ser mantida. Todos os demais provedores listados (caso existam) devem ser removidos.
          • Se este procedimento não for executado, o navegador pode vir a exigir as credenciais de acesso ao usuário através de uma caixa de diálogo.

          Sobre o protocolo NTLM

          O NTLM é um protocolo de autenticação utilizado em uma rede Windows. São necessárias configurações específicas nos navegadores (Internet Explorer, Google Chrome e Mozilla Firefox) para que eles utilizem este protocolo e também no script remote_auth.asp (Desktop SSO) para utilizar a Autenticação Windows.

          Os sistemas operacionais Linux e macOS não suportam o protocolo NTLM, portanto não é possível utilizá-los para realizar o SSO. Nestes sistemas é realizado um contorno para que, ao tentar o acesso via SSO, sejam requisitadas as credenciais do usuário. As orientações para configurar este contorno estão disponíveis no item Configuração para Linux e macOS.

          • Ao finalizar esse passo, a configuração do script de autenticação do Desktop SSO no IIS está completa e deve ser testada para confirmar se todos os procedimentos foram realizados corretamente.

          Verificar a configuração do SSO

          Após a configuração do script de autenticação do Desktop SSO no IIS, é possível executá-lo para confirmar se o procedimento foi realizado corretamente.


            • No exemplo abaixo, o usuário "usuarioteste9" estava logado diretamente no servidor. A mensagem abaixo mostra que o usuário foi localizado no Active Directory, porém não possuía um e-mail cadastrado, o que é primordial para o Identity.
            • Em uma situação como essa, ao tentar acessar o contexto da empresa no Identity, o usuário seria redirecionado para a página de login e uma mensagem de login SSO inválido seria exibida.



            • O script de autenticação possui instruções para realizar o debug da aplicação. Este modo exibe dados adicionais para auxiliar na identificação de problemas na configuração do SSO.
            • No exemplo abaixo, o usuário não possui e-mail cadastrado no Active Directory, o que é um pré-requisito do Identity.



            Configurar navegadores

            A configuração nos navegadores tem por objetivo direcioná-los para a URL do Desktop SSO para a realização do login com as credenciais do Windows. A configuração realizada no Internet Explorer também é válida para o Google Chrome, enquanto o Mozilla Firefox exige uma configuração específica.

            Google Chrome e Internet Explorer

            É necessário configurar o navegador do usuário para que ele utilize autenticação Windows (NTLM) com o script remote_auth.asp.

            Mesmo que o Desktop SSO tenha sido configurado para utilizar autenticação Windows no IIS, o navegador do cliente precisa enviar as credenciais para que o script possa fazer as validações necessárias no Active Directory e no Identity.

              • Acessar o Painel de Controle do Windows e acionar a opção Rede e Internet.
              • No menu Rede e Internet, acionar a opção Opções da Internet.


              • Selecionar a aba Segurança e marcar a zona de segurança Intranet local. Isto garante o envio das credenciais do Windows apenas para a URL do Desktop SSO. Outras aplicações e websites não serão afetados.
              • Acionar Sites para adicionar a URL do Desktop SSO.



              • Nas configurações da intranet local, acionar Avançadas.
              • Informar a URL do Desktop SSO e acionar Adicionar.
              • Acionar Fechar quando concluído.

              • De volta à aba Segurança, ainda com a zona Intranet local selecionada, acionar Nível personalizado....

              • Na opção Logon, marcar a opção Logon automático com o nome de usuário e senha atuais.
              • Clicar em OK para confirmar.

              • O sistema deve emitir uma mensagem de confirmação para alterar as configurações, acionar Sim para confirmar.
              • Acionar Aplicar na janela de Propriedades da Internet, para que as alterações tenham efeito.


              Mozilla Firefox

              O navegador Mozilla Firefox exige uma configuração específica.


                • Acessar a URL about:config na barra de endereços do navegador.



                • Será apresentado um alerta de segurança. Acionar Eu aceito o risco!.



                • Na barra de pesquisa Localizar, informar "NTLM".
                • Dentre os registros exibidos, localizar network.automatic-ntlm-auth.trusted-uris. Clicar duas vezes sobre essa linha.
                • Informar a URL do Desktop SSO.


                Group Policies para Google Chrome e Internet Explorer

                Caso a empresa possua uma grande quantidade de navegadores e estações de trabalho a serem configuradas, é possível fazer a distribuição das configurações utilizando-se de Group Policies (GPO). Durante o procedimento de autenticação no domínio, pode-se executar uma série de tarefas automáticas como, por exemplo, configurar o Internet Explorer do usuário.


                  • O administrador deverá definir a seguinte configuração de GPO: Computer ConfigurationAdministrative TemplatesWindows ComponentsInternet ExplorerInternet Control PanelSecurity Page.



                  • Após habilitar a definição de lista da Zona da Intranet, o cliente deverá definir a URL do Desktop SSO como membro da Zona da Intranet. No nosso exemplo, estamos definindo o site *.fluigidentity.com.
                  • Desta forma, toda vez que um usuário membro deste domínio efetuar o login, as configurações necessárias serão realizadas. Se executada todos os dias, a GPO também deve evitar que um usuário mais avançado desfaça as configurações necessárias para o Desktop SSO.

                  Group Policies para Firefox

                  A configuração do navegador Mozilla Firefox a partir de Group Policies não é suportada.

                  Configuração para Linux, macOS e Mobile

                  O Desktop SSO utiliza o protocolo NTLM para realizar o Single Sign On, porém este é um protocolo utilizado apenas pelo sistema operacional Windows. Para tratar situações onde o cliente possui estações Linux, macOS ou realiza o acesso via dispositivo móvel, é possível instalar um script, executado antes do Desktop SSO, com a finalidade de identificar o sistema operacional que está requisitando a página.

                  Chamado de check_remote_auth.asp, este script não é distribuído pelo Identity, mas foi construído especificamente para implantações com ecossistemas mais complexos, envolvendo diferentes sistemas operacionais.

                    • Fazer o download do arquivo check_remote_auth.asp nesse link. (É necessário editá-lo e ajustar os parâmetros conforme descrição disponível dentro do próprio script).
                    • Esse arquivo deve ser hospedado no mesmo IIS em que foi armazenado o script do Desktop SSO.
                    • Para isso, criar uma pasta dentro do diretório "C:/inetpub/wwwroot", assim como foi feito para o remote_auth.asp.


                    • No Internet Information Services (IIS) Manager, criar um website e uma aplicação para o check_remote_auth.asp. No exemplo abaixo foi usado o nome "check_dsso".

                    • É importante que a aplicação seja configurada para usar autenticação Anonymous Authentication, pois a única finalidade dela é redirecionar o usuário para a URL correta.

                    • Após a configuração do script, acessar as configurações de Desktop SSO no Identity e alterar o campo URL de Autenticação para o endereço do check_remote_auth.asp.
                    • Se o usuário estiver utilizando Windows, ele será redirecionado para o script Desktop SSO. Caso contrário, será direcionado para uma URL do Identity que solicitará as credenciais de acesso.

                    Opções de arquitetura para alta disponibilidade

                    O Desktop SSO pode utilizar uma arquitetura baseada em um único servidor. O problema é que neste cenário, se o script estiver offline, o usuário não conseguirá autenticar no Identity.

                    O administrador deverá desabilitar o Single Sign On do contexto do cliente, no Identity, ou corrigir o que for necessário para que o script fique online.

                    Existe uma opção onde podemos instalar o Desktop SSO em duas máquinas, o que fornece uma boa redundância do componente. Se um servidor ou uma aplicação estiver indisponível, o outro servidor assume a responsabilidade de manter o serviço de Single Sign On acessível.

                    Para isso precisamos disponibilizar um Load Balancer que terá a responsabilidade de fazer o redirect, caso um dos dois servidores com Desktop SSO esteja offline. Existem algumas opções para efetuar o Load Balance, como por exemplo, Apache, BIG-IP e Barracuda.