• IIS 7.0 (Internet Information Services): Parte 7: Delegação

    O sistema de configurações do IIS 7, mencionado no post anterior, possui outra característica interessante: ele é Delegável.

    Isto, em termos simples, significa que usuários comuns, não-administradores do servidor podem efetuar alterações no IIS 7.0. Logicamente, há um controle de delgação, chamado "Feature Delegation" onde os administradores, de forma granular, dizem ao IIS quais características podem ou não ser delegadas, ou seja, alteradas.

    Assim, por exemplo, pode ser que o administrador queira controlar quais documentos podem ser o Default Page dos sites hospedados. Deste modo, essa característica, Default Page não é Delegada, ou seja, não pode ser alterada.

    Se isto não for verdade, o administrador delega essa características e indica quais usuários ou grupos (Active Directory, local ou IIS users) podem alterar tal característica.

    Tal configuração pode ser feita a nível de websites, assim, 2 ou mais sites podem ter diferentes configurações de Delegação.  O diagrama abaixo ilustra melhor tal situação:

     

    Perceba, que dentro do arquivo applicationhost.config ("coração" do IIS e que possui suas configurações globais), há uma linha "overridemodedefault="deny". Isto significa, que determinada seção de configuração está bloqueada, ou seja, não é delegável. Assim, se algum desenvolvedor tentar criar um arquivo web.config e alterar essa seção, receberá um erro do IE durante a execução. Isto permite total controle do servidor e suas alterações, que ficam sob responsabilidade final do administrador do webserver.

  • Ultimo dia de Bill Gates na Microsoft

     

    Vale a pena assistir...Geralmente alguns vídeos como esses são mantidos internamente, mas este foi publicado para todos.... dá o que pensar ;-)

     


    Bill's Last Day: The CES Keynote video
  • IIS 7.0 (Internet Information Services) - Parte 3: Pilares

    Todo desenvolvimento de um produto tem por objetivo suprir necessidades e interesses de nossos clientes e parceiros.

    O IIS 7 também segue essa premissa e por isto, sua construção foi baseada em alguns pilares e feedbacks do mercado.

    Logicamente, em primeiro lugar, há um total aproveitamento dos pilares e características do IIS 6.0, que como já dito neste blog, possui características robustas para um webserver. A tabela abaixo exemplifica alguma destas características técnicas:

     

    Algumas características principais do IIS 6.0:

    • Não é instalado por default com o sistema operacional Windows Server 2003 (ele já vem "embutido" no SO, porém, não instalado);
    • Arquitetura de "worker process" faz o isolamento de aplicações mal comportadas, podendo por exemplo, se configurar recycles automáticos baseados em consumo de memória e CPU;
    • Ampla possibilidade de administração via linha de comando (scripts VBS, APIs de WMI (Windows Management Instrumentation));
    • Totalmente integrado com .NET;

    Entretanto, devido ao desenvolvimento do mercado e surgimento de novas tecnologias, logicamente, o IIS 7 possui novas funcionalides para estender as características já existentes, tais como:

     

     

    Nos próximos posts estarei detalhando tecnicamente cada um destes pilares.

  • IIS 7.0 (Internet Information Services) - Parte 4: Segurança

    Um dos pilares do IIS 7, conforme vimos no post anterior  é Segurança. E isto não poderia ser diferente, dado a criticidade e sensibilidade de se expor informações ou sistemas via Web.

    Debaixo do "guarda-chuva" Segurança, temos algumas características bem interessantes:

    • Modularidade: o IIS 7 possui cerca de 40 módulos disponíveis, já embutidos no sistema operacional, onde você pode granularmente escolher quais componentes estarão disponíveis. Assim, se por exemplo, você não vai executar a autenticação do tipo "Digest", não precisa instalar esse módulo (DigestAuthModule), ou seja, seus binários não estarão em disco e você terá uma área de ataque reduzida. Apenas para se ter idéias de quais módulos estão disponíveis, o gráfico abaixo mostra de modo agrupado, quais são os mesmos:

    Logicamente, há todo um controle de "dependências" entre os módulos. Assim, se você necessita executar aplicações ASP.NET, ao selecionar o módulo principal, automaticamente os demais serão acrescentados.

    • Gerenciamento Reduzido de Patches: pelo mesmo motivo acima, se os binários não estão fisicamente em disco, não há necessidade de patches. Assim, seguindo o mesmo exemplo, se o módulo DigestAuthModule não está instalado, e há um patch de correção para esse módulo em específico, sua aplicação não é necessária.
    • URLScan embutido: essa ferramenta, disponível como download separado para o IIS 6.0, utilizado para se assegurar que requisições HTTP válidas (por exemplo: tamanho máximo de string, caracteres inválidos, etc) estavam realmente sendo processadas, é agora um módulo (RequestFilteringModule) do IIS 7. Assim, simplesmente editando arquivos de configuração texto (como o web.config) você pode customizar e configurar esse módulo, acrescentando um nível de segurança em seu WebServer
  • IIS 7.0 (Internet Information Services) - Parte 2: Evolução da Plataforma

    Antes de propriamente dito começarmos a analisar as novas características do IIS 7.0, é necessário salientar que desde há alguns anos uma base sólida para Web vem sendo construída pela Microsoft. Ao longo dos anos, houve evolução nos itens Segurança, Gerenciamento, Escalabilidade e Customização.

    A tabela abaixo exemplifica muito bem essa curva de evolução. Em 10 anos, desde o IIS 4.0 com o Option Pack, até 2007/2008 com o Windows Server 2008 + IIS7.0, muitas alterações aconteceram, de acordo com a evolução do mercado e necessidade dos desenvolvedores e Profissionais de TI.

    Por exemplo, em termos de arquitetura, hoje, no IIS7, há uma arquitetura totalmente modular. Você possui mais de 40 módulos que podem ser instalados quase que indivualmente para construir um web server totalmente adequado às suas necessidades. Com relação à segurança, em 1997, o IIS 4.0 era executado através de uma conta "LocalSystem", que possuía totais privilégios administrativos sobre o servidor. Hoje, ele é executado debaixo de uma conta com menor privilégio, garantindo uma segurança melhor.

    Um ponto a destacar é que o IIS 6.0, plataforma amplamente utilizada com o Windows Server 2003, desde o seu lançamento há cerca de 5 anos, não teve nem sequer um hotfix crítico de segurança. Isto é comprovado pelo site especializado Secunia , que faz uma análise constante de sistemas operacionais e demais software de mercado. Isto representa uma evolução enorme e mostra realmente que a plataforma é confiável e já foi testada amplamente.

     

     

    Relatório Secunia. Link direto: http://secunia.com/product/1438/?task=statistics