Como acessar arquivos de rede a partir de aplicativos do IIS

Traduções deste artigo Traduções deste artigo
ID do artigo: 207671 - Exibir os produtos aos quais esse artigo se aplica.
Expandir tudo | Recolher tudo

Neste artigo

Sumário

Este artigo fornece informações sobre problemas ao acessar arquivos em um computador diferente do servidor IIS (Internet Information Server) a partir de uma extensão ISAPI (Internet Server API), a página ASP (Active Server Pages) ou aplicativo de interface comum de gateway (CGI). Este artigo lista alguns dos problemas que estão envolvidos e alguns métodos possíveis para fazer esse trabalho.

Embora este artigo foi escrito principalmente no contexto de acessar arquivos em compartilhamentos de rede, os conceitos mesmos se aplicam a conexões de pipe nomeado bem. Pipes nomeados são freqüentemente usados para conexões do SQL Server e também para chamada de procedimento remoto (RPC) e comunicações COM (Component Object Model). Em particular, se você se conectar a um SQL Server através da rede está configurada para usar segurança integrada do Microsoft Windows NT, você não pode se conectar devido os problemas descritos neste artigo. RPC e COM podem também usar outros mecanismos de comunicação que têm esquemas de autenticação de rede semelhantes. Portanto, os conceitos neste artigo podem aplicar a uma ampla variedade de mecanismos de comunicação de rede pode ser usado em seus aplicativos do IIS.


Tipos de autenticação e representação

Quando uma solicitação HTTP de serviços do IIS, o IIS executa representação para que o acesso aos recursos para manipular a solicitação seja limitado adequadamente. O contexto de segurança representado é baseado no tipo de autenticação executada para a solicitação. Os cinco tipos diferentes de autenticação disponíveis do IIS 4.0 são:
Authentication Type                          Impersonation Type
  
Anonymous Access (no authentication)         Network
Auto Password Synchronization is
ON (ON=default)
 
Anonymous Access (no authentication)         IIS Clear Text
Auto Password Synchronization is OFF         

Basic Authentication                         IIS Clear Text 

NT Challenge/Response Authentication         Network 

Client SSL Certificate Mapping               Interactive
				

Tipos de token

Se ou não é permitido acesso aos recursos da rede depende o tipo de token de representação sob a qual a solicitação está sendo processada.
  • Tokens de rede "Não" têm permissão para acessar os recursos da rede. (Símbolos de rede são nomeados isso porque esse tipo de token tradicionalmente é criado por um servidor quando um usuário é autenticado através da rede. Para permitir que o servidor para usar uma rede token para atuar como um cliente de rede e outro servidor de acesso é chamado de "delegação" e é considerado uma brecha de segurança possível.)
  • Os tokens de interativos tradicionalmente são usados ao autenticar um usuário local no computador. Tokens interativos têm permissão para acessar recursos através da rede.
  • Em lotes tokens são projetados para fornecer um contexto de segurança sob as quais trabalhos em lotes executado. Símbolos em lotes tem acesso de rede.
O IIS possui o conceito de um logon de Texto não criptografado . Limpar texto logon é denominado isso por causa do fato de que o IIS tem acesso ao nome de usuário e a senha em texto não criptografado. Você pode controlar se um logon de Texto não criptografado cria um token de rede, um token interativo ou um token de lote, definindo a propriedade LogonMethod na metabase. Por padrão, logons de Texto não criptografado receberão um token interativo e têm acesso aos recursos da rede. LogonMethod pode ser configurado no servidor, o site, o diretório virtual, o diretório ou o nível de arquivo.

Acesso anônimo representa a conta configurada como o usuário anônimo para a solicitação. <machinename>Por padrão, IIS tem uma conta de único usuário anônimo chamada IUSR_ <nome_computador> que está representado ao manipular uma solicitação não autenticados. Por padrão IIS 4.0 tem um recurso configurável chamado "Permitir senha sincronização automática" que usa uma subautoridade de segurança para criar o token. Tokens que são criadas dessa maneira são tokens de rede que "Não" têm acesso a outros computadores na rede. Se você desabilitar a sincronização automática de senha, o IIS cria o token da mesma maneira como ologon de Texto não criptografado mencionado anteriormente. Sincronização automática de senha só está disponível para contas que estão localizadas no mesmo computador como o IIS. Portanto, se você alterar a conta anônima para uma conta de domínio, você não pode usar sincronização automática de senha e você recebe um logon de Texto não criptografado . A exceção é se você instalar o IIS em seu controlador de domínio primário. Nesse caso, as contas de domínio estão no computador local. A conta anônima e a opção sincronização automática de senha podem ser configurados no servidor, o site, o diretório virtual, o diretório ou o nível de arquivo.

Você deve ter o tipo correto de token de como a primeira etapa na acessar um recurso na rede. Você também deve representar uma conta que tenha acesso ao recurso através da rede. <machinename>Por padrão, a conta IUSR_ <nome_computador> conta que o IIS cria para solicitações anônimas existe somente no computador local. <machinename>Mesmo se você desabilitar sincronização automática de senha para que você possa obter um interativo token que pode acessar recursos de rede, a conta IUSR_ <nome_computador> conta normalmente não tem acesso a maioria dos recursos de rede porque este é uma conta que não é reconhecida em outros computadores. Se você desejar acessar recursos de rede com solicitações anônimas, você deve substituir a conta padrão com uma conta em um domínio na rede que possa ser reconhecido por todos os computadores. <machinename>Se você instalar o IIS em um controlador de domínio, a conta IUSR_ <nome_computador> conta é uma conta de domínio e devem ser reconhecida por outros computadores na rede sem ações adicionais.


Prevenção de problema

A seguir é maneiras de evitar problemas ao acessar recursos de rede do seu aplicativo de IIS:
  • Manter os arquivos no computador local.
  • Alguns métodos de comunicação de rede não requerem uma verificação de segurança. Um exemplo é usar Windows sockets.
  • Você pode fornecer acesso direto aos recursos da rede do computador, configurando um diretório virtual para ser:
    "Um compartilhamento localizado em outro computador."
    Todos os acesso ao computador que compartilha recursos de rede é executado no contexto da pessoa especificada na caixa de diálogo Conectar como. . Isso ocorre não importa que tipo de autenticação é configurado para o diretório virtual. Usando essa opção, todos os arquivos no compartilhamento de rede estão disponíveis de navegadores que acessem o computador IIS.
  • Use autenticação básica ou autenticação anônima sem sincronização automática de senha.

    Por padrão, a representação que o Internet Information Server para autenticação básica fornece um token que pode acessar recursos de rede (ao contrário do Windows NT desafio/resposta, que fornece um token que não é possível acessar os recursos da rede). Para a autenticação anônima, o token só pode acessar um recurso de rede se a sincronização automática de senha estiver desabilitada. Por padrão, a sincronização automática de senha é ativada quando o IIS é instalado pela primeira vez. Em tal uma configuração padrão, o token de usuário anônimo não pode acessar recursos de rede.
    259353Digite senha manualmente depois alternar sincronização de senha
  • Configure a conta anônima como uma conta de domínio.

    Isso permite que solicitações anônimas do potencial de acesso a recursos através da rede. Para impedir que todas as solicitações anônimas ter acesso de rede, você deve fazer apenas a conta anônima uma conta de domínio nos diretórios virtuais que requerem especificamente acesso.
  • Configurar a conta anônima com o mesmo nome de usuário e senha no computador que está compartilhando recursos de rede e, em seguida, desativar a sincronização automática de senha.

    Se você fizer isso você deve certificar-se que as senhas coincidem exatamente. Essa abordagem só deve ser usada quando anteriormente o "Configurar a conta anônima como uma conta de domínio" mencionado não é uma opção por algum motivo.
  • NullSessionPipes e NullSessionShares pode ser usado para permitir o acesso para um compartilhamento de rede específica ou para um pipe nomeado quando a solicitação é tratada com um token de rede.

    Se você tiver um token de rede e tentar estabelecer uma conexão a um recurso de rede, o sistema operacional tenta estabelecer uma conexão como uma conexão não-autenticados (chamada de "Sessão NULL"). Essa configuração do registro deve ser feita no computador que está compartilhando o recurso de rede, não no computador IIS. Se você tentar acessar um NullSessionShare ou NullSessionPipe com um token não-rede, autenticação típica do Microsoft Windows é usada e o acesso ao recurso se baseia em direitos de conta do usuário representado.
  • Você pode executar potencialmente sua representação para criar um token de thread que tem acesso à rede.

    A função LogonUser e a função ImpersonateLoggedOnUser podem ser usados para representar uma conta diferente. Isso requer que você tenha o nome de usuário texto não criptografado e a senha de outra conta disponível para o seu código. LogonUser também requer que a conta que chama o LogonUser tem o privilégio "Funcionar como parte do sistema operacional" no Gerenciador de usuários. Por padrão, a maioria dos usuários IIS personifica enquanto ele lida com uma solicitação HTTP não tem esse direito de usuário. No entanto, para "Em aplicativos do processo" existem várias maneiras para fazer com que seu contexto de segurança atual alterar para a conta LocalSystem, que tem as credenciais administrativas "Funcionar como parte do sistema operacional". Para DLLs ISAPI que são executados no processo, a melhor maneira de alterar o contexto de segurança que criou o IIS para a conta LocalSystem é chamar a função RevertToSelf . <machinename>Se você estiver executando seu aplicativo de IIS "fora de processo", esse mecanismo não irá funcionar por padrão porque o processo está sendo executado em IWAM_ <nome_computador> conta e não a conta sistema local. <machinename>Por padrão, o IWAM_ <nome_computador> "Não" têm as credenciais administrativas "Funcionar como parte do sistema operacional".
  • Adicione o componente que é chamado da página ASP para um pacote de servidor do Microsoft Transaction Server (MTS) ou aplicativo de servidor do COM + e especificar um usuário específico como a identidade do pacote.

    Observação O componente é executado em um arquivo .exe separado que está fora do IIS.
  • Com autenticação de texto básico/não criptografado, recomendamos que você criptografa os dados usando o SSL porque ele é extremamente fácil de obter credenciais de um rastreamento de rede. Para obter mais informações sobre como instalar o SSL, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
    228991Como criar e instalar um certificado SSL no Internet Information Server 4.0
Observação Não se esqueça que você pode impedir acesso à rede para solicitações anônimas onde a sincronização de senha está desativada e as solicitações são autenticadas usando a autenticação básica ( Texto não criptografado logons) se você definir a propriedade de metabase LogonMethod para "2" (indicando que um logon de rede é usado para criar o símbolo de representação). Com essa configuração, a única maneira para solicitações evitar a limitação de token de rede é conectar-se a NullSessionShares ou NullSessionPipes.

Não use letras de unidade mapeadas para compartilhamentos de rede. Não apenas existem somente 26 letras possíveis de driver para selecionar a partir de, mas se você tentar usar uma letra de unidade que está mapeada em um contexto de segurança diferentes, poderão ocorrer problemas. Em vez disso, você sempre deve usar nomes de convenção universal de nomenclatura (UNC) para acessar recursos. O formato deve ser semelhante ao seguinte:
\\MyServer\filesharename\directoryname\filename
Para obter mais informações sobre como usar UNC, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
280383Recomendações de segurança do IIS quando você usa um compartilhamento UNC
As informações contidas neste artigo pertencem somente ao Internet Information Server 4.0. No Internet Information Server 5.0 (que está incluído no Windows 2000), existem alterações significativas novos tipos de autenticação e recursos. Embora a maioria dos conceitos neste artigo ainda se aplique ao IIS 5.0, os detalhes sobre os tipos de tokens de representação que são geradas com determinados esquemas de autenticação neste artigo se aplicam estritamente para IIS 4.0.

319067Como executar aplicativos não no contexto da conta do sistema
Se você não pode determinar que tipo de logon está ocorrendo no servidor IIS para manipular as solicitações, você pode ativar a auditoria de Logons e Logoffs. Execute as seguintes etapas:
  1. Clique em Iniciar , clique em configurações , clique em Painel de controle , clique em Ferramentas administrativas e clique em Diretiva de segurança local .
  2. Depois de abrir diretiva de segurança local, no painel de exibição de árvore à esquerda, clique em Configurações de segurança , clique em Diretivas locais e, em seguida, clique em Diretiva de auditoria .
  3. Clique duas vezes em Eventos de logon de auditoria e clique em êxito e falha . Entradas de log de eventos são adicionadas sob o log de segurança. Você pode determinar o tipo de logon, examinando os detalhes do evento sob o tipo de logon:
2 = Interativo
3 = Rede
4 = Em lotes
5 = Service

Referências

Para obter mais informações sobre segurança de rede, clique nos números abaixo para ler os artigos na Base de dados de Conhecimento da Microsoft:
124184Serviço executado como conta do sistema falha ao acessar rede
180362Serviços e unidades redirecionadas
319067Como executar aplicativos não no contexto da conta do sistema
280383Recomendações de segurança do IIS quando você usa um compartilhamento UNC
259353Digite senha manualmente depois alternar sincronização de senha

Propriedades

ID do artigo: 207671 - Última revisão: quinta-feira, 3 de julho de 2008 - Revisão: 6.2
A informação contida neste artigo aplica-se a:
  • Microsoft Internet Information Server 3.0
  • Microsoft Internet Information Server 4.0
  • Microsoft Internet Server Application Programming Interface 4.0
  • Microsoft Internet Information Services 5.0
Palavras-chave: 
kbmt kbhowtomaster kbhttp KB207671 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 207671

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com