Tempo aproximado para leitura: 00:07:30 min
Dúvida
Como aumentar a segurança no acesso ao RM Portal Corpore.Net?
Ambiente
Framework - Linha RM - Frame - Todas as versões do sistema RM
Solução
O RM é desenvolvido baseado nos princípios fundamentais de segurança abordados pelo OWASP (Open Web Application Security Project). Porém, existem configurações que permitem ajustar o nível de segurança da aplicação.
Para aumentar a segurança no acesso ao RM Portal Corpore.Net, aplique as seguintes configurações:
-
Habilitar o SSL:
Para garantir que a comunicação com o portal seja segura, habilite o SSL para a sua aplicação no IIS. Isso é recomendado principalmente quando o portal é exposto em uma DMZ ou servidor com acesso via rede pública.Para isso, é necessário adquirir um certificado através de uma autoridade certificadora confiável e seguir as documentações. Para mais informações, acesse: https://en.wikipedia.org/wiki/SSL
Abaixo segue link com exemplo de como gerar certificado SSL do Windows.
TOTVS TDN - Gerando Certificado SSL
Importante: No exemplo acima, é configurado o certificado nativo do Windows; dessa forma, continuará sendo apresentada a mensagem de que o acesso não é seguro. Para que a mensagem não seja exibida, o certificado deve ser adquirido por uma autoridade certificadora confiável. -
Reduzir o nível de detalhamento de mensagens exibidas para o usuário:
Para isso, basta inserir a tag abaixo dentro da seção AppSettings do web.config do portal Corpore.Net.<add key=”StackTraceVisible” value=”False” />
Para mais detalhes, acesse: Improper Error Handling
-
Ativar a flag “Secure” para os cookies de sessão:
Importante para garantir que os cookies, responsáveis por armazenar alguns dados de autenticação (não incluem usuário e senha) e outras informações, sejam transportados em segurança. Basta seguir os passos listados no link: How can I set the Secure flag on an ASP.NET Session Cookie? -
Habilitar HTTPS na aplicação:
Isso garante que sua comunicação será feita com segurança, ou seja, utilizando o SSL. Para mais informações, acesse: Using HTTP Strict Transport Security in IIS - Configurar a HttpOnlyCookies: A configuração HttpOnlyCookies definida como true ajuda a atenuar as ameaças de scripts entre sites, que podem resultar em roubo de cookies. Para configurar, siga o passo a passo: Learn Microsoft - httpCookies Element (ASP.NET Settings Schema)
- Remover a permissão de listar os artefatos do ambiente diretamente no IIS: Learn Microsoft - Directory Browse <directoryBrowse>
-
Habilitar Segurança CSRF (Cross-Site Request Forgery): CSRF é um ataque em que um site malicioso faz o navegador de uma vítima enviar uma requisição para o seu sistema sem ela perceber.
- <add key="CSRFEnabled" value="true" />
Ao utilizar a tag como true, o token será gerado e validado no servidor, garantindo que a informação não foi alterada, fabricada ou disparada por terceiros sem o consentimento do usuário.
- <add key="CSRFEnabled" value="true" />
- Configure complexidade de senha para o RM, siga o passo a passo: Framework - Linha RM - Frame - Complexidade de senha
-
Configure o timeout para o RM Portal, para que seja solicitado novo login após um período de utilização.
- No IIS clique com o botão direito sobre o Default Web Site;
- Em Gerenciar Site selecione Configurações Avançadas;
- Configure o Tempo Limite de Conexão para '120', por exemplo, ou para o tempo adequado para sua empresa:
- Ainda no IIS, dentro de Default Web Site selecione o aplicativo Corpore.Net;
- Abra a opção Estado da Sessão;
- Configure o Limite de Tempo para '120', por exemplo, ou para o tempo adequado para sua empresa:
- Alterar configuração no arquivo web.config (localizado na pasta UNIDADE:\totvs\CorporeRM\Corpore.Net):
Localizar as tags abaixo e alterar o valor para, por exemplo, '120', ou para o tempo adequado para sua empresa:
<forms name="RMAuthForm" loginUrl="~/Login.aspx" timeout="22" protection="Encryption" path="/" slidingExpiration="true" />
<sessionState mode="InProc" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes" cookieless="false" timeout="20"/>
Saiba mais
Para mais informações sobre como aumentar a segurança no Portal Corpore.Net, acesse:
Como aumentar a segurança de sua aplicação
0 Comentários