
Estou configurando certificados SSL em um ambiente de desenvolvimento usando IIS 6 no W2k3.
Eu tenho um diretório chamado login com uma única página login.asp
que gostaria que fosse visualizada apenas por SSL.
Portanto, antes de instalar ou aplicar permissões SSL, a página pode ser visualizada por meio de um navegador. Posso navegar na página e ela redireciona etc. e está tudo bem. No entanto, a autenticação básica é codificada em Base64, portanto, desejo proteger apenas o tráfego desta página.
Eu criei um certificado fictício makecert
, instalei-o e adicionei-o ao IIS. O IIS está feliz por ser confiável. Selecionei o diretório login
e os arquivos filhos para "Exigir canal SSL". Quando atualizo meu navegador, login/login.asp
recebo um "404: Página não encontrada" no IE 8. Portanto, 2 problemas aqui
- A página agora não pode ser visualizada ao usar HTTPS.
- Eles devem digitar manualmente o HTTPS (pequeno inconveniente por enquanto)
Se eu desligar "Exigir Canal SSL" do IIS, ele funcionará novamente.
Que parte do processo estou perdendo, pois segui vários tutoriais sobre certificados SSL instalados, mas ainda encontro essa barreira.
Responder1
Agora que investiguei esse problema com muito mais detalhes, pensei em responder.
O problema é que a página agora espera ser solicitada apenas como HTTPS. Se você precisar mudar automaticamente para HTTPS ao solicitar HTTP, fiz isso forçando quaisquer erros 401.3 (na guia Erros personalizados do site) para um URL específico, que então alterou http:// para https:// para qualquer solicitação recebida.
Olhando artigos no Google, você pode fazer isso em ASP/.NET etc ou Javascript.
Também achei o selfssl.exe
Kit de recursos do IIS 6.0 muito mais amigável do que o makecert.exe
. Muito simples de usar.