Compartilhar via


Padrões do diretório virtual para todos os sites <virtualDirectoryDefaults>

Visão geral

O elemento <virtualDirectoryDefaults> do elemento <sites> especifica as configurações padrão para todos os diretórios virtuais no servidor. O elemento <virtualDirectoryDefaults> é útil para definir os atributos comuns que você deseja que todos os diretórios virtuais no seu servidor para compartilhar implicitamente quando não tiverem atributos definidos explicitamente.

Observação

Se o mesmo atributo ou elemento filho estiver configurado nas seções <virtualDirectoryDefaults> e <virtualDirectory> de um diretório virtual específico, a configuração na seção <virtualDirectory> será usada para esse diretório virtual.

Compatibilidade

Versão Observações
IIS 10.0 O elemento <virtualDirectoryDefaults> não foi modificado no IIS 10.0.
IIS 8.5 O elemento <virtualDirectoryDefaults> não foi modificado no IIS 8.5.
IIS 8.0 O elemento <virtualDirectoryDefaults> não foi modificado no IIS 8.0.
IIS 7.5 O elemento <virtualDirectoryDefaults> não foi modificado no IIS 7.5.
IIS 7.0 O elemento <virtualDirectoryDefaults> do elemento <sites> foi introduzido no IIS 7.0.
IIS 6,0 N/D

Instalação

O elemento <virtualDirectoryDefaults> do elemento <sites> está incluído na instalação padrão do IIS 7.

Instruções

Como configurar as credenciais de diretório virtual padrão para o servidor

  1. Abra o Gerenciador dos Serviços de Informações da Internet (IIS):

    • Caso você esteja usando o Windows Server 2012 ou o Windows Server 2012 R2:

      • Na barra de tarefas, clique em Gerenciador do Servidor, em Ferramentas e em Gerenciador dos Serviços de Informações da Internet (IIS).
    • Se você estiver usando o Windows 8 ou Windows 8.1:

      • Mantenha pressionada a tecla Windows, pressione a letra X e clique em Painel de Controle.
      • Clique em Ferramentas Administrativas e clique duas vezes em Gerenciador dos Serviços de Informações da Internet (IIS).
    • Caso você esteja usando o Windows Server 2008 ou o Windows Server 2008 R2:

      • Na barra de tarefas, clique em Iniciar, vá para Ferramentas Administrativas e clique em Gerenciador dos Serviços de Informações da Internet (IIS).
    • Se você estiver usando o Windows Vista ou Windows 7:

      • Na barra de tarefas, clique em Iniciar e, depois, em Painel de Controle.
      • Clique duas vezes em Ferramentas Administrativas e clique duas vezes em Gerenciador dos Serviços de Informações da Internet (IIS).
  2. No painel Conexões, expanda o nome do servidor e clique no nó Sites.

  3. No painel Sites do servidor, clique em Definir Padrões do Site... no painel Ações.
    Screenshot that shows the Internet Information Services Manager pane. Connections is highlighted to Sites.

  4. Na caixa de diálogo Padrões do Site, especifique as credenciais do diretório virtual padrão para todos os sites e clique em OK.
    Screenshot that shows the Web Site Defaults. Application Pool is highlighted.

Configuração

Atributos

Atributo Descrição
allowSubDirConfig Atributo booliano opcional.

Especifica se o IIS procura arquivos Web.config em diretórios de conteúdo inferiores na hierarquia de diretório em relação ao nível atual (true) ou não procura arquivos Web.config em diretórios de conteúdo inferiores ao nível atual (false).

O valor padrão é true.
logonMethod Atributo de enumeração opcional.

Especifica o método de logon padrão para todos os diretórios virtuais no servidor.

O atributo logonMethod pode ter um dos valores possíveis a seguir. O padrão é ClearText.
Valor Descrição
Batch Esse tipo de logon destina-se a servidores em lote, onde os processos podem ser executados em nome de um usuário sem a intervenção direta deste usuário.

O valor numérico é 1.
ClearText Esse tipo de logon preserva o nome e a senha no pacote de autenticação. Isso permite que o servidor faça conexões com outros servidores de rede ao representar o cliente.

O valor numérico é 3.
Interactive Esse tipo de logon destina-se a usuários que usarão interativamente o computador.

O valor numérico é 0.
Network Esse tipo de logon é indicado para servidores de alto desempenho na autenticação de senhas em texto não criptografado. As credenciais não são armazenadas em cache para esse tipo de logon.

O valor numérico é 2.
Para obter mais informações sobre esses valores, consulte LogonUser.
password Atributo de cadeia de caracteres opcional.

Especifica a senha associada ao nome de usuário.

Observação: para evitar o armazenamento de cadeias de caracteres de senha não criptografadas em arquivos de configuração, use sempre AppCmd.exe ou o gerenciador do IIS para inserir senhas. Se você usar essas ferramentas de gerenciamento, as cadeias de caracteres de senha serão criptografadas automaticamente antes de serem gravadas nos arquivos de configuração XML. Isso fornece melhor segurança de senha do que armazenar senhas não criptografadas.
path Atributo de cadeia de caracteres opcional.

Especifica o caminho virtual padrão de todos os diretórios virtuais no servidor.
physicalPath Atributo de cadeia de caracteres opcional.

Especifica o caminho físico padrão de todos os diretórios virtuais no servidor.
userName Atributo de cadeia de caracteres opcional.

Especifica o nome de usuário padrão de uma conta que pode acessar arquivos de configuração e conteúdo para todos os diretórios virtuais no servidor.

Elementos filho

Nenhum.

Exemplo de configuração

O exemplo de configuração a seguir especifica o método de logon padrão para todos os diretórios virtuais no servidor.

<sites>
   <virtualDirectoryDefaults logonMethod="Network" />
</sites>

Exemplo de código

Os exemplos de código a seguir especificam o método de logon padrão para todos os diretórios virtuais no servidor.

AppCmd.exe

appcmd.exe set config -section:system.applicationHost/sites /virtualDirectoryDefaults.logonMethod:"Network" /commit:apphost

Observação

Defina o parâmetro commit para apphost quando usar AppCmd.exe para definir essas configurações. Isso confirma as definições de configuração para a seção de local apropriado no arquivo ApplicationHost.config.

C#

using System;
using System.Text;
using Microsoft.Web.Administration;

internal static class Sample
{
   private static void Main()
   {
      using (ServerManager serverManager = new ServerManager())
      {
         Configuration config = serverManager.GetApplicationHostConfiguration();
         ConfigurationSection sitesSection = config.GetSection("system.applicationHost/sites");

         ConfigurationElement virtualDirectoryDefaultsElement = sitesSection.GetChildElement("virtualDirectoryDefaults");
         virtualDirectoryDefaultsElement["logonMethod"] = @"Network";

         serverManager.CommitChanges();
      }
   }
}

VB.NET

Imports System
Imports System.Text
Imports Microsoft.Web.Administration

Module Sample

   Sub Main()
      Dim serverManager As ServerManager = New ServerManager
      Dim config As Configuration = serverManager.GetApplicationHostConfiguration
      Dim sitesSection As ConfigurationSection = config.GetSection("system.applicationHost/sites")

      Dim virtualDirectoryDefaultsElement As ConfigurationElement = sitesSection.GetChildElement("virtualDirectoryDefaults")
      virtualDirectoryDefaultsElement("logonMethod") = "Network"

      serverManager.CommitChanges()
   End Sub

End Module

JavaScript

var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";

var sitesSection = adminManager.GetAdminSection("system.applicationHost/sites", "MACHINE/WEBROOT/APPHOST");
var virtualDirectoryDefaultsElement = sitesSection.ChildElements.Item("virtualDirectoryDefaults");
virtualDirectoryDefaultsElement.Properties.Item("logonMethod").Value = "Network";

adminManager.CommitChanges();

VBScript

Set adminManager = WScript.CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"

Set sitesSection = adminManager.GetAdminSection("system.applicationHost/sites", "MACHINE/WEBROOT/APPHOST")
Set virtualDirectoryDefaultsElement = sitesSection.ChildElements.Item("virtualDirectoryDefaults")
virtualDirectoryDefaultsElement.Properties.Item("logonMethod").Value = "Network"

adminManager.CommitChanges()