Configurando a Configuração Compartilhada do IIS 7.5 (com valores criptografados) no Windows Server 2008 R2 Core

4

Pergunta simples: Existe uma maneira no PowerShell ou no appcmd de criar a ConfigEncryptedKey.key normalmente criada por meio da exportação da Configuração Compartilhada no IIS 7.5?

Agora, uma explicação do porquê eu quero fazer isso ...

Estamos tentando usar o recurso Configuração Compartilhada do IIS 7.5 no Windows Server 2008 R2 Core.

O problema é que todos os guias desta tecnologia referem-se a administrar isso através do Gerenciador do IIS. No Core, você só pode fazer isso remotamente (não no próprio servidor).

Este recurso (Configuração Compartilhada) não parece estar disponível ao administrar remotamente.

Apesar disso, tivemos algum sucesso configurando-a manualmente (ou seja, configurando c: \ windows \ System32 \ inetsrv \ config \ redirection.config nós mesmos). O único problema surge quando tentamos executar um pool de aplicativos em uma conta específica (nome de usuário e senha). A existência de uma senha solicita ao IIS para criptografar esse valor no applicationHost.config compartilhado.

Isso está bem no servidor em que você configurou o pool de aplicativos. Mas quando o outro servidor no par compartilhado tenta iniciar o pool de aplicativos, ele não pode descriptografar a senha em applicationHost.

A mensagem de erro no log de eventos é exibida (System / WAS / Event ID 5021):

The identity of application pool mysitename is invalid. The user name or password that is specified for the identity may be incorrect, or the user may not have batch logon rights. If the identity is not corrected, the application pool will be disabled when the application pool receives its first request. If batch logon rights are causing the problem, the identity in the IIS configuration store must be changed after rights have been granted before Windows Process Activation Service (WAS) can retry the logon. If the identity remains invalid after the first request for the application pool is processed, the application pool will be disabled. The data field contains the error number.

Observe também que tentar definir a identidade no segundo servidor por meio da interface do usuário do Gerenciador do IIS resulta nesse diálogo de erro:

There was an error while performing this operation.

Details:

Bad Data. (Exception from HRESULT: 0x80090005)

Normalmente (quando feito através da UI do Gerenciador do IIS que não podemos usar no Core), é criada uma chamada de arquivo ConfigEncryptedKey.key. Isso parece comunicar ao segundo servidor a chave necessária para descriptografar a senha do usuário do pool de aplicativos em applicationHost.config.

Como não podemos usar a interface do usuário para fazer isso, existe uma maneira de fazer isso programaticamente?

    
por llevera 22.07.2011 / 08:12

1 resposta

2

Você deve poder usar a técnica do Apêndice 3 no guia de configuração compartilhada abaixo: link

Em suma: ASPNET_REGIIS -px para exportar a IISConfigurationKey e IISWasKey e -pi na caixa de destino para importá-los e sincronizá-los.

    
por 22.07.2011 / 08:17