Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Índice:


       

Índice
exclude.*ndice:

Preparação inicial do ambiente


       1) - Instale a versão do .Net Framework 4.7.1

Informações

Disponível em "https://www.microsoft.com/pt-br/download/details.aspx?id=56116"

       2) - Instale a última versão do runtime do .Net core

Informações

Disponível em "https://www.microsoft.com/net/download/thank-you/dotnet-runtime-2.0.5-windows-x64-installer"

       3) - Crie a seguinte estrutura de diretórios dentro da raiz da máquina:

c:\TReports\BackEnd;
c:\TReports\FrontEnd;
c:\TReports\Rac;
c:\TReports\Rac\Migrator;
c:\TReports\Rac\Host;


Configuração do RAC


É necessário configurar o RAC para garantir a segurança do T-Reports. Ele será responsável por validar os acessos á página.

Portanto, vamos rodar o processo de "Migrator" para criação do banco de dados do RAC. Para isso, basta seguir os passos abaixo:

    a) - Descompacte o arquivo "MigratorRac.zip" dentro do diretório "c:\TReports\Rac\Migrator";

    b) - Abra o arquivo "appsettings.json" do diretório "c:\TReports\Rac\Migrator" e efetue as seguintes modificações:

       b.1) - No atributo "ConnectionStrings" informe a string de conexão conforme exemplo abaixo:

             "ConnectionStrings": {

               "Default": "Server=BHD050100275; TrustServerCertificate=True; database=TnfRac; User Id=sa;password=xxxx"

              },

Dica

O usuário e senha do banco precisará de permissão para criação de banco de dados do RAC.

Como sugestão informe o usuário e senha do "sa".

Informações

Nesse passo, o banco de dados a ser criado, no caso o banco "TnfRac" não poderá existir no servidor "BHD050100275".

Caso exista, apague o banco atual e recrie com as novas configurações.

   

    c) - No atributo "Clients" crie configurações para informar a máquina (ou as máquinas) que hospedarão o front-end do TReports: 

         c.1) - No Atributo "ClientId" deverá ser informado um identificador único que será usando nas configurações dos backEnds e FrontEnds;

         c.2) - No atributo "AccessTokenLifetime" informe o tempo de expiração de um accessToque;

Dica

Deve ser o tempo (em segundos) para que o login seja renovado.

         c.3) - No atributo "RedirectUris" informe os endereços que serão usados pelo retorno do Rac:

               Retorno de callback após o login e renovação do accessToken após expiração;

         c.4) -  No atributo "PostLogountRedirectUris" informe os endereços usados pelo Rac após o logout;

         c.5) - Nos outros atributos matenham os valores defaults;                


Expandir
titleExemplo "ClientId = js_oidc"

Nessa configuração, foram informados endereços da máquina localHost e porta 7017.

Isso significa que o rac aceitará somente solicitações provenientes do endereço "http://localhost:7017";

 "Clients": [

                                   {

                                     "ClientId": "js_oidc",

                                     "ClientName": "JavaScript OIDC Client For Testing",

                                     "AllowedGrantTypes": [ "hybrid", "client_credentials" ],

                                     "RequireConsent": false,

                                     "AllowAccessTokensViaBrowser": "true",

                                     "AllowOfflineAccess": true,

                                     "AccessTokenLifetime": 300, // 5min em segundos

                                     "IdentityTokenLifetime": 250,

                                     "RedirectUris": [

                                       "http://localhost:7017/auth-callback.html",

                                       "http://localhost:7017/auth-callback",

                                       "http://localhost:7017/assets/silent-renew.html",

                                       "http://localhost:7017/assets/silent-renew"

                                     ],

                                     "PostLogoutRedirectUris": [ "http://localhost:7017/" ],

                                     "AllowedCorsOrigins": [ "http://localhost:7017" ],

                                     "ClientSecrets": [ { "Value": "K7gNU3sdo+OL0wNhqoVWhr3g6s1xYv72ol/pe/Unols=" } ], // Calculado com IdentityServer4.Models.HashExtensions.Sha256()

                                     "AllowedScopes": [ "openid", "profile", "email", "authorization_api", "backend_api" ]

                                   }]

Expandir
titleExemplo "ClientId = js_oidc_2777"

 Nessa configuração, foram informados endereços da máquina BHN050102777 e porta 7017.

Isso significa que o RAC aceitará somente solicitações provenientes do endereço "http://BHN050102777:7017";

Nesse caso o FrontEnd do Reports deve ser instalado em configurado na máquina BHN050102777.

                                "Clients": [

                                   {

                                     "ClientId": "js_oidc_bhd050100275",

                                     "ClientName": "JavaScript OIDC Client For Testing",

                                     "AllowedGrantTypes": [ "hybrid", "client_credentials" ],

                                     "RequireConsent": false,

                                     "AllowAccessTokensViaBrowser": "true",

                                     "AllowOfflineAccess": true,

                                     "AccessTokenLifetime": 300, // 5min em segundos

                                     "IdentityTokenLifetime": 250,

                                     "RedirectUris": [

                                       "http://bhd050100275:7017/auth-callback.html",

                                       "http://bhd050100275:7017/auth-callback",

                                       "http://bhd050100275:7017/assets/silent-renew.html",

                                       "http://bhd050100275:7017/assets/silent-renew"

                                     ],

                                     "PostLogoutRedirectUris": [ "http://bhd050100275:7017/" ],

                                     "AllowedCorsOrigins": [ "http://bhd050100275:7017" ],

                                     "ClientSecrets": [ { "Value": "K7gNU3sdo+OL0wNhqoVWhr3g6s1xYv72ol/pe/Unols=" } ], // Calculado com IdentityServer4.Models.HashExtensions.Sha256()

                                     "AllowedScopes": [ "openid", "profile", "email", "authorization_api", "backend_api" ]

                                   }]


    

    d) - Entre no comand prompt do windows e acesse o diretório "c:/TReports/Rac/Migrator";

    e) - Execute o comando "dotnet Tnf.Rac.EntityFrameworkCore.Migrator.dll";

        Obs: Esse comando rodará a ferramenta de criaçaõ automática do banco de dados do Rac.

Dica

Caso a mensagem "Continue to migration for this host database? (Y/N):" apareça, digite "Y" para concluir.

Expandir
titleExemplo

   f) - Após rodar o comando, verifique se o banco de dados foi criado no servidor de banco de dados;

         

Agora, vamos configurar o Host do Rac, para isso basta seguir os passos abaixo:

     a) - Descompacte o arquivo "HostRac.zip" dentro do diretório "c:\TReports\Rac\Host";

Abra o arquivo "appsettings.json" do diretório "c:\TReports\Rac\Migrator" e efetue as seguintes modificações:

       - No atributo "ConnectionStrings" informe a string de conexão conforme exemplo abaixo:

          "ConnectionStrings": {

             "Default": "Server=BHD050100275; TrustServerCertificate=True; database=TnfRac; User Id=sa;password=xxxx"

          },

Dica

O usuário e senha do banco precisará de permissão para criação de banco de dados do RAC.

Como sugestão informe o usuário e senha do "sa".

Informações

Essa string de conexão deve ser a mesma usada no passo anterior "Criação do banco de dados do Rac"

      f) - Entre no diretório "TReports/Rac/Host" e abra o arquivo "hosting";

      g) - Informe no atributo "urls" a string: "http://*:5000" (essa configuração identificará a porta de hospedagem do rac);


Configuração do T-ReportsBackEnd


       1) - Descompacte o arquivo BackEnd.zip dentro do diretório "c:\TReports\BackEnd";

 2) - Abra o arquivo "appsettings.json" e efetue as seguintes modificações:

       a) - No atributo "ConnectionStrings" informe a string de conexão contendo a localização do banco de dados do repositorio do T-Reports:

             "ConnectionStrings": {

               "Default": "Server=BHD050100275; TrustServerCertificate=True; database=TReportsDB; User Id=sa;password=xxxx"

             },

Dica

O usuário e senha do banco precisará de permissão para criação de banco de dados de repositório do TReports

Como sugestão informe o usuário e senha do "sa".

          Atualmente somente o SqlServer poderá ser usando como repositório do T-Reports;

Informações

Se o banco de dados "TReportsDB" não existir, ao hospedar o backEnd esse banco será criado automaticamente;

      b) - No atributo "BackgroudJobSettings", no parêmetro "DelayTime", informe a quantidade em "minutos" para leitura da tabela de "agendamento de execução de jobs" (default será 1 minuto). Matenham os valores defaults para os outros parâmetros; 

      c) - No atributo "DefaultDbSettings", informe os dados (defaults) para criaçaõ de provedores de banco de dados relacional.

Dica

Essa configuração não é obrigatória, portanto ela poderá ser removida. Nesse caso, os atributos de  string de conexão devem ser criados manualmente no cadastro de "provedores" para banco de dados relacionais;

        

Expandir
titleExemplo em sql Server

  "DefaultDBSettings": {

                    "ProviderParams": [

                      {

               "Name": "Data Source",

                        "Description": "Nome do servidor",

               "Value": "BHD050101861",

                      },     

                      {

                        "Name": "Initial Catalog",

                        "Description": "Nome do banco de dados",

                        "Value": "RM1201",

                      },

                      {

                        "Name": "Integrated Security",

                        "Description": "Segurança integrada",

                        "Value": "false",

                      },

                      {

               "Name": "User Id",

                        "Description": "Usuário",

                        "Value": "rm",

                      },

                      {

                        "Name": "Password",

                        "Description": "Senha",

                        "Value": "rm",

                        "AllowEdit": "true",

                      }

                    ]

                  },


3) - Abra o arquivo "Hosting.json" e informe o endereço "urls": "http://*:4999" de hospedagem do backEnd;

4) - Abra o arquivo "racsettings.json" e no atributo "AuthorityEndpoint" informe o endereço de hospedagem do rac, conforme exemplo abaixo:

                {             

                  "AuthorityEndpoint": "http://localhost:5000/",

                  "ApiName": "backend_api",

                  "RequireHttpsMetadata": false,

                  "CacheAuthentications": false,

                  "CacheAuthenticationDuration": 10

                }

COLOCAR DEPOIS




5) - Verifique se o backEnd está configurado e rodando corretamente. Para isso bastar abrir o browser de sua preferencia e digitar o endereço abaixo:

                Ex:http://localhost:50004999/swagger


Configuração do T-ReportsFrontEnd


Informações

Essa forma de configuração é temporária, visto que estamos melhorando o módulo de configuração do frontEnd.

1) - Descompacte o arquivo FrontEnd.zip dentro do diretório "c:\TReports\FrontEnd";

2) - No diretório "c:\TReports\FrontEnd", abra o arquivo "main.bundle" e efetue as seguintes modificações:

    a) - Pesquise dentro desse arquivo a palavra "client_id" e informe o identificador do client criado no passo "2.1";

       Exemplo: client_id: 'js_oidc'; 

    b) - Pesquise dentro desse arquivo a palavra "var environment = {" e confiugure no atributo "authorityEndPoint" o endereço de hospedagem do rac definido na opção "2.2" 

   c) -  Ainda dentro do environment, informe no atributo "applicationEndPointHost' o endereço base de hospedagem backend na porta 4999;

   d) - Ainda dentro do environment, informe no atributo "applicationEndPoint" o endereço de rota de hospedagem backend na porta 4999;

Informações
iconfalse
Informações
iconfalse

Produto: Framework

Informações
iconfalse

Versão: 12.01.XX

Informações
iconfalse

Processo: BACKEND

Informações
iconfalse
Informações
iconfalse

Status: Pendente

Informações
iconfalse

Data: 23/02/2018

Informações
iconfalse

Autores:

Erlon Cesar Lima De Freitas

Flavio Henrique Pereira Campelo

Gustavo Naves De Castro

Philippe Fernandes Lima Gonçalves

SARAH ROLAND CAMPOS LISBOA

Wesley Avelino De Carvalho