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.