Estas foram as instruções dadas por Jason Shavers em seu blog. (Mas essa página não existe mais.) Scott Hanselman também fala sobre a ativação do SSL no link . Mas em nenhum momento ele se refere a fazer o site exigir certificados de clientes.
Estas são as instruções que eu segui:
Altere o applicationhost.config (há dois deles em MyDocuments \ IISExpress \ config e o outro nos arquivos de programa \ IIS Express \ AppServer por padrão aquele no seu perfil é usado quando você executa um projeto no IISExpress no VS 2012 O outro pode ser executado usando a linha de comando, que é o que eu fiz na máquina de teste local.)
- Alterar o elemento
< access sslFlags="None" / > to < access sslFlags="SslNegotiateCert" />
E o elemento
< iisClientCertificateMappingAuthentication
enabled="false" > < / iisClientCertificateMappingAuthentication >
para
< iisClientCertificateMappingAuthentication
enabled="true" > < / iisClientCertificateMappingAuthentication >
As próximas duas etapas devem ser executadas no Visual Studio
Por padrão, quando um novo projeto é criado no VS 2012, ele é criado como um projeto do IIS Express. Um projeto antigo transferido para o VS2012 pode ter que realmente mudar essa configuração.
-
Na página de propriedades do Project na guia Web, altere Usar o Visual Studio Developer Server para usar o servidor Web do IIS local. (Deve haver uma caixa de seleção acinzentada dizendo Usar o IIS Express se você não tiver a instalação regular do IIS na sua máquina (o que não pode ser feito nessas máquinas NMCI).
Deve haver um URL de projeto dizendo algo como link (que deve ser a mesma porta definida como "porta específica" no Visual Studio Development Server definição (se estiver definida)
-
Em seguida, selecione o projeto no gerenciador de soluções e vá para a guia de propriedades. (Às vezes isso tem que ser feito algumas vezes antes que as propriedades apareçam.) Isso terá três propriedades, SSL Enable, cujo padrão é false, SSL URL que está em branco com um novo projeto e URL que é definido como o URL em " URL do projeto "na guia" Propriedades ".
Altere a propriedade SSL enabled para true e uma nova URL SSL será criada.
- Copie esse URL SSL e volte para a página de propriedades do projeto e cole-o lá como o novo URL do projeto. Eu cliquei em "Criar Diretório Virtual" neste ponto, embora alguns blogs digam que não é necessário que você só precise salvar o projeto e executá-lo na depuração.
No arquivo applicationhost.config sob o elemento "", uma nova entrada é feita quando o projeto é executado pela primeira vez antes de você ativar o SSL. Será assim:
<site name="WebApplication1" id="2">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="c:\users\edward.joell\documents\visual studio 2012\Projects\WebApplication1\WebApplication1" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:61313:localhost" />
</bindings>
</site>
Quando você ativa o SSL no seu projeto, ele deve ficar assim:
<site name="WebApplication1" id="2">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="c:\users\edward.joell\documents\visual studio 2012\Projects\WebApplication1\WebApplication1" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:61313:localhost" />
<binding protocol="https" bindingInformation="*:44313:localhost" />
</bindings>
</site>
(todas as portas 443xx são reservadas para projetos SSL).