NUNCA MAIS PASSE RAIVA POR NÃO CONSEGUIR RESOLVER UM PROBLEMA COM O EXCEL - GARANTIDO!

UNIVERSIDADE DO VBA - Domine o VBA no Excel Criando Sistemas Completos - Passo a Passo - CLIQUE AQUI

Você está em: PrincipalArtigosASP.NET › Capítulo 14 : 02
Quer receber novidades e e-books gratuitos?
« Lição anterior Δ Página principal ¤ Capítulos Próxima lição »
ASP.NET - CURSO COMPLETO
Autor: Júlio Battisti
Lição 112 - Capítulo 14 - Autenticação de usuários com o IIS 5.0

Quando um usuário tenta acessar uma página, a primeira coisa que o servidor precisa determinar é a identidade deste usuário, isto é, o IIS precisa conhecer “quem” está tentando acessar a página. Uma das maneiras de saber quem é o usuário que está acessando o site, é através da utilização de um Username e senha. Porém não seria nada “simpático” apresentar uma tela de logon para o usuário a primeira vez que ele está acessando o site. Até mesmo nas próximas tentativas de acesso, a necessidade de log on pode acabar afastando o internauta.

Através da autenticação do usuário, podem ser definidos os níveis de acesso a informação que o mesmo terá, bem como podem ser feitos registros das ações realizadas pelo usuário, mediante a gravação de logs de acesso. Existem diversos tipos de autenticação possíveis com o IIS. Passaremos a estudá-los individualmente. Os tipos de autenticação que estudaremos são os seguintes:

• Autenticação anônima.
• Autenticação básica.
• Autenticação avançada.
• Autenticação integrada ao Windows 2000.
• Autenticação com certificados.

Autenticação anônima.

Um tipo de autenticação bastante comum é o que permite o acesso anônimo. O IIS permite que seja configurado um tipo de acesso chamado Acesso anônimo, no qual não é necessário que o usuário forneça um Username e senha para ter acesso ao site. Este acesso anônimo está ligado a uma única Conta de usuário do Windows 2000 Server. Todo o usuário que acessar um site configurado para permitir Acesso anônimo, será identificado como se estivesse autenticado usando a Conta de usuário configurada para o acesso anônimo.

A conta de usuário para Acesso anônimo é automaticamente criada quando instalamos o Internet Information Services 5.0. Por padrão esta conta possui o seguinte nome:

IUSR_NOME_DO_COMPUTADOR

Por exemplo, ao instalarmos o IIS em um servidor chamado SERVIDOR, será criada a seguinte conta para permitir o Acesso anônimo:

IUSR_SERVIDOR

A autenticação anônima fornece aos usuários acesso a áreas públicas do seu site, sem solicitar um nome de usuário ou uma senha.

Por padrão, a conta IUSR_NOME_DO_COMPUTADOR R é incluída no grupo de usuários “Convidados”. Esse grupo tem restrições de segurança, impostas pelas permissões do NTFS (sistema de arquivos do Windows 2000 que possui recursos de segurança mais avançados do que o sistema FAT ou FAT32) , que designam o nível de acesso e o tipo de conteúdo disponível para os usuários públicos. Com isso o usuário possui limitações sobre os recursos que ele pode acessar no servidor, sendo que estas limitações já atuam como um nível inicial de segurança.

Se existem vários sites no seu servidor ou áreas no seu site que exigem privilégios de acesso diferentes, você pode criar várias contas anônimas, uma para cada área site, diretório ou arquivo.
Por exemplo, você pode querer registrar o nível de acesso a diferentes áreas do seu site, utilizando para isso diferentes contas para o acesso anônimo a cada uma destas áreas.

O IIS usa a conta IUSR_NOME_DO_COMPUTADOR da seguinte forma:

1.         A conta IUSR_NOME_DO_COMPUTADOR  é adicionada ao grupo Convidados no computador ou do Domínio, conforme descrito anteriormente.
2.         Quando uma solicitação é recebida, o IIS representa a conta IUSR_NOME_DO_COMPUTADOR  antes de executar qualquer código ou acessar qualquer arquivo. O IIS pode representar a conta IUSR_NOME_DO_COMPUTADOR pois conhece o nome de usuário e a senha dessa conta.
3          Antes de retornar uma página ao cliente, o IIS verifica as permissões dos arquivos e diretórios do NTFS para ver se a conta IUSR_NOME_DO_COMPUTADOR  tem permissão para acessar o arquivo. Neste ponto é que podemos limitar as área as quais o usuário que entra como anônimo tem acesso. Basta configurar as permissões NTFS para que a conta associada ao acesso anônimo somente tenha acesso as áreas públicas do site.
4          Se o acesso for permitido, a autenticação é concluída e os recursos tornam-se disponíveis para o usuário.
5          Se o acesso não for permitido, o IIS tenta usar outro método de autenticação. Se nenhum método for selecionado, o IIS retorna uma mensagem de erro "HTTP 403 Acesso negado" ao navegador do cliente.

Veremos sobre os outros métodos de autenticação ainda neste capítulo.

Na Figura 14.1, temos uma representação desta seqüência para o acesso anônimo.

Curso Completo de ASP.NET - Julio Battisti
Figura 14.1 Acesso anônimo no IIS.

IMPORTANTE:

• Se a autenticação anônima for ativada, o IIS tentará sempre a autenticação anônima, usando-a primeiro, mesmo se outros métodos forem ativados.

• Em alguns casos, o navegador solicitará ao usuário um nome de usuário e uma senha.
Você pode alterar a conta usada para a autenticação anônima no Snap-in do IIS, no nível de serviço do servidor Web ou para diretórios virtuais ou arquivos individuais.

• A conta anônima deve ter o seguinte direito de usuário: “Efetuar logon localmente”. Se a conta não tiver a permissão “Efetuar logon localmente”, o IIS não poderá atender qualquer solicitação anônima. Ao instalarmos o IIS, automaticamente, a permissão “Efetuar logon localmente” é concedida à conta IUSR_NOME_DO_COMPUTADOR.

As contas IUSR_NOME_DO_COMPUTADOR  em controladores de domínio não são adicionadas ao grupo  Convidados do domínio,  por padrão e devem ser alteradas para Efetuar logon localmente a fim de permitir logon anônimo.

Agora vamos aprender a efetuar as seguintes atividades práticas:

• Definir a conta para acesso anônimo no IIS.
• Verificando a que grupos pertence a conta IUSR_NOME_DO_SERVIDOR.
• Verificando a permissão Efetuar logon local para a conta IUSR_NOME_DO_SERVIDOR.
• Definindo permissões NTFS para uma conta de usuário.

Estas atividades são importantes, não só para as configurações do acesso anônimo, mas para a configuração de qualquer tipo de acesso.

Para informações mais detalhadas sobre estes itens, consulte o livro “Série Curso Básico & Rápido Microsoft Windows 2000 Server” de minha autoria, publicado pela editora Axcel Books.

Como definir a conta para acesso anônimo no IIS 5.0.

Para definir qual conta será utilizada para o acesso anônimo siga os seguintes passos:

1.         Faça o log on no Windows 2000 Server, com permissões de administrador.
2.         Abra o Gerenciador do Internet Services: Iniciar -> Programas -> Ferramentas administrativas -> Gerenciador do Internet Services.
3.         Surge a janela indicada na Figura 14.2

Curso Completo de ASP.NET - Julio Battisti
Figura 14.2 O Gerenciador do Internet Services.

4.         Esta é a janela do console de administração do IIS 5.0.
5.         Dê um clique duplo no nome do computador. No nosso exemplo o nome é servidor (na prática aparece um asterisco ao lado do nome do servidor).
6.         Surgem as opções indicadas na Figura 14.3.

Curso Completo de ASP.NET - Julio Battisti
Figura 14.3 Opções de gerenciamento do IIS.

7.         Podemos configurar o acesso anônimo para todos as aplicações Web contidos no Servidor ou para cada aplicação individualmente. Inclusive podemos configurar diferentes contas do Windows 2000 Server, para serem utilizadas para o acesso anônimo em diferentes áreas do site. Podemos configurar uma conta a nível do Servidor Web, de cada aplicação e até mesmo para uma pasta dentro de uma aplicação. Com isso poderíamos ter diferentes pastas, dentro de uma mesma aplicação Web (que para o IIS é representada por uma pasta virtual, com diferentes contas para acesso anônimo.
8.         No nosso exemplo, iremos configurar uma única conta para acesso anônimo para todo o servidor. O procedimento é o mesmo quer seja para o site como um todo, para uma aplicação Web do site ou para uma pasta dentro da aplicação Web.
9.         Clique com o botão direito do mouse sobre a opção “Site da Web padrão” (ou na opção correspondente, caso você tenha alterado este  nome). No menu de opções que surge dê um clique em Propriedades.
10.       Será exibida a janela “Propriedades de Site Web padrão”, conforme indicado na Figura 14.4.

Curso Completo de ASP.NET - Julio Battisti
Figura 14.4 Propriedades do Site Web padrão.

11.       Dê um clique na guia Segurança de pasta. Serão exibidas as opções indicadas na Figura 14.5.

Curso Completo de ASP.NET - Julio Battisti
Figura 14.5 As opções da guia Segurança de pasta.

12.       A primeira opção desta guia é Controle de acesso anônimo e autenticação. Dê um clique no botão Editar, ao lado desta opção. Surge a janela Métodos de autenticação, indicada na Figura 14.6.

Curso Completo de ASP.NET - Julio Battisti
Figura 14.6 As opções para métodos de autenticação.

13.       A primeira opção desta janela é Acesso anônimo. Para que o acesso anônimo seja permitido, esta opção deve estar marcada.
14.       Para definir a conta que será utilizada para o acesso anônimo, dê um clique no botão Editar, ao lado da opção Acesso anônimo.
15        Será exibida a janela Conta de usuário anônimo, conforme indicado na Figura 14.7.

Curso Completo de ASP.NET - Julio Battisti
Figura 14.7 Definindo a conta para usuário anônimo.

16.       Nesta janela você pode definir a conta que será utilizada para o acesso anônimo. Observe que por padrão é definida a conta IUSR_NOME_DO_COMPUTADOR. No exemplo da Figura 9.7, aparece IUSR_SERVIDOR, pois o computador que estou utilizando para escrever este livro tem o nome de SERVIDOR, conforme já descrito em outras oportunidades.
17.       Caso você queira utilizar outra conta e não lembre o nome da mesma, é só clicar no botão Procurar, que será exibida uma lista de usuários cadastrados no Windows 2000.
18.       Uma opção interessante a ser comentada é a seguinte:

Permitir que o IIS controle a senha: Esta opção quando selecionada, permito ao IIS sincronizar automaticamente as configurações de senha anônima com aquelas definidas no Windows 2000 . Se a senha fornecida à conta anônima e a senha do Windows para a conta forem diferentes, a autenticação anônima não funcionará. Este é um dos erros mais comuns e a causa mais freqüente de indisponibilidade de um site IIS. Por algum motivo esta opção não está marcada, com isso é preciso digitar a senha para a conta IUSR_NOME_DO_COMPUTADOR. O usuário digita a senha e OK.

Porém mais adiante, por algum motivo ou por solicitação do Administrador do IIS, a senha para esta conta é alterada no Windows 2000. Como a sincronização não está ativada, o IIS continua tentando usar a senha antiga. Como as duas senhas estão diferentes o acesso é negado e o usuário recebe uma mensagem de acesso negado ao tentar acessar o site.

IMPORTANTE! A sincronização de senhas deve ser usada somente com contas de usuário anônimas definidas no computador local e não com contas anônimas de computadores remotos.

19.       Após ter configurado as informações para a conta de acesso anônimo, dê um clique em OK.
20.       Você estará de volta à janela Métodos de autenticação, dê um clique em OK para fechá-la.
21.       Você estará de volta à janela Propriedades do site da Web padrão, dê um clique em OK para fechá-la.
22.       Você estará de volta ao Gerenciador do Internet Services. Feche-o.

Para definir uma conta de acesso anônimo diferente para uma das aplicações Web do site, ou até mesmo para uma subpasta de uma aplicação Web, basta repetir os passos indicados.

Verificando as configurações da conta para acesso anônimo no Windows 2000 Server.

Conforme descrito anteriormente, a conta IUSR_NOME_DO_COMPUTADOR, deve ter algumas configurações especiais (relativas a permissões e direitos), definidas no Windows 2000 Server. Agora veremos como conferir se as configurações para esta conta estão corretas.

Vamos verificar duas configurações a respeito desta conta:

• A que Grupos de usuários do Windows 2000 pertence esta conta.
• Se a conta possui a permissão “Fazer logon localmente”.

Para verificar a que grupos pertence a conta IUSR_NOME_DO_COMPUTADOR:

1.         Faça o log on no Windows 2000 Server, com permissões de administrador.
2.         Abra o Console para Gerenciamento do computador: Iniciar -> Programas -> Ferramentas administrativas -> Gerenciador do Computador.

Se o servidor que você estiver utilizando for um controlador de domínio, você deve abrir o Console para gerenciamento do Active Directory. As opções que surgem podem ser um pouco diferentes das apresentadas neste passo-a-passo.

3.         Surge a janela indicada na Figura 14.8

Curso Completo de ASP.NET - Julio Battisti
Figura 14.8 O console para Gerenciamento do Computador.

4.         Dê um clique no sinal de + ao lado da opção Ferramentas de sistema, para abri-la.
5.         Nas opções que surgem, abaixo de Ferramentas de sistema, dê um clique no sinal de + ao lado da opção Usuários e grupos locais para abri-la.
6.         Surgem as opções indicadas na Figura 14.9.

Curso Completo de ASP.NET - Julio Battisti
Figura 14.9 Informações sobre os usuários e grupos de usuário do Windows 2000.

7.         Dê um clique na opção Usuários. Surge, no painel da direita, uma listagem com o nome de todos os usuários, conforme indicado na Figura 14.10.

Curso Completo de ASP.NET - Julio Battisti
Figura 14.10 Listagem dos usuários cadastrados.

8.         Na lista de usuários, do painel da direita, localize o usuário IUSR_NOME_DO_COMPUTADOR e dê um clique duplo sobre o mesmo para abrir a janela de propriedades do usuário, coforme indicado na Figura 14.11. No nosso exemplo é o usuário IUSR_SERVIDOR, pois conforme descrito anteriormente, o computador que estou utilizando é chamado SERVIDOR.

Curso Completo de ASP.NET - Julio Battisti
Figura 14.11 Propriedades para o usuário IUSR_SERVIDOR.

9.         Para saber a quais grupos o usuário pertence, dê um clique na guia Participante de (ou Membro de, se for um Controlador de Domínio). Podemos conferir que o usuário IUSR_SERVIDOR somente pertence ao grupo Convidados. Se estivéssemos em um Servidor que atua como Controlador de domínio, teríamos o grupo Convidados do domínio.

Para informações mais detalhadas sobre Controladores de domínio e Active Directory, consulte o livro “Série Curso Básico & Rápido Microsoft Windows 2000 Server” de minha autoria, publicado pela editora Axcel Books.

10.       Quando o IIS é instalado, a conta IUSR_SERVIDOR é criada e automaticamente adicionada ao grupo Convidados.
11.       Muito cuidado ao adicionar a conta IUSR_SERVIDOR a outros grupos. Quando uma conta de usuário é adicionada a um grupo, ele herda as permissões atribuídas ao grupo e com isso passa a ter acesso aos recursos que o grupo tem acesso. A maior “insanidade” que o administrador Web poderia cometer seria adicionar a conta IUSR_SERVIDOR ao grupo Administradores. Com isso estaria dando permissões máximas aos usuários que fazem acesso anônimo. Seria caso de internação do seu administrador Web.

12.       Clique no botão OK para fechar a janela com as propriedades da conta IUSR_SERVIDOR.
13.       Você estará de volta ao Gerenciador do computador, feche-o.

Agora precisamos verificar se a conta IUSR_SERVIDOR tem a permissão para Efetuar logon local.

Para verificar se a conta IUSR_SERVIDOR tem a permissão para Efetuar logon local, faça o seguinte:.

1.         Faça o log on no Windows 2000 Server, com permissões de administrador.
2.         Abra o Console “Configurações locais de segurança”: Programas -> Ferramentas administrativas -> Diretivas de segurança local.

Se o servidor que você estiver utilizando for um controlador de domínio, você deve abrir o Console para gerenciamento do Active Directory. As opções que surgem podem ser um pouco diferentes das apresentadas neste passo-a-passo.

3.         Surge a janela indicada na Figura 14.12.

Curso Completo de ASP.NET - Julio Battisti
Figura 14.12 Configurações locais de segurança.

4.         Dê um clique no sinal de + ao lado da opção Diretivas locais, para abri-la.
5.         Nas opções que surgem, abaixo de Diretivas locais, dê um clique no sinal de + ao lado da opção Atribuição de direitos de usuário,  para abri-la.
6.         Surgem as opções indicadas na Figura 14.13.

Curso Completo de ASP.NET - Julio Battisti
Figura 14.13 Atribuições de direitos para contas e grupos de usuários.

7.         No painel da direita surgem as diversas permissões disponíveis.
8.         Na listagem de permissões, localiza Efetuar logon local, conforme indicado na Figura 14.14.

Curso Completo de ASP.NET - Julio Battisti
Figura 14.14 A permissão Efetuar logon local.

9.         Dê um clique duplo sobre a permissão Efetuar logon local, para exibir a janela de configurações para esta Diretiva de segurança local. Nesta janela surge uma lista dos usuários que possuem a permissão de Efetuar logon local, conforme indicado na Figura 14.15. O usuário IUSR_SERVIDOR deve fazer parte da lista.

Curso Completo de ASP.NET - Julio Battisti
Figura 14.15 Lista de usuários com direito a Efetuar logon local.

10.       Caso o usuário IUSR_SERVIDOR não estivesse na lista, você poderia adicioná-lo utilizando o botão Adicionar...
12.       A permissão Efetuar logon local autoriza o usuário a fazer o logon na console do Servidor, isto é, localmente no servidor. A conta utilizada para acesso anônimo precisa desta permissão, caso contrário o acesso anônimo não ira funcionar.
11.       Dê um clique no botão OK para voltar ao console “Configurações locais de segurança”.
12.       Feche-o.

Com isso já sabemos que a conta para acesso anônimo está configurada corretamente. No próximo item vamos retirar as permissões NTFS da conta de acesso anônimo de uma das aplicações Web do servidor. Vamos tentar acessar esta aplicação e observar os resultados obtidos.

Configurando permissões NTFS em pastas do servidor Web.

Uma das medidas básicas de segurança é a utilização de drives formatados com o sistema de arquivos NTFS, ao invés de FAT e FAT32. O motivo é bastante simples, pois através da utilização do sistema de arquivos NTFS, podemos ter um controle bastante refinado sobre o acesso as informações, mediante a atribuição de permissões de pasta e de arquivos.

Quando estamos tratando de permissões NTFS, já estamos em um nível de segurança que é gerenciado pelo Sistema Operacional. É através da utilização do Windows 2000 Server que definimos permissões NTFS. Isso reforça o fato de que a segurança é tanto responsabilidade do grupo de Desenvolvimento, quanto do Administrador da rede.

No exemplo do acesso anônimo, o usuário é identificado para o Windows 2000, como se fosse o usuário IUSR_NOME_DA_MAQUINA. Este usuário somente terá acesso as pastas e arquivos para os quais o usuário IUSR_NOME_DA_MAQUINA tiver permissões de acesso e com os níveis de permissões definidos.

Antes de aprendermos a definir permissões NTFS vamos aprender um pouco mais sobre as mesmas.

Sistemas de arquivos no Windows 2000 e permissões NTFS.

Agora vamos ver alguns detalhes sobre os sistemas de arquivos que o Windows 2000 Server reconhece e também sobre permissões NTFS.

Um sistema de arquivos determina a maneira como o Windows 2000 Server organiza e recupera as informações no disco rígido ou em outros tipos de mídia. O Windows 2000 Server reconhece os seguintes sistemas de arquivos:

  • FAT
  • FAT32
  • NTFS
  • NTFS 5

O sistema FAT vem desde a época do DOS e tem sido mantido por questões de compatibilidade. Além disso se você tiver instalado mais de um Sistema Operacional no seu computador, alguns sistemas mais antigos ( DOS, Windows 3.x e as primeiras versões do Windows 95 ) somente reconhecem o sistema FAT. Com o sistema de arquivos FAT, a única maneira de restringir o acesso ao conteúdo de uma pasta compartilhada, é através das permissões de compartilhamento, as quais, não tem efeito no caso de acessos pela Internet, através do IIS. Com a utilização do sistema FAT, alguns recursos avançados, tais como compressão, criptografia e auditoria , não estão disponíveis.

O sistema FAT32 apresenta algumas melhoras em relação ao sistema FAT. Existe um melhor aproveitamento do espaço em disco, e com isso, um menor desperdício. Um grande inconveniente do sistema FAT32 é que ele não é reconhecido pelo Windows NT Server 4.0. . Com o sistema de arquivos FAT32, a única maneira de restringir o acesso ao conteúdo de uma pasta compartilhada, é através das permissões de compartilhamento. Com a utilização do sistema FAT32, alguns recursos avançados, tais como compressão, criptografia e auditoria , não estão disponíveis.

O sistema de arquivos NTFS é utilizado no Windows NT Server 4.0 e foi mantido e melhorado  no Windows 2000 Server, por questões de compatibilidade, já que uma nova versão do NTFS foi introduzida com o Windows 2000 - NTFS 5. É um sistema bem mais eficiente do que FAT e FAT32, além de permitir uma série de recursos avançados, tais como:

• Permissões a nível de arquivos e pastas
• Compressão
• Auditoria de acesso
• Partições bem maiores do que as permitidas com FAT e FAT32
• Desempenho bem superior do que com FAT e FAT32

Uma das principais vantagens do NTFS é que o mesmo permite que sejam definidas permissões de acesso a nível de arquivo e de pastas, isto é, posso ter arquivos em uma mesma pasta, com permissões diferentes para usuários diferentes. Além disso, as permissões NTFS têm efeito localmente, isto é, mesmo que o usuário faça o logon no computador onde um determinado arquivo está gravado, se o usuário não tiver as permissões NTFS necessárias, ele não poderá acessar o arquivo. Isso confere um alto grau de segurança, desde que as permissões NTFS sejam configuradas corretamente.

No Windows 2000 Server, conforme descrito anteriormente, temos também o NTFS 5, o qual apresenta diversas melhorias em relação ao NTFS, tais como:

• Criptografia de arquivos e pastas (A criptografia é uma maneira de “embaralhar” a informação de tal forma que mesmo que um arquivo seja copiado, o mesmo se torna ininteligível, a não ser para a pessoa que possui a “chave” para descriptografar o arquivo).
• Cotas de usuário: faz com que seja possível limitar o espaço em disco que cada usuário pode utilizar.
• Gerenciamento e otimização melhorados.

Um inconveniente do NTFS 5 , é que ele não é reconhecido pelas versões anteriores, tais como o Windows NT Server 4.0 (somente com Service Pack 4.0 ou superior). Caso você possua uma rede na qual estão presentes servidores com o Windows 2000 Server e com o Windows NT Server 4.0, planeje com bastante cuidado a utilização do NTFS 5.

Conforme descrito anteriormente, podemos definir permissões de acesso a nível da pasta ou arquivo, mas somente em unidades formatadas com o sistema de arquivos NTFS (seja na versão do NT Server 4.0 ou o NTFS 5 do Windows 2000 Server ). Por isso que é aconselhável instalar o Windows 2000 Server sempre em unidades formatadas com NTFS, pois isso melhora a segurança.

Com relação as permissões NTFS, temos um conjunto diferente de permissões quando tratamos de pastas ou arquivos. Nas Tabelas 14.1(para pastas) e 14.2 ( para arquivos) , são apresentadas as permissões e o nível de acesso para cada uma delas.

 

TABELA= Tabela 14.1 Permissões NTFS para pastas

TTA• Permissão       TTAB= Nível de acesso
TAB=  Leitura             TA• Permite ao usuário listar as pastas e arquivos dentro da pasta,                                                          permite que sejam exibidas as permissões, donos e atributos.
TAB=  Gravar             TA• Permite ao usuário criar novos arquivos e subpastas dentro da                                                         pasta, alterar os atributos da pasta e visualizar o dono e as                                                   permissões da pasta.
TAB=  Listar Conteúdo           TA• Permite ao usuário ver o nome dos arquivos e subpastas.
            de pastas
TAB=  Ler e executar TA• Permite ao usuário navegar através das subpastas para chegar a                                                       outras pastas e arquivos, mesmo que o usuário não tenha                                                    permissão de acesso às pastas pelas quais está navegando, além                                                    disso possui os mesmos direitos que as permissões Leitura e                                                          Listar Conteúdo de pastas.
TA• Modificar         TA• Permite ao usuário eliminar a pasta, mais todas as ações                                                      permitidas pela permissão Gravar e pela permissão Ler e                                                     executar.
TA• Controle total    TA• Permite que sejam alteradas as permissões, permite ao usuário                                                         tornar-se dono da pasta, eliminar subpastas e arquivos, mais                                                           todas as ações permitidas por todas as outras permissões NTFS.

 

TABELA= Tabela 14.2 Permissões NTFS para arquivos.

TTA• Permissão       TTAB= Nível de acesso
TA• Leitura             TA• Permite ao usuário ler o arquivo, permite que sejam exibidas as                                                       permissões, dono e atributos.
TA• Gravar             TA• Permite ao usuário gravar um arquivo com o mesmo nome                                                  sobre o arquivo, alterar os atributos da pasta e visualizar o dono                                                     e as permissões da pasta.
TAB=  Ler e executar TA• Permite ao usuário executar aplicativos ( normalmente                                                                     programas .exe, .bat ou .com). mais todas os direitos da                                                                  permissão Leitura.
TA• Modificar         TA• Permite ao usuário modificar e eliminar o arquivo, mais todas                                                         as ações permitidas pela permissão Gravar e pela permissão Ler                                          e executar.
TA• Controle total    TA• Permite que sejam alteradas as permissões, permite ao usuário                                                         tornar-se dono do arquivo, mais todas as ações permitidas por                                                         todas as outras permissões NTFS.

 

Todo arquivo ou pasta em uma unidade formatada com NTFS, possui uma “Lista de controle de acesso”  (Access Control List ) – ACL. Nesta ACL fica uma lista de todas as contas de usuários e grupos para os quais foi garantido acesso para o recurso, bem como o nível de acesso de cada um deles.

Existem alguns detalhes que devemos observar sobre permissões NTFS:

• Permissões NTFS são cumulativas, isto é , se um usuário pertence a mais de um grupo, o qual tem diferentes níveis de permissão para um recurso, a permissão efetiva do usuário é a soma das permissões.

• Permissões NTFS para um arquivo têm prioridade sobre permissões NTFS para pastas. Por exemplo se um usuário têm permissão NTFS de escrita em uma pasta, mas somente permissão NTFS de leitura para um arquivo dentro desta pasta, a sua permissão efetiva será somente a de leitura, pois a permissão para o arquivo tem prioridade sobre a permissão para a pasta.

• Negar uma permissão NTFS tem prioridade sobre permitir. Por exemplo, se um usuário pertence a dois grupos diferentes. Para um dos grupos foi dado permissão de leitura para um arquivo e para o outro grupo foi Negada a permissão de leitura, o usuário não terá o direito de leitura, pois Negar  tem prioridade sobre Permitir.

Agora que já conhecemos um pouco mais sobre permissões NTFS, podemos aprender como configurar estas permissões.

Definindo permissões NTFS.

Neste exemplo prático vamos fazer o seguinte:

• Vamos retirar as permissões NTFS do usuário IUSR_SERVIDOR da pasta de um aplicativo Web.
• Vamos tentar acessar o aplicativo e observar a mensagem de erro que recebemos.
• Vamos restaurar as permissões originais e tentar acessar a página novamente.

Para acessar as permissões NTFS de uma pasta e retirar as permissões do usuário IUSR_SERVIDOR, faça o seguinte:

1.         Faça o log on com privilégios de Administrador.
2.         Utilizando o Windows Explorer, localize a pasta cujas permissões NTFS serão alteradas.
3.         Dê um clique com o botão direito do mouse na pasta. No menu de opções que surge dê um clique em Propriedades.
4.         Surge a janela indicada na Figura 14.16.

Curso Completo de ASP.NET - Julio Battisti
Figura 14.16 Janela com as propriedades da pasta.

5.         Dê um clique na guia segurança.
6.         Surge a janela indicada na Figura 14.17.

Curso Completo de ASP.NET - Julio Battisti
Figura 14.17 As configurações de segurança para a pasta selecionada.

7.         Observe que a conta com a descrição “Conta de convidado da Internet” é a conta para acesso anônimo, que no nosso exemplo é IUSR_SERVIDOR. Somente possuem permissão de acesso, as contas que fazem parte desta lista.
8.         Dê um clique no botão Avançado. Surge a janela indicada na Figura 14.18.

Curso Completo de ASP.NET - Julio Battisti
Figura 14.18 A conta IUSR_SERVIDOR possue permissão somente para leitura.

9.         Observe que a conta para acesso anônimo, possui permissão somente de leitura.
10.       Vamos remover as permissões da conta IUSR_SERVIDOR (Conta de convidado da Internet). Para isso dê um clique sobre a conta para marcá-la, depois dê um clique no botão Remover.
11.       A conta IUSR_SERVIDOR não aparece mais na listagem.
12.       Marque a opção “Redefinir opções em todos os objetos filhos e permitir a propagação das permissões herdades.” Esta opção deve ser marcada para que as alterações que estão sendo feitas na pasta, sejam propagadas para todas as subpastas e arquivos pertencentes a esta pasta. Esta modificação é necessária para que a permissão para o usuário IUSR_SERVIDOR seja retirada de todos os arquivos pertencentes a pasta que está sendo alterada.
13.       Dê um clique no botão OK para voltar a janela de propriedades da pasta.
14.       Surge uma janela pedindo confirmação. Dê um clique em Sim para continuar.
15.       Você estará de volta a janela de propriedades da pasta.
16.       Na lista de usuários, remova os usuários IUSR_SERVIDOR e o grupo Todos. Para isso basta clicar no nome do usuário ou grupo e depois clicar no botão Remover.
17.       A sua lista de permissões deve estar semelhante a indicada na Figura 14.19.

Curso Completo de ASP.NET - Julio Battisti
Figura 14.19 Lista de permissões, onde foi retirada a permissão de acesso para o usuário anônimo.

18.       Dê um clique no botão OK para fechar esta janela.

Para testar se o acesso realmente foi retirado.

Agora que retiramos as permissões do usuário anônimo, se alguém tentar acessar algum arquivo que está na pasta cujas permissões foram retiradas, irá receber uma mensagem de erro, conforme indicado na Figura 14.20.

Curso Completo de ASP.NET - Julio Battisti
Figura 14.20 Mensagem de erro ao tentar acessar uma página para a qual o usuário anônimo (conta IUSR_SERVIDOR no nosso exemplo) não tem mais permissão de acesso.

Veja que a mensagem informa que o acesso à página solicitada foi negado. Isto acontece porque o usuário IUSR_SERVIDOR não possui as permissões NTFS necessárias.

IMPORTANTE! Caso você teste o acesso localmente no servidor onde a página está gravada e a autenticação integrada esteja habilitada, você terá acesso a página. Isto acontece porque primeiro o IIS tenta acesso com a autenticação anônima. Não obtém sucesso. Se a autenticação integrada (a autenticação integrada utiliza a conta do Windows que você utilizou para fazer o log on) estiver habilitada o IIS tenta utilizá-la. Caso a conta que você utilizou para fazer o logon tenha permissão de acesso à página, o IIS libera o acesso. Isto também é válido para usuários da sua rede local que fizeram o logon em um domínio do Windows NT Server 4.0 ou do Windows 2000 e cujas contas ou grupos a que pertencem, possuam permissão de acesso para o arquivo solicitado. Nos próximos itens veremos mais sobre a autenticação integrada.

Agora vamos restaurar as permissões NTFS para o usuário IUSR_SERVIDOR e testar para ver se ele voltou a ter acesso.

Para atribuir novamente as permissões NTFS para o usuário IUSR_SERVIDOR.

1.         Utilizando o Windows Explorer, localize a pasta cujas permissões NTFS serão alteradas.
2.         Dê um clique com o botão direito do mouse sobre a pasta. No menu de opções que surge dê um clique em Propriedades.
3.         Na janela de propriedades dê um clique na guia Segurança.
4.         Surge a janela indicada na Figura 14.21.

Curso Completo de ASP.NET - Julio Battisti
Figura 14.21 As configurações de segurança para a pasta selecionada.

5.         Observe que a conta com a descrição “Conta de convidado da Internet” é a conta para acesso anônimo, que no nosso exemplo é IUSR_SERVIDOR. e que esta conta não aparece na lista de usuários, portanto a mesma não possui permissões de acesso.
6.         Dê um clique no botão Avançado.  Observe que na janela que surge a conta IUSR_SERVIDOR também não faz parte da listagem, conforme indicado na Figura 14.22.

Curso Completo de ASP.NET - Julio Battisti
Figura 14.22 A conta IUSR_SERVIDOR não aparece na lista de contas.

7.         Dê um clique no botão Adicionar. Surge uma janela com a listagem de usuários. Localize o usuário IUSR_SERVIDOR e dê um clique sobre o mesmo para marcá-lo, conforme indicado na Figura 14.23.

Curso Completo de ASP.NET - Julio Battisti
Figura 14.23 Adicionando novamente o usuário IUSR_SERVIDOR.

8.         Dê um clique no botão OK. Surge uma janela pedindo para que você defina as permissões NTFS para o usuário IUSR_SERVIDOR.
9.         Defina as permissões conforme indicado na Figura 14.24 e dê um clique no botão OK.

Curso Completo de ASP.NET - Julio Battisti
Figura 14.24 Restaurando as permissões para o usuário IUSR_SERVIDOR.

10.       Você estará de volta a janela de opções avançadas. Certifique-se de que a opção “Redefinir permissões em todos os objetos filho e permitir a propagação das permissões herdadas”, esteja marcada.
11.       Dê um clique no botão OK para voltar a janela de propriedades da pasta.
12.       Surge uma janela pedindo confirmação, conforme indicado na Figura 14.25. Dê um clique em Sim para continuar.

Curso Completo de ASP.NET - Julio Battisti
Figura 14.25 Confirmando as alterações.

12.       Você estará de volta a guia Segurança da janela de propriedades da pasta.
13.       Vamos adicionar o usuário IUSR_SERVIDOR para que ele tenha permissões de acesso a pasta.
14.       Dê um clique no botão Adicionar. Surge a janela “Selecione Usuários, Computadores ou Grupos”.  Localize o usuário IUSR_SERVIDOR e dê um clique sobre o mesmo para marcá-lo. Depois dê um clique no botão Adicionar para incluir o usuário na parte inferior da janela, conforme indicado na Figura 14.26.

Curso Completo de ASP.NET - Julio Battisti
Figura 14.26 Adicionando o usuário IUSR_SERVIDOR na lista de usuários que tem permissão de acesso à pasta selecionada.

8.         Dê um clique no botão OK. Observe que o usuário IUSR_SERVIDOR já consta na listagem de usuários.
9.         Defina as permissões conforme indicado na Figura 14.27 e dê um clique no botão OK.

Curso Completo de ASP.NET - Julio Battisti
Figura 14.27 Redefinindo as permissões de acesso a pasta selecionada.

Feito isso foram reatribuídas as permissões NTFS originais e qualquer usuário volta a ter acesso a pasta (no nosso exemplo era a pasta Capitulo8) e a todo o seu conteúdo, porém com permissão somente para leitura.

Agora o usuário já poderá acessar a página que não será mais retornada a mensagem de acesso negado.

Com este exemplo, podemos constatar que o servidor IIS trabalha em sintonia com o Windows 2000, de tal forma que os recursos de segurança do Sistema Operacional podem ser utilizados pelo IIS.

Nos detalhamos um pouco mais o primeiro tipo de acesso – Acesso anônimo, para explicar alguns conceitos importantes em detalhes. Agora passaremos a estudar outros tipo de autenticação possíveis com o IIS. Lembrando que a autenticação com o IIS é apenas um dos tantos níveis de segurança que podemos configurar.

Autenticação básica.

A autenticação básica é uma das mais antigas formas de autenticação que existem, desenvolvidas desde a época dos primeiros servidores Web como o NCSA e o Cern HTTP. Neste tipo de autenticação, o usuário precisa fornecer um Username e uma senha. O método de autenticação básica é um padrão de mercado amplamente usado para coletar informações de nome de usuário e senha. A autenticação básica funciona da seguinte forma:

1.         O navegador exibe uma caixa de diálogo na qual o usuário pode digitar seu Username e senha de conta do Windows 2000, previamente cadastrada. Por isso, é um pré-requisito da autenticação básica, que o usuário já possua uma conta cadastrada no Windows 2000.
2.         O navegador tenta estabelecer uma conexão usando essas informações.
3.         Se o servidor rejeitar as informações, o navegador da Web exibe repetidamente a caixa de diálogo até que o usuário digite um nome de usuário e uma senha válidos ou feche a caixa de diálogo.
4.         Quando o servidor Web verifica que o nome de usuário e a senha correspondem a uma conta de usuário do Windows 2000 válida, a conexão é estabelecida e o acesso a página solicitada é liberado.

A autenticação básica apresenta como principal requisito, o fato de que o usuário deve ter uma conta no Windows 2000. Para sites que são acessado por um grande número de usuários pode não ser uma boa opção. Além disso o fato do usuário ter que digitar um username e senha não é muito “simpático”.

Uma das grandes desvantagens deste método de autenticação é o fato de que a senha não é criptografada ao ser transmitida pela rede. A codificação que é feita é extremamente simples de ser quebrada, por isso este método de autenticação não é dos mais seguros.

A vantagem da autenticação básica é que ela faz parte da especificação do HTTP e tem suporte da maioria dos navegadores. A desvantagem é que pelo fato dos navegadores que usam a autenticação básica transmitirem senhas de forma descriptografada, ao monitorar as comunicações na sua rede, alguém pode interceptar e decifrar facilmente essas senhas usando ferramentas disponíveis publicamente na Internet. Portanto, a autenticação básica não é recomendada a menos que você tenha certeza que a conexão entre o usuário e seu servidor Web é segura, como uma conexão direta via cabo ou uma linha dedicada.

IMPORTANTE! A autenticação integrada do Windows (que veremos logo em seguida) tem prioridade sobre a autenticação básica. O navegador escolherá a autenticação integrada do Windows e tentará usar as informações de logon atuais do Windows antes de solicitar ao usuário um nome de usuário e uma senha. Atualmente, somente o Internet Explorer, versão 2.0 e posterior, oferece suporte à autenticação integrada do Windows.

Autenticação Integrada do Windows.

A autenticação integrada do Windows (chamada anteriormente NTLM ou autenticação de desafio/resposta do Windows NT) é uma forma segura de autenticação pois o nome de usuário e a senha não são enviados pela rede criptografados. Quando você ativa a autenticação integrada do Windows, o navegador do usuário verifica a validade da senha através de uma troca criptográfica com o servidor Web.

A autenticação integrada do Windows pode usar o protocolo de autenticação Kerberos versão 5 e o seu próprio protocolo de autenticação desafio/resposta. Se o Serviços de diretório – Active Directory, estiver instalado no servidor e o navegador for compatível com o protocolo de autenticação Kerberos versão 5, o protocolo Kerberos versão 5 e o protocolo desafio/resposta serão usados; caso contrário, somente o protocolo desafio/resposta será usado.

O protocolo de autenticação Kerberos versão 5 é um recurso da arquitetura do Windows 2000 Distributed Services. Para que a autenticação do Kerberos versão 5 seja bem-sucedida, o cliente e o servidor devem ter uma conexão confiável com um Key Distribution Center (KDC) e devem ser compatíveis com os Serviços do Active Directory. A situação ideal é onde o cliente utiliza o Windows 2000 Professional.

A autenticação integrada do Windows funciona da seguinte forma:

1.         Diferentemente da autenticação básica, ela não solicita inicialmente um nome de usuário e uma senha. As informações atuais de usuário logado e sobre o computador cliente são usadas para a autenticação integrada do Windows.

O Internet Explorer, versão 4.0 e posterior, pode ser configurado para solicitar inicialmente informações do usuário, se necessário. Para obter mais informações, consulte a documentação do Internet Explorer.

2.         No entanto, se a troca da autenticação não consegue identificar o usuário , o navegador solicita ao usuário um nome de usuário e uma senha de conta de usuário do Windows, que ele processa usando a autenticação integrada do Windows.
3.         O Internet Explorer continuará a solicitar o usuário até que ele digite um nome de usuário e uma senha válidos ou feche a caixa de diálogo de solicitação.

Embora a autenticação integrada do Windows seja segura, ela tem duas limitações.

1.         Somente o Microsoft Internet Explorer, versão 2.0 ou posterior, oferece suporte a esse método de autenticação.
2.         A autenticação integrada do Windows não funciona em conexões feitas através de um Servidor Proxy.

Portanto, a autenticação integrada do Windows é mais adequada para um ambiente de Intranet, no qual o usuário e o servidor Web estão no mesmo domínio e os administradores podem garantir que todos os usuários tenham o Microsoft Internet Explorer, versão 2.0 ou posterior.

Autenticação utilizando certificados.

Este é um dos métodos de autenticação que mais vem crescendo em termos de utilização. Inicialmente os Certificados digitais foram projetados como um instrumento de autenticação segura para a Internet, porém o seu uso apresentou tantas vantagens que hoje é bastante comum a utilização de Certificados digitais em Intranets e Extranets.

A tecnologia de certificados usa os recursos de segurança de Secure Sockets Layer (SSL, camada de soquetes de segurança) do  servidor Web para dois tipos de autenticação.

É possível usar um certificado de servidor para permitir que os usuários façam a autenticação do seu site da Web antes de transmitir informações pessoais, como um número de cartão de crédito. Além disso, você pode usar certificados de cliente para autenticar os usuários que solicitam informações no seu site da Web. O SSL faz a autenticação verificando o conteúdo de uma identificação digital (0 Certificado digital) criptografada submetida pelo navegador do usuário durante o processo de logon. (Os usuários obtêm certificados de cliente de uma organização independente mutuamente confiável – Autoridade Certificadora.) Os certificados de servidor contêm geralmente informações sobre sua empresa e a organização que emitiu o certificado. Os certificados de cliente contêm normalmente informações de identificação sobre o usuário e a organização que emitiu o certificado.

Mapeamento do certificado cliente

Você pode associar, ou mapear, certificados de cliente a contas de usuário do Windows no IIS. Depois que você cria e ativa um mapa de certificado, sempre que um usuário faz logon com um certificado de cliente, seu servidor Web associa automaticamente esse usuário à conta de usuário do Windows apropriada. Dessa forma, você pode autenticar automaticamente os usuários que fazem logon com certificados de cliente, sem exigir o uso da autenticação básica ou integrada do Windows. É possível mapear um certificado de cliente para uma conta de usuário do Windows ou muitos certificados de cliente para uma conta. Por exemplo, se você tivesse vários departamentos ou empresas diferentes no seu servidor, cada uma com seu próprio site da Web, seria possível usar o mapeamento vários-para-um para mapear todos os certificados de cliente de cada departamento ou empresa para o próprio site da Web. Dessa forma, cada site forneceria acesso somente aos próprios clientes.

O tipo de autenticação é apenas um dos aspectos que precisam ser definidos. Devem ser consideradas diversas questões. A seguir segue uma lista de questões que devem ser levadas em considerações na hora de decidir sobre o tipo de autenticação que iremos configurar no IIS, ou se devemos configurar mais do que um tipo de autenticação.
• Para um site público, ou áreas de acesso público a autenticação utilizando Acesso anônimo é a mais indicada, pois evita que o usuário tenha que fornecer um username e senha.
• Para acesso ao conteúdo de uma Intranet uma das primeiras opções a serem pensadas é a utilização da autenticação integrada do Windows. Pois sendo uma Intranet um ambiente controlado, é possível garantir que todos os clientes satisfaçam as condições exigidas pela autenticação Integrada.
• Para sites que trabalham com dados sensíveis como serviços bancários pela Internet e Comercio eletrônico, sem dúvida que a utilização de Certificados Digitais é o mais indicado. Em Intranets também tem sido utilizados Certificados Digitais, pois conforme descrevemos no início do capítulo, a maioria dos ataques parte de usuários da própria Intranet da empresa. Muitas vezes nos preocupamos muito com os ataques externos e esquecemos as ameaças que vem de dentro da empresa.

« Lição anterior Δ Página principal ¤ Capítulos Próxima lição »
Quer receber novidades e e-books gratuitos?

 
 

Contato: Telefone: (51) 3717-3796 | E-mail: webmaster@juliobattisti.com.br | Whatsapp: (51) 99627-3434

Júlio Battisti Livros e Cursos Ltda | CNPJ: 08.916.484/0001-25 | Rua Vereador Ivo Cláudio Weigel, 537 - Universitário, Santa Cruz do Sul/RS, CEP: 96816-208

Todos os direitos reservados, Júlio Battisti 2001-2024 ®

LIVRO: MACROS E PROGRAMAÇÃO VBA NO EXCEL 2016 - CURSO COMPLETO E PRÁTICO

DOMINE A PROGRAMAÇÃO VBA NO EXCEL - 878 PÁGINAS - CLIQUE AQUI