Este artigo apresenta um exemplo de como configurar o IIS (Internet Information Services) para funcionar como proxy reverso com o EPM Portal. Com essa configuração, o usuário pode acessar o portal via um endereço amigável e unificado, como:
https://epm.empresa.com.br
O IIS redirecionará automaticamente as requisições para os endpoints corretos do EPM Portal.
Pré-requisitos: Instalação dos módulos no IIS
Antes de configurar o proxy reverso, certifique-se de que os seguintes módulos estejam instalados no IIS:
1. URL Rewrite
-
Permite reescrever URLs e aplicar regras de redirecionamento.
2. ARR (Application Request Routing)
-
Responsável pelo encaminhamento das requisições HTTP para os servidores de destino.
Importante:
Instale primeiro o URL Rewrite, e somente depois o ARR, para garantir a correta integração dos módulos.
Verifique se ambos aparecem na lista de programas instalados no Painel de Controle do Windows. Caso contrário, faça o download diretamente do site oficial da Microsoft.
Módulos obrigatórios
Configurações gerais
Para fins didáticos, o exemplo a seguir será realizado localmente, simulando o acesso ao EPM Portal via um domínio personalizado.
Em ambientes reais, a equipe de TI deve adaptar o procedimento conforme os requisitos da rede e segurança corporativa.
Configurando o arquivo HOSTS do Windows
-
Abra o bloco de notas como administrador (Run as Administrator);
-
Edite o arquivo:
-
Adicione a seguinte linha:
Essa linha redireciona o domínio epm.empresa.com.br
para a própria máquina local, permitindo testar a configuração do proxy reverso antes da publicação externa.
Configuração do arquivo settings.json do EPM Web Server
Além da edição do arquivo hosts
, é necessário ajustar manualmente o arquivo de configuração do EPM Web Server, para que o IIS consiga redirecionar corretamente as requisições para o serviço de Web API.
Etapas:
-
Abra o Notepad como Administrador (Run as Administrator);
-
Acesse o arquivo:
-
Localize a chave de configuração e adicione a seguinte linha ao objeto JSON:
-
Salve e feche o arquivo.
Este parâmetro informa ao servidor que os endpoints da Web API devem ser acessados a partir do caminho
/webapi
, o que é essencial para a correta reescrita de URL pelo IIS.
Configuração de certificado HTTPS para o IIS (Proxy Reverso)
Neste exemplo, vamos configurar um certificado autoassinado apenas para fins didáticos. Este certificado será utilizado na comunicação entre o IIS e o navegador.
Importante: em ambientes de produção, utilize um certificado válido emitido por uma Autoridade Certificadora (CA) confiável, como CertiSign, DigiCert, GoDaddy ou Let’s Encrypt.
1. Criar certificado autoassinado via PowerShell
Abra o PowerShell como Administrador e execute o seguinte comando:
2. Importar o certificado como confiável
-
Pressione
Win + R
, digitemmc
e pressione Enter; -
Vá em File > Add/Remove Snap-in…;
-
Selecione Certificates, clique em Add;
-
Escolha Computer account, depois Local Computer > Finish > OK;
-
Navegue até:
Certificates (Local Computer) > Personal > Certificates -
Exporte o certificado recém-criado:
-
Clique com o botão direito sobre ele;
-
All Tasks > Export…;
-
Escolha No, do not export the private key;
-
Formato: DER encoded binary X.509 (.CER);
-
Salve o arquivo em:
C:\IIS_EPMPortal
.
-
-
Importe o certificado para:
-
Clique com o botão direito em Certificates > All Tasks > Import…;
-
Selecione o arquivo
.cer
salvo anteriormente.
-
Com essa configuração, o navegador reconhecerá o certificado como confiável, permitindo o acesso HTTPS ao domínio simulado https://epm.empresa.com.br
.
Certificado entre o IIS e o EPM Portal
Além do certificado utilizado entre o navegador e o IIS, também é necessário configurar o certificado que será usado na conexão entre o IIS (proxy reverso) e o EPM Portal/Web Server.
1. Copiar os certificados padrão do EPM
Localize os arquivos de certificado gerados na instalação do EPM:
-
C:\Program Files\Elipse Software\EpmWebServer\WebServerService\epm.crt
-
C:\Program Files\Elipse Software\EpmWebServer\WebServerService\epm.key
Copie esses arquivos para a pasta já criada:
2. Importar o certificado no MMC
Para que o IIS confie na conexão HTTPS com o EPM Web Server:
-
No Microsoft Management Console (mmc) já aberto:
-
Navegue até:
Certificates (Local Computer) > Trusted Root Certification Authorities > Certificates
-
-
Clique com o botão direito em Certificates > All Tasks > Import…;
-
Selecione o arquivo
epm.crt
copiado paraC:\IIS_EPMPortal
;
-
Conclua o assistente clicando em Finish.
Em ambientes reais, utilize um certificado assinado por uma CA, substituindo os arquivos
epm.crt
eepm.key
.
Configurando o ARR (Application Request Routing)
1. Acessar o IIS Manager
-
Abra o Internet Information Services (IIS) Manager;
-
Selecione o nó raiz do servidor;
-
Clique duas vezes em Application Request Routing Cache.
2. Ativar o modo proxy
-
No menu lateral direito, clique em “Server Proxy Settings…”;
-
Marque a opção “Enable proxy”;
-
Clique em Apply para salvar as alterações.
3. Ajustar codificação de URL nas regras
-
Retorne ao nó raiz do IIS;
-
Clique duas vezes em Configuration Editor;
Passo 1:
system.webServer/rewrite/Rules
-
Na seção Section, selecione:
-
Defina a propriedade:
Passo 2: system.webServer/rewrite/globalRules
- Na seção Section, selecione:
system.webServer/rewrite/globalRules
- Defina a propriedade:
useOriginalURLEncoding = False
4. Reiniciar o IIS
Para aplicar as alterações:
-
Selecione o item raiz do servidor no IIS;
-
No painel lateral, clique em Restart;
Criação do site e configuração das regras de URL Rewrite
1. Criar o site no IIS
-
No IIS Manager, clique com o botão direito em Sites;
-
Selecione Add Website….
2. Configurar o novo site
Preencha os campos conforme o exemplo:
-
Site name:
EPM Portal
-
Physical path:
C:\IIS_EPMPortal
(pasta onde estão os certificados) -
Binding type:
HTTPS
-
Host name:
epm.empresa.com.br
-
SSL certificate: selecione o certificado gerado via PowerShell anteriormente.
Clique em OK para criar o site.
Configurando o URL Rewrite no IIS
Após criar o site “EPM Portal”, configuraremos as regras de reescrita que direcionarão as chamadas recebidas para os serviços corretos do EPM Web Server.
1. Acessar o módulo URL Rewrite
-
No IIS Manager, selecione o site EPM Portal;
-
Clique duas vezes em URL Rewrite;
-
No painel lateral, clique em Add Rules…;
-
Selecione Blank Rule (entrada em branco).
2. Criar regra: Auth_Rewrite
-
Name:
Auth_Rewrite
-
Pattern:
^auth/(.*)?
-
Action Type:
Rewrite
-
Rewrite URL:
-
Confirme com Apply, depois clique em Back to Rules.
Essa regra redireciona as requisições de autenticação para a porta 44333, onde o serviço de autenticação do EPM Web Server está escutando.
3. Criar regra: WebAPI_Rewrite
-
Name:
WebAPI_Rewrite
-
Pattern:
^webapi/(.*)?
-
Action Type:
Rewrite
-
Rewrite URL:
-
Confirme e volte para a lista de regras.
Esta regra trata o endpoint da Web API, que responde na porta 44332.
4. Criar regra: Default_Rewrite
-
Name:
Default_Rewrite
-
Pattern:
^(.*)
-
Action Type:
Rewrite
-
Rewrite URL:
-
Desmarque a opção “Stop processing of subsequent rules”.
Essa regra cobre todas as demais URLs que não foram capturadas pelas anteriores. A porta 44331 corresponde ao EPM Portal.
5. Ordenar as regras
Certifique-se de que a ordem das regras no IIS seja:
-
Auth_Rewrite
-
WebAPI_Rewrite
-
Default_Rewrite
A ordem é fundamental para o correto funcionamento do proxy reverso.
Configuração do EPM Web Server e do EPM Portal
1. Configurar o EPM Web Server
-
Abra o EPM Web Server Manager > clique com o botão direito > Settings.
-
Na aba General, configure:
-
Certificate Path: caminho para o
epm.crt
emC:\IIS_EPMPortal
; -
Key Path: caminho para o
epm.key
na mesma pasta.
-
-
Clique em Apply.
-
Na aba Authentication:
-
Em New Address, adicione:
-
Clique para incluir na lista de redirects;
-
Habilite Public Origin e insira o mesmo endereço;
-
Clique em Apply e depois em OK.
-
2. Configurar o EPM Portal
-
Abra o EPM Portal Manager > clique com o botão direito > Settings.
-
Configure os caminhos para o certificado
.crt
e chave.key
da mesma forma. -
Nos campos:
-
WebAPI Endpoint:
-
Authentication Endpoint:
-
-
Clique em Apply e depois em OK.
Testando o acesso
Abra um navegador e acesse:
Como estamos utilizando certificado autoassinado, o navegador pode exibir um aviso de segurança. Clique em Advanced e depois Proceed para continuar.
Importante: para ambientes de produção, utilize certificados válidos assinados por uma Autoridade Certificadora (CA) para garantir a confiabilidade da conexão e evitar avisos no navegador.