Gerenciamento de configuração do IIS 8.0 do ASP.NET

por Won Yoo

Compatibilidade

Versão Observações
IIS 8.0 As ferramentas de gerenciamento do IIS foram atualizadas para ASP.NET 4.5 no IIS 8.0.
IIS 7.5 As ferramentas de gerenciamento do IIS não foram atualizadas para ASP.NET 4.5 no IIS 7.5.
IIS 7.0 As ferramentas de gerenciamento do IIS não foram atualizadas para ASP.NET 4.0 no IIS 7.0

Problema

O Windows Server 2012 inclui o .NET Framework 4.5 por padrão, bem como a instalação opcional do .NET 3.5 Framework. Os desenvolvedores e administradores frequentemente precisam executar aplicativos Web ASP.NET 3.5 e ASP.NET 4.5 e, portanto, também precisam ter a capacidade de gerenciá-los adequadamente.

Solução

O IIS 8.0 dá suporte ao gerenciamento de aplicativos ASP.NET 3.5 e ASP.NET 4.5 usando a ferramenta gráfica do Gerenciador do IIS, bem como as ferramentas de gerenciamento de linha de comando do IIS.

As ferramentas de gerenciamento de linha de comando e gráfica do IIS operam de maneira específica à versão ao ler ou gravar informações de configuração para aplicativos ASP.NET. Por exemplo, módulos de administração do ASP.NET em execução no Gerenciador do Servidor do IIS exibirão as opções de configuração aplicáveis à versão específica do ASP.NET usada por um aplicativo.

Instruções passo a passo

Pré-requisitos:

Os conceitos demonstrados neste passo a passo exigem um computador do Windows Server 2012 com todos os seguintes itens instalados: IIS 8.0, ASP.NET 3.5 e ASP.NET 4.5.

Antes deste passo a passo, os leitores já deveriam ter concluído o passo a passo complementar: usando ASP.NET 3.5 e ASP.NET 4.5 no IIS 8.0. Esse documento orienta os leitores sobre a instalação de todos os três recursos, bem como aplicativos de exemplo para ambas as versões do ASP.NET.

Soluções alternativas para bugs conhecidos:

Não há bugs conhecidos para este recurso no momento.

Exibindo módulos de administração de ASP.NET

Inicie a interface do usuário do Gerenciador do IIS e expanda a visão da árvore no lado esquerdo da janela para que o "Site da Web padrão" e seus filhos estejam mostrando:

Screenshot of the I I S Manager U I. The navigation tree is on the left pane. Default Web Site is selected. The icons dot net Roles, dot net Users, and Providers are highlighted.

A parte direita da interface do usuário do Gerenciador do IIS mostra os módulos administrativos disponíveis para gerenciar o aplicativo do ASP.NET realçado na visão de árvore. Nesse caso, como o Site da Web padrão está selecionado e, por padrão, esse site dá suporte a ASP.NET 4.5, o Gerenciador do IIS exibe 15 diferentes módulos de administração específicos do ASP.NET. Os ícones mostrados acima na estrutura de tópicos em vermelho são os três módulos de administração que só estão disponíveis para uso com aplicativo do ASP.NET 4.5.

Você pode ver as diferenças de alto nível entre o gerenciamento de aplicativos do ASP.NET 3.5 e ASP.NET 4.5 no Gerenciador do IIS abaixo. Como o aplicativo "example35" está configurado para ASP.NET 3.5, apenas 12 módulos de administração específicos do ASP.NET estão disponíveis:

Screenshot of the I I S Manager UI dialog box. In the left pane, example thirty five is selected.

Conforme observado acima, o Gerenciador do IIS no IIS 8.0 dá suporte a três módulos de administração adicionais ao gerenciar o ASP.NET 4.5:

  • Provedores: este módulo de administração dá suporte ao gerenciamento centralizado de provedores de persistência plugáveis para os recursos de associação, gerenciador de funções e perfil do ASP.NET 4.5.
  • Usuários do .NET: criação interativa baseada em interface do usuário, exclusão e modificação de usuários de associação para aplicativos do ASP.NET 4.5.
  • Funções do .NET: criação/exclusão de funções baseadas em interface do usuário, bem como integração com o módulo "Usuários do .NET" para adicionar e remover usuários de/para funções. Assim como nos dois módulos de administração anteriores, o módulo "Funções do .NET" é usado para gerenciar aplicativos do ASP.NET 4.5

Gerenciamento de configurações de compilação do ASP.NET

Muitos dos módulos de administração existentes para ASP.NET 3.5 e ASP.NET 4.5 expõem a mesma funcionalidade. No entanto, à medida que alguns recursos do ASP.NET evoluem ao longo do tempo, opções de configuração adicionais são adicionadas em versões mais recentes do .NET Framework. Os módulos de administração do ASP.NET no Gerenciador do IIS dão suporte a isso alterando dinamicamente as opções exibidas dependendo da versão do aplicativo do ASP.NET que está sendo gerenciado.

Veja abaixo uma captura de tela da compilação do .NET para ASP.NET 3.5:

Screenshot of the dot NET Compilation for A S P dot NET three dot five. The Display and Friendly Names columns are shown.

E abaixo está a configuração correspondente para ASP.NET 4.5. Você verá que as opções de configuração foram expandidas para incluir novos recursos do ASP.NET 4.5:

Screenshot of the dot NET Compilation for A S P dot NET three dot five. Enable J I T Profiling and Enable Prefetch behaviors are highlighted.

As duas novas opções disponíveis em aplicativos do ASP.NET 4.5 são:

  • Habilitar a criação de perfil JIT: por padrão, o ASP.NET 4.5 funcionará com a compilação JIT do CLR para habilitar a compilação em segundo plano de caminhos de execução especulativos JIT usando núcleos de CPU adicionais.
  • Habilitar o Prefetch: uma funcionalidade do ASP.NET 4.5 disponível apenas no Windows Server 2012 que integra o sistema de compilação do ASP.NET 4.5 com o serviço Superfetch do Windows Server 8. Quando o serviço Superfetch e a opção Prefetch do ASP.NET estiverem habilitados, o Windows Server 2012 criará o perfil de compilação do ASP.NET durante a inicialização de aplicativos Web, a fim de otimizar dinamicamente o desempenho do disco ao carregar assemblies gerenciados.

Gerenciar configurações de chave do computador do ASP.NET

Veja abaixo uma captura de tela da chave do computador para ASP.NET 3.5. As listas suspensas "Método de validação" ou "Método de criptografia" exibem os algoritmos de hash e criptografia com suporte usados por vários recursos de segurança no ASP.NET 3.5: (Observação: na imagem abaixo, as listas suspensas são organizadas horizontalmente para que ambos os conjuntos de opções possam ser mostrados.)

Screenshot of the Machine Key dialog box. the S H A one Validation Method is selected. The Auto Encryption method is selected.

E abaixo está a configuração correspondente para ASP.NET 4.5.

Screenshot of the Machine Key dialog box. The H M A C S H A two five six, the H M A C S H A three eight four, and the H M A C S H A five one two are highlighted.

No ASP.NET 4.5, o mesmo conjunto de algoritmos de criptografia está disponível (o AES estava disponível desde o .NET 2.0). No entanto, no ASP.NET 4.5, o suporte interno para algoritmos de hash foi expandido para incluir a família SHA-2 de algoritmos de hash com chave (HMACSHA256, HMACSHA384 e HMACSHA512).

Gerenciamento de páginas e controles do ASP.NET

Veja abaixo uma captura de tela de páginas e controles para ASP.NET 3.5. O módulo de administração exibirá um subconjunto de opções de configuração comumente usadas para aplicativos do ASP.NET 3.5:

Screenshot of the Pages and Controls page for A S P dot NET three dot five. The Buffer behavior is highlighted.

E abaixo está a configuração correspondente para ASP.NET 4.5. As opções disponíveis na parte "Comportamento" foram expandidas para incluir novas configurações para ASP.NET 4.5:

Screenshot of the Pages and Controls page. The Client I D Mode and Control Rendering Compatibility Version Behaviors are highlighted.

À medida que o ASP.NET progride passando por diferentes versões, há modificações contínuas no HTML, Javascript e CSS emitidos por vários recursos e controles. No entanto, os aplicativos existentes podem esperar formatos específicos para a saída renderizada. O ASP.NET 4.5 pode ser configurado para dar suporte a formatos de renderização mais antigos usando as novas configurações expostas no módulo de administração "Páginas e controles":

  • Modo ClientID: usa como padrão a nova configuração de "Previsível", o que resulta em identificadores estáveis sendo emitidos para o atributo "id" em elementos HTML renderizados. Esta configuração pode ser alterada para "AutoID" para imitar o comportamento de geração de ID usado em versões anteriores do ASP.NET.
  • Controlar a versão de compatibilidade de renderização: como o seu nome sugere, esta configuração controla qual versão da saída HTML/Javascript/CSS renderizada é usada por vários controles ASP.NET. Esta propriedade pode ser definida como "3.5", caso em que o ASP.NET 4.5 emitirá uma saída que corresponda ao formato criado pelo ASP.NET 3.5.

Resumo

O IIS 8.0 dá suporte à execução de aplicativos do ASP.NET 3.5 e ASP.NET 4.5 no mesmo computador usando pools de aplicativos diferentes para hospedar cada versão do .NET Framework. Para dar suporte à administração de ambos os tipos de aplicativos do ASP.NET, as ferramentas de gerenciamento do IIS 8.0 (tanto interface do usuário quanto linha de comando) também dão suporte ao gerenciamento de várias versões do ASP.NET. Além disso, a interface do usuário do Gerenciador do Servidor do IIS 8.0 exibe dinamicamente as opções de gerenciamento apropriadas, dependendo de qual versão do aplicativo ASP.NET está sendo gerenciada.