Exportar (0) Imprimir
Expandir Tudo
Este tópico ainda não foi avaliado como - Avalie este tópico

Gerenciando certificados do servidor por meio de programação no IIS 6.0

Você pode usar scripts junto com IISCertObj, um objeto do Modelo de Objeto Componente (COM), para gerenciar certificados de forma remota e programática. Use o IISCertObj para executar as seguintes tarefas:

  • Importar cópias de um certificado a partir de um arquivo .pfx (arquivo contendo um certificado criptografado PFX e uma chave particular), de um servidor para vários servidores.
  • Salvar cópias de backup de certificados em um site central.
  • Copiar um certificado de um servidor para vários servidores.

Para saber como obter certificados do servidor SSL, consulte Obtendo certificados de servidor.

Scripts de exemplo

Após adquirir um certificado do servidor SSL de uma autoridade de certificação, você precisará seguir uma ou mais destas etapas ao distribuir cópias para todos os servidores:

  • Importe as cópias dos certificados mestres para vários servidores.
  • Salve as cópias de backup dos certificados em um arquivo central.
  • Exporte os certificados por vários servidores.

No IIS, se usar o host de scripts do Windows (WSH) ou as páginas ASP, você poderá executar scripts que se comunicam com o IISCertObj de forma programática para importar, arquivar ou exportar certificados.

Importar certificados para vários servidores (CertImport.vbs)

Sites de grande porte normalmente precisam usar uma certificado SSL para proteger o logon do usuário em vários servidores. Seria muito demorado usar o MMC para adicionar cópias do certificado a cada servidor. Você precisa é de uma solução com scripts que instale cópias do mesmo certificado em todos os servidores de destino.

ImportantImportante
Você deve ser membro do grupo Administradores no computador local para executar scripts e executáveis. Como prática recomendada de segurança, faça logon no computador usando uma conta que não esteja no grupo Administradores e use o comando runas para executar o script ou executável como um administrador. Em um prompt de comando, digite runas /profile /User:Meu_Computador\Administrador cmd para abrir uma janela de comando com direitos de administrador e, em seguida, digite cscript.exeNome_do_Script (inclua o caminho completo do script e todos os parâmetros).

Salve o script a seguir como CertImport.vbs. Modifique os argumentos de instrução da linha de comando para que correspondam aos seus recursos de rede. Em seguida, use a instrução da linha de comando para importar um certificado de um armazenamento de certificados em um servidor para outros servidores.

Option Explicit
Dim iiscertobj, pfxfile, pfxfilepassword, InstanceName, WebFarmServers, IISServer
Set iiscertobj = WScript.CreateObject("IIS.CertObj")
pfxfile = WScript.Arguments(0)
pfxfilepassword = WScript.Arguments(1)
InstanceName = WScript.Arguments(2)
WebFarmServers = split(WScript.Arguments(3), ",")
iiscertobj.UserName = WScript.Arguments(4)
iiscertobj.UserPassword = WScript.Arguments(5)
For Each IISServer in WebFarmServers
  iiscertobj.ServerName = IISServer
  iiscertobj.InstanceName = InstanceName
  iiscertobj.Import pfxfile, pfxfilepassword, true, true
Next

Instrução da linha de comando:

Certimport.vbs cert.pfx pfxpassword w3svc/1 iisserver1,iisserver2,iisserver3 Administrator aal34290

Salvar certificados em um arquivo central (Save_all_certs.vbs)

Com o método de exportação IISCertObj, você pode arquivar um backup de cada certificado existente em seu server farm, em um site central.

Salve o script a seguir como Save_all_certs.vbs no editor de texto. Modifique os argumentos de instrução da linha de comando para que correspondam aos seus recursos de rede. Em seguida, use a instrução da linha de comando para exportar cópias dos certificados para o site central.

Option Explicit
Dim iiscertobj, targetServer, targetServers, pfxbasename, pfxpassword, InstanceName
Set iiscertobj = WScript.CreateObject("IIS.CertObj")
pfxbasename = WScript.Arguments(0)
pfxpassword = WScript.Arguments(1)
InstanceName = WScript.Arguments(2)
targetServers = split(WScript.Arguments(3), ",")
iiscertobj.UserName = WScript.Arguments(4)
iiscertobj.UserPassword = WScript.Arguments(5)
iiscertobj.InstanceName = InstanceName
For Each targetServer in targetServers
  iiscertobj.ServerName = targetServer
  iiscertobj.Export pfxbasename + targetServer + ".pfx", pfxpassword, true, false, false
Next

Instrução da linha de comando:

Save_all_certs.vbs C:\certbackup\ adsf-0324 w3svc/1 iisserver2,iisserver3,iisserver4 Administrator aal34290

Copiar um certificado de um servidor existentes para um novo servidor (CertCopy.vbs)

Com o script e a instrução da linha de comando a seguir, você pode usar o método copy de IISCertObj para copiar um certificado para um novo servidor após adicionar o servidor a um server farm.

Salve o script abaixo como certcopy.vbs. Modifique os argumentos de instrução da linha de comando para que correspondam aos seus recursos de rede. Em seguida, execute a instrução da linha de comando.

Option Explicit
Dim iiscertobj, targetServer, targetServers, targetInstance
Set iiscertobj = WScript.CreateObject("IIS.CertObj")
iiscertobj.ServerName = WScript.Arguments(0)
iiscertobj.Instancename = WScript.Arguments(1)
targetServers = split(WScript.Arguments(2), ",")
targetInstance = WScript.Arguments(3)
iiscertobj.UserName = WScript.Arguments(4)
iiscertobj.UserPassword = WScript.Arguments(5)
For Each targetServer in targetServers
  iiscertobj.Copy true, true, targetServer, targetInstance
Next

Instrução da linha de comando:

Certcopy.vbs iisServer1 w3svc/1 iisServer2 w3svc/1 Administrator asdf-0324

Isso foi útil para você?
(1500 caracteres restantes)
Agradecemos os seus comentários

Contribuições da comunidade

ADICIONAR
Mostrar:
© 2014 Microsoft. Todos os direitos reservados.