Partilhar via


processModel elemento (esquema configurações ASP.NET)

Define as configurações de modelo de processo do ASP.NET em um servidor Web do Serviços de Informações da Internet da Microsoft (IIS). The processModel seção pode ser conjunto somente dentro do computador.config de arquivo e afeta todos os aplicativos ASP.NET em execução no servidor.

Aviso

Altera para o processModel elemento efetuada somente quando o processo do operador é reiniciado — não imediatamente após a configuração for alterada, sistema autônomo ocorre com outros elementos de configuração. Para obter mais informações, consulte "Comentários", posteriormente neste tópico.

configuração elemento (Geral Settings esquema)
  System.Web elemento (esquema configurações ASP.NET) 
    processModel elemento (esquema configurações ASP.NET)

<processModel 
   enable="true|false"
   timeout="hrs:mins:secs|Infinite" 
   idleTimeout="hrs:mins:secs|Infinite"
   shutdownTimeout="hrs:mins:secs|Infinite"
   requestLimit="num|Infinite"
   requestQueueLimit="num|Infinite"
   restartQueueLimit="num|Infinite"
   memoryLimit="percent"
   webGarden="true|false"
   cpuMask="num"
   userName="<username>"
   password="<secure password>"
   logLevel="All|None|Errors"
   clientConnectedCheck="hrs:mins:secs|Infinite"
   comAuthenticationLevel="Default|None|Connect|Call| 
               Pkt|PktIntegrity|PktPrivacy"
   comImpersonationLevel="Default|Anonymous|Identify|
               Impersonate|Delegate"
   responseDeadlockInterval="hrs:mins:secs|Infinite"
   responseRestartDeadlockInterval="hrs:mins:secs|Infinite"
   autoConfig="true|false"
   maxWorkerThreads="num"
   maxIoThreads="num"
   minWorkerThreads="num"
   minIoThreads="num"
   serverErrorMessageFile="" 
   pingFrequency="Infinite" 
   pingTimeout="Infinite" 
   maxAppDomains="2000"
/>

Atributos e elementos

As seções a seguir descrevem atributos, elementos filho, e elementos pai.

Atributos

Atributo

Descrição

autoConfig

Especifica se devem ser configurados automaticamente as configurações a seguir para obter desempenho ideal com base na configuração da computador:

Os valores são definidos de acordo com o artigo do KB em http://suporte.Microsoft.com/?ID=821268.

Esse atributo não afeta o .NET estrutura aplicativos clientes; somente os aplicativos ASP.NET.

The autoConfig atributo pode ser um dos seguintes valores.

Termo Definição
True Indica que o ASP.NET configura automaticamente os atributos da lista anterior para obter desempenho ideal com base na configuração da computador.
False Indica que o ASP.NET deve usar os valores explicitamente definidos para os atributos da lista anterior.

O padrão no arquivo computador.config é True, a menos que haja uma configuração existente anteriormente.

clientConnectedCheck

Especifica quanto tempo uma solicitação é deixada na fila de antes ASP.NET faz uma verificação para determinar se o cliente está conectado.

O padrão é "00:00:05" (5 segundos).

comAuthenticationLevel

Especifica o nível de autenticação para segurança do DCOM.

The comAuthenticationLevelatributo pode ser um dos seguintes valores.

Valor Descrição
Call Especifica que o DCOM autentica as credenciais do cliente quando o servidor recebe a solicitação no início de cada telefonar de procedimento remoto.
Connect Especifica que o DCOM autentica as credenciais do cliente apenas quando o cliente estabelece uma conexão com o servidor.
Default Especifica que o DCOM determina o nível de autenticação usando seu algoritmo de negociação de segurança padrão.
None Não especifica nenhuma autenticação.
Pkt Especifica que o DCOM autentica que todos os dados recebidos são provenientes do cliente esperado.Transportes de datagramas sempre usam Pkt autenticação.
PktIntegrity Especifica que o DCOM autentica e verifica se nenhum dos dados transferidos entre o cliente e o servidor é modificado.
PktPrivacy Especifica que o DCOM autentica todos os níveis anteriores e criptografa o valor do argumento de cada telefonar de procedimento remoto.

O padrão é Connect.

comImpersonationLevel

Especifica o nível de autenticação de segurança COM.

The comImpersonationLevel atributo pode ser um dos seguintes valores.

Valor Descrição
Anonymous Especifica que o cliente é anônimo para o servidor.O servidor poderá personificar o cliente, mas o token de representação não conterá qualquer informação.Anonymous não é suportado no .NET estrutura versão 1.1.
Default Especifica que o DCOM determina o nível de representação usando seu algoritmo de negociação de segurança padrão.
Delegate Especifica que o processo do servidor pode representar o contexto de segurança para o cliente enquanto estiver agindo em nome do cliente.O processo servidor também pode fazer chamadas para outros servidores enquanto age em nome do cliente, usando o encobrimento.O servidor pode usar o contexto de segurança para o cliente em outros computadores para obter acesso a recursos locais e remoto, sistema autônomo o cliente.Esse nível de representação, o token de representação pode ultrapassar qualquer número de limites de computador.
Identify Especifica que o servidor pode obter a identidade do cliente.O servidor pode representar o cliente para verificação de ACL (lista) do controle de acesso, mas não pode acessar objetos do sistema do cliente.
Impersonate Especifica que o processo do servidor pode representar o contexto de segurança para o cliente enquanto estiver agindo em nome do cliente.Esse nível de representação pode ser usado para acessar recursos locais, sistema autônomo arquivos.Esse nível de representação, o token de representação pode ultrapassar limite de apenas um computador.

O padrão é Impersonate.

cpuMask

Especifica quais processadores (CPUs) em um servidor com vários processadores estão qualificados para executar processos ASP.NET. Esse valor Especifica um padrão de bit que indica as CPUs são qualificadas para executar segmentos ASP.NET. Por exemplo, a cpuMask valor hexadecimal 0x0d representa o padrão de bit 1101. Em um computador com quatro CPUs, isso indica que os processos ASP.NET podem ser programados nas CPUs 0, 2 e 3, mas não na CPU 1. ASP.NET inicia um processo do operador para cada CPU qualificado. Se o webGarden o atributo é true, esse atributo limita os processos do operador para o número de CPUs qualificados. O máximo de processos do operador é igual ao número de CPUs. If webGarden é false, esse atributo é ignorado e somente um processo do operador será executado. Esse é o comportamento padrão.

O padrão é "0xffffffff".

enable

Especifica se o modelo de processo está ativado.

The enable atributo pode ser um dos seguintes valores.

Valor Descrição
True Indica que o modelo de processo está ativado.
False Indica que o modelo de processo não está ativado.

O padrão é true.

idleTimeout

Especifica o período de inatividade, na seqüência de caracteres de formato hr:min:s, após a qual ASP.NET finaliza automaticamente o processo de trabalho.

O padrão é Infinite.

logLevel

Especifica os tipos de evento a serem registrados no log de eventos.

The logLevel atributo pode ser um dos seguintes valores.

Valor Descrição
All Especifica que todos os eventos de processo são registrados.
Errors Especifica que somente desligamentos inesperados, desligamentos do limite de memória e desligamentos de deadlock são registrados.
None Especifica que nenhum evento é registrado.

O padrão é Errors.

maxAppDomains

Especifica o número máximo de domínios de aplicativo são permitidas em um processo.

Esse atributo pode ser menor ou igual a 2000.

O padrão é 2000.

maxIoThreads

Configura o número máximo de segmentos de E/s a ser usado para o processo em uma base por CPU. Por exemplo, se esse valor é 25 em um servidor de processador único, o ASP.NET usa as APIs do tempo de execução para conjunto o limite de processo como 25. Em um servidor com dois processadores, o limite é definido para 50. O valor desse atributo deve ser igual ou maior que o minFreeThread configuração do atributo de httpRuntime seção de configuração.

Para obter informações sobre os tipos de threads, consulte "Threading explicação" emMelhorando o desempenho do ASP.NET.

O intervalo para este atributo é de 5 por meio de 100.

O padrão é 20.

maxWorkerThreads

Configura a quantidade máxima de segmentos de trabalho a ser usado para o processo em uma base por CPU. Por exemplo, se esse valor é 25 em um servidor de processador único, o ASP.NET usa as APIs do tempo de execução para conjunto o limite de processo como 25. Em um servidor com dois processadores, o limite é definido para 50. O valor desse atributo deve ser igual ou maior que o minFreeThread configuração do atributo de httpRuntime seção de configuração.

Para obter informações sobre os tipos de threads, consulte "Threading explicação" emMelhorando o desempenho do ASP.NET.

O intervalo para este atributo é de 5 por meio de 100.

O padrão é 20.

memoryLimit

Especifica que o dimensionar máximo permitido memória, sistema autônomo uma porcentagem do total de memória de sistema, que o processo do operador pode consumir antes do ASP.NET inicie um novo processo do processo e reatribui solicitações existentes.

O padrão é 60.

minIoThreads

Configura o número mínimo de segmentos de E/s a ser usado para o processo em uma base por CPU. Consulte também maxIoThreads.

Para obter informações sobre os tipos de threads, consulte "Threading explicação" emMelhorando o desempenho do ASP.NET.

O padrão é 1.

minWorkerThreads

Configura a quantidade máxima de segmentos de trabalho a ser usado para o processo em uma base por CPU. Consulte também maxWorkerThreads.

Para obter informações sobre threading tipos, "Explicação Threading" noMelhorando o desempenho do ASP.NET.

O padrão é 1.

password

Faz com que, se presente (e, em conjunto com um userName), o processo do operador seja executado com a identidade configurada do Microsoft Windows. See userName Para obter mais informações sobre nomes especiais System e Machine, que não exigem uma senha e para obter informações sobre como armazenar credenciais de processo do operador criptografadas no registro.

ObservaçãoObservação:
Há riscos de segurança associados ao armazenamento credenciais em um arquivo de configuração.Para obter mais informações, consulte "Armazenando um nome de usuário e senha no registro", posteriormente neste documento .

O padrão é AutoGenerate.

pingFrequency

Especifica o intervalo de time, no formato do modelo de processo padrão (hr:min:s), no qual a extensão ISAPI efetua ping o processo de trabalho para determinar se ele está sendo executado. Se não estiver executando o pingTimeout intervalo, o processo do operador é reiniciado.

O padrão é Infinite.

pingTimeout

Especifica o intervalo de time, no formato do modelo de processo padrão (hr:min:s), depois que um processo do operador responder que não está respondendo for reiniciado. O processo do operador a efetuar ping extensões ISAPIpingFrequency intervalo. Se o processo do operador não responder dentro de pingTimeout intervalo, o processo for reiniciado.

O padrão é Infinite.

requestLimit

Especifica o número de solicitações permitidas antes de ASP.NET inicie automaticamente um novo processo do operador processo para assumir a função corrente.

O padrão é Infinite.

requestQueueLimit

Especifica o número de solicitações que são permitidas na fila antes ASP.NET começa retornando a mensagem "503 – Servidor muito ocupado" às novas solicitações.

O padrão é 5000.

responseDeadlockInterval

Especifica o intervalo de time, no formato do modelo de processo padrão (hr:min:s), depois que o processo for reiniciado, se as seguintes condições forem atendidas:

  • Há solicitações na fila.

  • Não houve resposta durante este intervalo.

O padrão é "0:03:00" (3 minutos).

responseRestartDeadlockInterval

Esse atributo não é mais usado pelo ASP.NET e é fornecido apenas para compatibilidade. Ele não causará um erro de configuração, se ele já está em um arquivo de configuração. Reciclagem tudo no evento de um deadlock condição agora é controlada pelo responseDeadlockInterval atributo.

O padrão é "0:03:00" (3 minutos).

restartQueueLimit

Especifica o número máximo de solicitações são na na fila enquanto aguarda o processo de trabalho para reiniciar após um encerramento não padrão. Essa configuração não se aplica no caso de um desligado normal ou reinicialização padrão.

O padrão é 10.

serverErrorMessageFile

Especifica o Sumário de um arquivo para usar em vez da mensagem padrão "Servidor não disponível" no caso de um erro fatal. O local do arquivo é relativo ao arquivo computador.config ou pode ser um caminho absoluto. Se este atributo não estiver presente, a mensagem padrão "Servidor não disponível" será usada.

shutdownTimeout

Especifica o número de minutos permitidos para o processo do operador desligar. Quando o time limite expira, o ASP.NET desliga o processo de trabalho. O time é expresso em hr:min:s seqüência de caracteres de formato.

O padrão é "0:00:05" (5 segundos).

timeout

Especifica o número de minutos até que o ASP.NET inicie um novo processo do operador para substituir o corrente.

O padrão é Infinite.

userName

Especifica que o ASP.NET será executado o processo de trabalho com uma identidade do Windows é diferente da identidade do Windows para a identidade de processo padrão. Por padrão, este atributo é definido como a Machine, e o processo é executado sob uma conta de usuário denominada ASPNET é criada automaticamente quando o ASP.NET é instalado. A senha para a conta ASPNET é gerada criptograficamente no momento da instalação. Se houver credenciais válidas nesse atributo e o password atributo, o processo é executado com determinada conta. Um Outros valor de userName é System, com a senha AutoGenerate, que executa o processo sistema autônomo uma conta administrativa e permite que todos sistema autônomo códigos de usuário ASP.NET que está sendo executado sob o processo de ter privilégios administrativos totais. Consulte "Comentários", posteriormente neste tópico para obter informações sobre como usar o ASP.NET em um servidor que é um controlador de domínio.

ObservaçãoObservação:
Este atributo e o password atributo são armazenadas em texto não desmarcar no arquivo de configuração. Embora o Serviços de Informações da Internet da Microsoft (IIS) não transmitem arquivos .config em resposta a uma solicitação do agente do usuário, arquivos de configuração podem ser lidos por outros meios.Por exemplo, um arquivo de configuração pode ser lido por um usuário autenticado com credenciais adequadas no domínio para o servidor.Por motivos de segurança, a processModel seção oferece suporte ao armazenamento de criptografado userName e password atributos no registro. As credenciais devem estar em formato REG_BINARY e criptografado pelas funções de criptografia do Windows 2000 e Windows XP DPAPI (API de Proteção de Dados).Para obter mais informações, consulte "Armazenando um nome de usuário e senha no registro", posteriormente neste documento.

O padrão é "machine".

webGarden

Afinidade de controles da CPU quando usado em conjunto com o cpuMask atributo. (Um servidor Web com vários processadores é denominado ambiente Web).

The webGarden atributo pode ser um dos seguintes valores.

Valor Descrição
True Indica que o cpuMask atributo é usado para especificar quais CPUs estão qualificadas para executar processos ASP.NET.
False Indica que o uso da CPU é agendado pelo sistema operacional Windows.The cpuMask atributo é ignorado e somente um processo do operador é executado.

O padrão é False.

Elementos filho

Nenhum.

Elementos pai

Elemento

Descrição

system.web

Especifica o elemento raiz para a seção de configuração ASP.NET e contém elementos que configuram aplicações Web ASP.NET e controla como os aplicativos se comportam .

Comentários

O sistema de configuração do código gerenciado não lê o processModel definições de configuração. Em vez disso, a processModel as configurações são lidos diretamente, o aspnet_isapi.dll não gerenciados DLL. Alterações a esta seção não são aplicadas até que o processo do operador do IIS seja reiniciado.

Quando o ASP.NET é executado sob o IIS versão 6 no modo nativo, o modelo de processo é usado do IIS 6 e alguns atributos no processModel seção são ignorados. No entanto, os seguintes atributos ainda se aplicam:

  • autoConfig

  • maxIoThreads

  • maxWorkerThreads

  • minIoThreads

  • minWorkerThreads

  • requestQueueLimit

  • responseDeadlockInterval

Para configurar a identidade de processo, circulação ou outros valores de modelo de processo no IIS 6.0, use a interface do usuário do Gerenciador de serviços de Internet para configurar o processo do operador do IIS para seu aplicativo.

ObservaçãoObservação:

O ASP.NET 2.0 não pode ser usado ao configurar o IIS 6 para executar o ASP.NET no modo de isolamento do IIS 5.0.

Valores de time estão no formato "horas: minutos: segundos". Se for fornecido um único número com nenhum dois-pontos, o valor será considerado minutos; assim, timeout="4" é igual a timeout="00:04:00".

Se um aplicativo ASP.NET estiver causando o processo do operador do ASP.NET (aspnet_wp.exe no Windows 2000 e Windows XP Professional) e w3wp.exe no Windows servidor 2003 para reiniciar com uma mensagem de erro indicando que a reinicialização foi devido a um estado de deadlock suspeito, aumente o responseDeadlockInterval atributo.

Controladores de domínio e a conta ASPNET local

Se você instalar o .NET estrutura versão 1.1 em um controlador de domínio, a instalação não cria a conta ASPNET local. Em vez disso, aplicativos ASP.NET são executados em outras identidades, da seguinte maneira:

  • Em controladores de domínio executam o Windows 2000 servidor, os aplicativos ASP.NET são executados sob a identidade IWAM_MACHINENAME.

  • Em controladores de domínio que executam o Windows servidor 2003, os aplicativos ASP.NET são executados sob a identidade do serviço de rede, independentemente do modo de isolamento do IIS.

Em algumas circunstâncias, executar ASP.NET em um controlador de domínio requer que você siga etapas adicionais para que a instalação funcione corretamente. Para obter mais informações sobre como executar o .NET estrutura versão 1.1 em um controlador de domínio, vá para o base de dados de conhecimento (KB) página de Pesquisar e consulte o artigo Q824308, "A conta IWAM não é concedida privilégio representar para o ASP.NET 1.1 no Windows 2000 Domain Controller with SP4." Para obter mais informações sobre como executar o .NET estrutura versão 1.0 em um controlador de domínio, vá para o Página de Pesquisar do base de dados de conhecimento (KB) e consulte o artigo Q315158, "ASP.NET não funciona com a conta ASPNET padrão em um controlador de domínio."

Armazenar um nome de usuário e senha em registro

Para criptografar o nome de usuário e senha e armazená-los no registro, conjunto o userName e password atributos sistema autônomo mostrado no exemplo a seguir.

   userName="registry:HKLM\Software\AspNetProcess,Name"
   password="registry:HKLM\Software\AspNetProcess,Pwd"

Parte da seqüência de caracteres após a palavra-chave registry e antes do () vírgula,) indica o nome da chave do registro aberta pelo ASP.NET. A parte após a vírgula (,) contém um nome de valor única seqüência de caracteres da qual o ASP.NET lê as credenciais. O ponto-e-vírgula (,) é necessária e as credenciais devem ser armazenadas na ramificação HKLM. Se o formato de configuração estiver incorreto, o ASP.NET não iniciará o processo do operador e seguirá o caminho do código falha de criação da conta corrente.

As credenciais devem estar em formato REG_BINARY, que contém a saída de uma telefonar à função de API do Windows CryptProtectData. Você pode usar o Aspnet_setreg.exe para criar as credenciais criptografadas e armazená-los no registro. Usa o Aspnet_setreg.exeCryptProtectData para realizar a criptografia. Para baixar Aspnet_setreg.exe, juntamente com o código fonte do Microsoft Visual C++ e documentação, vá para o Site da Web do ASP.NET e pesquise "aspnet_setreg".

Você deve configurar o acesso à chave que armazena as credenciais criptografadas para que o acesso é fornecido apenas para administradores e sistema. sistema autônomo a chave será lida pelo processo do ASP.NET em execução sistema autônomo sistema, defina sistema autônomo seguintes permissões:

Administrators:F
SYSTEM:F
CREATOR OWNER:F 
ProcessAccount: R

Isso ajuda a proteger os dados das seguintes maneiras:

  • As permissões ACL requerem que a identidade que está acessando os dados é o administrador.

  • Um invasor precisa executar o código no servidor (CryptUnprotectData) para recuperar as credenciais da conta.

Configuração padrão

O seguinte padrão processModel elemento não está configurado explicitamente na computador. arquivo de configuração ou na Web raiz. arquivo de configuração. No entanto, é a configuração padrão que é retornada pelo aplicativo.

<processModel 
   enable="true" 
   timeout="Infinite" 
   idleTimeout="Infinite" 
   shutdownTimeout="00:00:05" 
   requestLimit="Infinite" 
   requestQueueLimit="5000" 
   restartQueueLimit="10" 
   memoryLimit="60" 
   webGarden="false" 
   cpuMask="0xffffffff" 
   userName="machine" 
   password="AutoGenerate" 
   logLevel="Errors" 
   clientConnectedCheck="00:00:05" 
   comAuthenticationLevel="Connect" 
   comImpersonationLevel="Impersonate" 
   responseDeadlockInterval="00:03:00" 
   responseRestartDeadlockInterval="00:03:00" 
   autoConfig="true" 
   maxWorkerThreads="20" 
   maxIoThreads="20" 
   minWorkerThreads="1" 
   minIoThreads="1" 
   serverErrorMessageFile="" 
   pingFrequency="Infinite" 
   pingTimeout="Infinite" 
   asyncOption="20" 
   maxAppDomains="2000" 
/>

O seguinte padrão processModel elemento é configurado no arquivo computador.config no .NET estrutura versões 1.0 e 1.1.

<processModel
   enable="true"
   timeout="Infinite"
   idleTimeout="Infinite"
   shutdownTimeout="0:00:05" 
   requestLimit="Infinite" 
   requestQueueLimit="5000" 
   restartQueueLimit="10"
   memoryLimit="60" 
   webGarden="false"
   cpuMask="0xffffffff"
   userName="machine"
   password="AutoGenerate"
   logLevel="Errors"
   clientConnectedCheck="0:00:05"
   comAuthenticationLevel="Connect"
   comImpersonationLevel="Impersonate"
   responseRestartDeadlockInterval="00:09:00"
   responseDeadlockInterval="00:03:00" 
   <!-- In the .NET Framework version 1.1, the next two attributes are
        set to 20. -->
   maxWorkerThreads="25"
   maxIoThreads="25"
        />

Informações do elemento

Manipulador de seção de configuração

ProcessModelSection

Configuração de membro

ProcessModel

Locais configuráveis

Machine.config

Requisitos

Serviços de Informações da Internet da Microsoft (IIS) versão 5.0, 5.1 ou 6.0

O .NET estrutura versão 1.0, 1.1 ou 2.0

Microsoft Visual Studio 2003 ou o Visual Studio 2005

Consulte também

Tarefas

Como: Configurar diretórios específicos usando configurações de local

Como: Bloquear ASP.NET Configuration Settings

Conceitos

Configurando Identidade de Processo do ASP.NET

Hierarquia e Herança do Arquivo de Configuração do ASP.NET

Protegendo configuração ASP.NET

Cenários de configuração ASP.NET

Referência

System.Web elemento (esquema configurações ASP.NET) 

configuração elemento (Geral Settings esquema)

System.Configuration

System.Web.Configuration

ProcessModel

ProcessModelSection

Outros recursos

Configurações gerais (ASP.NET)

Melhorando o desempenho do ASP.NET

Definições de configuração ASP.NET

Administrando ites da Web do ASP.NET

Arquivos de configuração ASP.NET

API de Configuração do ASP.NET