Frontline Command Center (FCC), Banco de Dados e Keycloak são auto-hospedados e são considerados os componentes centrais do ambiente do sistema Frontline. Todos os dados confidenciais do cliente são hospedados no banco de dados auto-hospedado e no armazenamento local da VM.

Instalação em um sistema Ubuntu

Base de dados

  1. Instale o Maria DB seguindo as instruções oficiais de instalação.
  2. Verifique a instalação com o seguinte comando (dependendo do MariaDB real, o serviço pode ser chamado MariaDB ou mysqld):
systemctl iniciar mysql 
systemctl status mysql 

3. Configure o banco de dados e o usuário correspondente:

sudo mysql -uroot -e "CREATE DATABASE frontlinecommandcenter CHARACTER SET = 'utf8' COLLATE = utf8_bin; " 
sudo mysql -uroot -e "CREATE USER 'frontline'@'localhost' IDENTIFIED BY '$PASS'" 
sudo mysql -uroot -e "GRANT ALL ON frontlinecommandcenter.* TO 'frontline'@'localhost' IDENTIFIED BY '$PASS' WITH GRANT OPTION; " 

4. Substitua o espaço reservado $PASS por uma senha segura.

Se um banco de dados adequado já tiver sido instalado e configurado antes, crie um usuário para esse banco de dados e altere -u root para -u name_of_user -p

Nota: Recomendamos aderir à sua estratégia de backup interno para o banco de dados instalado.

Centro de Comando da Linha de Frente

1. Crie um diretório para o arquivo frontline.jar : sudo mkdir /var/opt/frontline

2. Crie um diretório para os dados do usuário: sudo mkdir /var/data/frontline

3. Baixe o arquivo JAR do aplicativo Server na página Frontline Downloads.

4. Renomeie-o para frontline.jar e copie-o para /var/opt/frontline: sudo cp ~/Downloads/frontline.jar /var/opt/frontline

5. Faça frontline.jar executável: sudo chmod +x /var/opt/frontline/frontline.jar 

6. Frontline é executado como um serviço de inicialização Spring. Navegue e /etc/systemd/system crie um arquivo com os detalhes do serviço: sudo touch frontline.service

7. Edite frontline.service e adicione:

[Unidade] Descrição=centro 
de comando da linha de frente After=mysql.service 

[Serviço] 
Ambiente="UBIMAX_HOME=/var/data/frontline/" 
ExecStart=/var/opt/frontline/frontline.jar
 SuccessExitStatus=143

 [Instalar] 
WantedBy=multi-user.target 

8. Para habilitar o serviço, use systemctl enable frontline.service

9. Inicie o serviço via systemctl start frontline.service

10. O serviço criará alguns arquivos de /var/data/frontline configuração e, em seguida, desligará.

Instalação em um sistema Windows

Base de dados

1. Baixe a última versão estável do MariaDB do site oficial e siga o guia de instalação.

2. Execute o instalador do MariaDB, incluindo o programa de suporte HeidiSQL.

3. Crie uma senha de root para o banco de dados.

Nota: A senha do root será referida como dbrootpassword neste manual.

4. Clique em Avançar.

5. Depois de terminar a instalação, inicie o utilitário HeidiSQL. Supondo uma instalação padrão, o arquivo está localizado aqui:  C:\Program Files (x86)\Common Files\MariaDBShared\HeidiSQL\heidisql.exe

6. Clique em Novo.

7. Crie um novo banco de dados com um nome próprio (por exemplo, Frontline_Test).

8. Substitua o espaço reservado $PASS pelo seu dbrootpasswordarquivo .

9. Opcional: personalize o nome do host/IP e o número da porta.

Nota: Para obter um guia mais detalhado, consulte a página de ajuda do HeidiSQL.

Se um sistema de banco de dados diferente for usado, ajuste a instrução SQL abaixo para ajustar o banco de dados:

CREATE DATABASE FrontlineCommandCenter CHARACTER SET = 'utf8' COLLATE = utf8_bin;  
CRIAR USUÁRIO 'FRONTLINE'@'%' IDENTIFICADO POR '$PASS';  
CONCEDA TUDO NO FrontlineCommandCenter.* PARA 'frontline'@'%' IDENTIFICADO POR '$PASS' COM OPÇÃO DE CONCESSÃO;  

Centro de Comando da Linha de Frente

  1. Vá para a página Frontline Downloads .
  2. Baixe o arquivo de aplicativo do servidor e renomeie-o para frontline.jar.
  3. Baixe o wrapper de serviço do servidor na mesma página.

A FCC requer um diretório de instalação e um diretório DATA: 

  1. Diretório de Instalação - Contém o arquivo de frontline.jar e os arquivos de wrapper de serviço WinSW_frontline.exe e WinSW_frontline.xml.
    1. Localização: C:\Frontline 
    2. ID: $BASE$ 
  2. Diretório DATA - Este é usado como o diretório base. Ele é usado para ativos do cliente, como cartões de login e temas. Crie uma nova pasta dentro do diretório de instalação e nomeie-a DATA. 
    1. Localização: C:\Frontline\DATA 
    2. ID: $FRONTLINE_HOME$ 

Nota: Os $BASE$ IDs e $FRONTLINE_HOME$ location serão usados como referência nos exemplos de código a seguir. 

O WinSW_frontline.exe wrapper de serviço permite que os usuários instalem o serviço FCC como um serviço do Windows. 

  1. Opcional: Se você precisar configurar um proxy de encaminhamento (por exemplo, para permitir que a FCC acesse nosso servidor de licenças), abra o arquivo WinSW_frontline.xml e adicione -Dhttps.proxyHost=$HOST -Dhttps.proxyPort=$PORT -Dhttps.nonProxyHosts=localhost ao início do <arguments> elemento, substituindo $HOST e $PORT com os valores do seu proxy. 
  2. Abra um prompt de comando (com direitos de administrador).
  3. Altere o diretório para $BASE$.
  4. Executar WinSW_frontline.exe install.
  5. net start frontline(ID de serviço padrão é frontline).

Durante a primeira inicialização, o serviço será interrompido automaticamente após a extração dos arquivos de configuração. O Windows pode relatar o serviço como falhou ou falhou.  

O diretório de configuração da FCC está localizado dentro do $FRONTLINE_HOME$ diretório. O local deve ser C:\Frontline\DATA\config\configuration\. O arquivo de configuração xserver.properties deve ser editado conforme explicado abaixo. 

Configuração inicial do Frontline Command Center (Ubuntu e Windows)

  1. Abra o arquivo xserver.properties localizado em UBIMAX_HOME/config/configuration/.
  2. Altere o IP do banco de dados, o nome de usuário e a senha (para exibir o endereço IP, use o ip addr show comando).
  3. Se o cliente tiver um nome de host, xserver.url.external.http poderá ser usado em vez do endereço IP. O porto precisa ser mencionado em server.port. O SSL precisa ser configurado, a menos que haja um proxy reverso com terminação SSL.  

Dependendo do sistema e dos requisitos individuais, a instalação ou configuração de componentes como Keycloak, xAssist Stack, ffmpeg, Email e FaaS é necessária. 

FaaS (Obrigatório)

1. Para usar os serviços de nuvem do Frontline, defina a seguinte propriedade: 

fcc.faas.base-url=https://functions.svc.frontlineworker.com/function/ 

2. Para auto-hospedagem, o ponto de extremidade de cada FaaS pode ser substituído individualmente:

fcc.faas.function.<function>.override-url=

enquanto função é imagemagick, pdfmake ou proglove

3. Para ImageMagick e Proglove, nenhuma configuração adicional é necessária.

4. Para PDFMake, as seguintes variáveis ambientais precisam ser definidas:  

RAW_BODY: "verdadeiro" 
MAX_RAW_SIZE: "100mb" 

Iniciando o servidor

  1. Após a conclusão da configuração das propriedades, inicie o servidor usando este comando: systemctl start frontline.service (UBUNTU) ou net start frontline (WINDOWS)
  2. O estado do serviço pode ser verificado em UBIMAX_HOME/log/server/fronline.log.
  3. No primeiro início bem-sucedido do FCC, um usuário administrador do sistema chamado sysadmin é criado com uma senha aleatória. Esse usuário é usado para configurar o FCC. 
  4. A senha do sysadmin usuário pode ser recuperada dos arquivos de log localizados em$FRONTLINE_HOME\logs.
  5. Abra o arquivo frontline.loge a senha será exibida no seguinte formato: 
INFO  de.ubimax.xserver.DatabaseSetupManager - ########################################################## - -:-/- 
INFO  de.ubimax.xserver.DatabaseSetupManager - ########################################################## - -:-/-
 INFO  de.ubimax.xserver.DatabaseSetupManager - ########################################################## - -:-/- 
INFO  de.ubimax.xserver.DatabaseSetupManager - ########################################################## - -:-/- 
INFO  de.ubimax.xserver.DatabaseSetupManager - SUA SENHA SYSADMIN GERADA: 123456789 - -:-/-
 INFO  de.ubimax.xserver.DatabaseSetupManager - ALTERE ESTA SENHA O MAIS RÁPIDO POSSÍVEL PARA UMA PERSONALIZADA. - -:-/- 
INFO  de.ubimax.xserver.DatabaseSetupManager - ########################################################## - -:-/- 
INFO  de.ubimax.xserver.DatabaseSetupManager - ########################################################## - -:-/-
 INFO  de.ubimax.xserver.DatabaseSetupManager - ########################################################## - -:-/- 
INFO  de.ubimax.xserver.DatabaseSetupManager - ##################################################### 

6. Entre usando o sysadmin usuário e altere a senha.

Para importar uma licença:

  1. Abra o Frontline Command Center.
  2. Vá para Configuração.
  3. Vá para Licenças.
  4. Clique em Importar Licença.
  5. No modal exibido posteriormente, clique em Importar Licença para sincronizar a entrada com o servidor de licenças. 

Keycloak (Obrigatório)

Há dois modos de operação ao executar o Keycloak: modo autônomo e modo clusterizado. Qual escolher depende de suas necessidades individuais. Para obter um guia detalhado sobre como configurar qualquer um deles, consulte o guia oficial de instalação do Keycloak. Frontline suporta a versão 15 ou posterior.

Depois que o Keycloak tiver sido instalado com êxito, os reinos a serem usados nesta instalação precisarão ser criados. Cada domínio para uma instalação da FCC precisa ter um território separado.

  1. Baixe este arquivo JSON.
  2. Abra o arquivo JSON de exportação de realm.
  3. Substitua todas as ocorrências de pela URL real da <the-fcc-url> FCC.
  4. Opcional: substitua todas as ocorrências de por outro nome de frontline-realm território (aplicável somente se vários realms Frontline forem necessários no Keycloak).
  5. Opcional: "claim.name": "domain" Procure e substitua o valor de domínio correspondente (aplicável somente se a FCC usar um domínio diferente do domínio padrão ubimax ).
  6. Inicie sessão na consola de Administração do Keycloak através do browser. 
  7. Clique em Selecionar Reino.
  8. Escolha Adicionar realm.
  9. Selecione um arquivo a ser importado.
  10. Abra o realm importado.
  11. Navegue até Clients/FCC/Credentials.
  12. Clique em Regenerar Segredo.
  13. Copie esse valor.
  14. O valor copiado precisa ser definido no arquivo xserver.properties da FCC como fcc.keycloak.realms.<domain>.clientSecret (<domínio> é ubimax por padrão).
  15. Opcional: Configure um servidor SMTP na guia email das Configurações do Realm.
  16. Depois que o Keycloak tiver sido configurado, as seguintes propriedades devem ser definidas por domínio no arquivo xserver.properties da FCC:
    1. Todos os espaços reservados escritos em divisas (<>) devem ser substituídos pelos detalhes correspondentes.
    2. Destina-se a definir o KeyMan URI para null.
fcc.keycloak.enabled=true 
fcc.keycloak.realms.<domain>.name=<nome-realm>
 fcc.keycloak.realms.<domain>.domainTag=<domain> 
fcc.keycloak.realms.<domain>.realmId=<nome-real> 
fcc.keycloak.realms.<domain>.serverUrl=<keycloak-external-url>
 fcc.keycloak.realms.<domain>.clientId=fcc 
fcc.keycloak.realms.<domain>.clientSecret=< segredo-cliente> 
fcc.keycloak.keyman.uri= 

Nota: KeyMan é um serviço que executa todas as etapas descritas acima automaticamente em instâncias do Frontline Cloud e não é necessário para Keycloak auto-hospedado.  

Carregar aplicativo cliente

Depois que o Keycloak estiver configurado, um usuário administrador deverá ser criado e o aplicativo cliente deverá ser carregado no Frontline Command Center.

  1. Crie um usuário com uma função de administrador usando as etapas mencionadas na página Gerenciamento de Usuários .
  2. Baixe o aplicativo de vidro inteligente Frontline Workplace mais recente na página Downloads .
  3. No Frontline Command Center, no canto superior esquerdo, selecione Painel de Navegação.
  4. Vá para Configuração.
  5. Siga as etapas mencionadas na página Gerenciamento de aplicativos para carregar o aplicativo.

Integração com o IAM

Para facilitar o gerenciamento de usuários, o Frontline oferece suporte à sincronização de detalhes do usuário do seu provedor de identidade para a FCC. Se esse mapeamento estiver habilitado, a FCC processará os detalhes do usuário do IDP e não permitirá substituí-los no nível de administração da FCC. Os detalhes sincronizados do usuário são preferências de idioma, funções, alocação de licenças e equipes.

Atualmente, o Frontline oferece suporte aos seguintes tipos de IAM:

  • Microsoft Azure Active Directory
  • Microsoft Active Directory
  • Gerenciamento de identidades e acesso da AWS

Funções, licenças e equipes não serão aplicadas com êxito nos seguintes casos:

  • Licença, funções ou equipe não correspondem 100% no IDP e FCC (aplica-se a diferenciação de maiúsculas e minúsculas)
  • A FCC não tem licenças gratuitas (para mapeamento de funções e licenças)
  • O usuário ainda não entrou (a sincronização só ocorre quando um usuário entra)

As funções e equipes de provedores de identidade disponíveis devem ser cuidadosamente definidas para que funções, licenças e equipes possam ser mapeadas com êxito:

  • <LicenseName> aloca a licença para um usuário específico (por exemplo, License_xAssist)
  • <RoleName> atribui uma função a um usuário específico e assume uma licença (por exemplo, Administrador)
  • <Equipe> atribui um usuário específico a uma equipe na FCC

Intermediação de identidade (opcional)

Nota: O agente de identidade só é suportado em instalações da FCC em que os usuários estão totalmente presentes no Keycloak. Ele só funciona depois que todos os usuários existentes fizeram login com o Keycloak pelo menos uma vez ou em novas instalações onde o Keycloak foi habilitado desde o início. 

Com a intermediação de identidade, os reinos Keycloak podem ser conectados com provedores de identidade (IDPs) externos baseados em OpenID. Isso significa que, em vez de inserir credenciais no Keycloak, o usuário está sendo redirecionado para um IDP externo (por exemplo, Azure AD ou Okta) e, após a autenticação bem-sucedida, é levado de volta para o Keycloak (e, em seguida, para o Frontline). 

A imagem abaixo mostra o processo básico de autenticação sempre que um usuário entra:

O usuário nunca compartilhará sua senha com a FCC, mas será redirecionado para o Keycloak e o provedor de identidade que criará um token de autenticação. Por padrão, o Keycloak tenta corresponder o usuário externo com um usuário existente do Frontline por meio do endereço de e-mail. Se isso não for possível (se nenhum usuário correspondente for encontrado), o procedimento de entrada será abortado e o acesso ao Frontline será negado. 

Um território Keycloak pode conter vários agentes de identidade (por exemplo, Azure AD). Isso adiciona a possibilidade de entrar com contas locais, bem como diferentes contas externas. Em determinados cenários, pode ser benéfico criar usuários em tempo real quando um novo usuário tentar entrar. Isso é chamado de provisionamento de usuário e pode ser habilitado usando a seguinte propriedade no FCC: 

fcc.keycloak.user-provisioning.enabled=true 

Além disso, as seguintes propriedades precisam ser configuradas: 

server.servlet.session.cookie.same-site=none 
server.servlet.session.cookie.secure=true 

Isso realmente criará contas de usuário após o primeiro login, mas a conta em si é praticamente inútil neste momento, pois não tem uma camada de licença nem quaisquer funções atribuídas. Esse comportamento pode ser alterado por meio das seguintes propriedades. As alterações a seguir resultarão em todos os usuários provisionados terminando na FCC com a função xAssist da camada de licença xAssist atribuída.: 

fcc.keycloak.user-provisioning.default-license-tiers=xAssist
fcc.keycloak.user-provisioning.default-roles=xAssist

O agente de identidade exigirá alguma configuração no lado do provedor de identidade que você deseja usar. O exemplo abaixo mostra como configurar o Azure AD como um provedor de identidade. Outros provedores de identidade seguem abordagens semelhantes.  

Para configurar o Azure AD como um provedor de identidade no Keycloak:

  1. Selecione seu reino.
  2. Vá para Provedores de identidade.
  3. Adicione um novo provedor OpenID Connect v1.0 .
  4. Role até Importar Configuração de IDP Externo.
  5. Cole o URL de descoberta.
  6. Clique em Importar. Isso deve preencher campos como URL de autorização ou URL de token
  7. Edite manualmente os seguintes valores:   
    1. Alias e Nome - Eles podem ser definidos como valores personalizados, o nome é o mostrado posteriormente na página de entrada, enquanto o alias é encontrado no URI de redirecionamento. 
    2. ClientAuthMethod - Selecione client_secret_post.
    3. ClientID - Encontrado ao criar um aplicativo no Azure. 
    4. ClientSecret - Encontrado ao criar um aplicativo no Azure. 
  8. Salve o provedor de identidade recém-adicionado. Depois, ele deve aparecer na página de logon único.

Azure AD como provedor de identidade

  1. Entre no Azure.
  2. Navegue até Registros de aplicativos.
  3. Vá para Novo Registro.
  4. Nomeie o aplicativo Frontline Keycloak.
  5. Defina-o como Single Tenant. O URI de redirecionamento ainda não é necessário.

6. Uma vez que o aplicativo foi criado, ele mostra o ID do cliente na página principal.

7. A URL de descoberta pode ser encontrada em Pontos de extremidade. É o documento de metadados do OpenID Connect

8. Gere o segredo do cliente. Para isso, clique nas credenciais atuais do cliente. 

9. Para adicionar um novo segredo do cliente, clique em Novo segredo do cliente. A descrição deve ser secreta e a duração deve ser definida para 24 meses

10. Uma vez que o segredo tenha sido adicionado, uma entrada com um Valor e um ID Secreto será gerada.

Nota: Copie imediatamente e armazene com segurança o valor, pois ele não estará disponível mais tarde, é o Segredo do Cliente.

Para configurar o URI de redirecionamento ausente no Azure:

  1. Navegue até o nosso App Frontline Keycloak através do registro do aplicativo.
  2. Selecione Redirecionar URIs

3. Selecione Adicionar uma plataforma/ Web

4. O URI de redirecionamento que precisa ser inserido tem a seguinte aparência:

<Local-Keycloak-Url>/auth/realms/<your-realm-name>.