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

Tradução de links no ISA Server 2004

Publicado em: 15/06/2004

As páginas da Web enviadas de volta para clientes externos por servidores Web publicados podem conter links que incluem nomes internos de hosts. Como os nomes desses hosts protegidos não são determinados para clientes externos, esses links são desfeitos. Além disso, o envio dos nomes internos de hosts para clientes externos expõe esses nomes ao ataque de possíveis hackers. Para solucionar esses problemas, o Microsoft® Internet Security and Acceleration (ISA) Server inclui um filtro da Web denominado filtro de tradução de links. Quando habilitado e se o tipo de corpo de mensagem especificado no cabeçalho Content-Type da resposta estiver incluído em um dos conjuntos de tipo de conteúdo traduzível especificados para a regra, esse filtro da Web executa a tradução de links segundo um conjunto de regras padrão ou de acordo com um dicionário definido pelo usuário que mapeia seqüências contendo nomes de host interno como seqüências contendo nomes de host que podem ser convertidos publicamente para a regra de publicação da Web aplicável. Por padrão, a tradução de links é aplicada somente aos tipos de conteúdo incluídos no conjunto de tipo de conteúdo Documentos HTML, embora possam ser especificados outros conjuntos de tipo de conteúdo. Essa configuração é global para todas as regras de publicação da Web. Observe que o ISA Server executa a tradução de links somente em seqüências especificadas no formato UTF-8 em documentos HTML.

Nesta página

Habilitando e desabilitando a tradução de links
Gerenciando os conjuntos de tipo de conteúdo traduzível
Gerenciando dicionários de tradução de links

Habilitando e desabilitando a tradução de links

O código do Microsoft Visual Basic® Scripting Edition (VBScript) em LinkTranslation_Enable.vbs recupera a configuração da regra de publicação da Web especificada pelo usuário. Em seguida, dependendo da ação especificada pelo usuário, o script habilita ou desabilita a tradução de links para a regra definindo o valor do parâmetro Enabled no conjunto de parâmetros do fornecedor referente a tradução de links na coleção de regras dos conjuntos de parâmetros do fornecedor. O script também pode indicar se a tradução de links está habilitada para a regra baseada no valor do parâmetro Enabled.

Uso:
Cscript LinkTranslation_Enable.vbs  Action RuleName

Action especifica uma destas ações:

  • Enable. Habilita a tradução de links para a regra de publicação da Web especificada.

  • Disable. Desabilita a tradução de links para a regra de publicação da Web especificada.

  • Status. Obtém o status da tradução de links para a regra de publicação da Web especificada.

    RuleName especifica a regra de publicação da Web.

Para habilitar a tradução de links para uma regra de publicação da Web especificada

  1. Defina uma constante para o identificador exclusivo (GUID) do conjunto de parâmetros do fornecedor de tradução de links para uma regra de publicação da Web ({C202D356-5E93-4813-B737-B6f3E02C246C}).

  2. Declare um objeto FPCPolicyRule, uma coleção FPCVendorParametersSets e um objeto FPCVendorParametersSet.

  3. Chame um subprocedimento que recupera a regra de publicação da Web com o nome passado para ele seguindo estas etapas:

    1. Crie uma instância do objeto COM FPC, que fornece acesso aos outros objetos COM de administração do ISA Server.

    2. Declare uma coleção FPCPolicyRules e obtenha uma referência para a coleção de regras de diretiva existente.

    3. Obtenha uma referência para a regra de diretiva especificada e verifique se ela é uma regra de publicação da Web usando a propriedade Type. Se ela não for, notifique o usuário e ignore as etapas restantes deste procedimento.

  4. Obtenha uma referência para a coleção FPCVendorParametersSets da regra.

  5. Obtenha uma referência para o objeto FPCVendorParametersSet de tradução de links existente ou crie esse objeto se ele não existir.

  6. Use a propriedade Value do objeto do conjunto de parâmetros do fornecedor de tradução de links para definir o valor do parâmetro denominado Enabled como True e chame Save na coleção FPCVendorParametersSets para salvar as alterações.

Para desabilitar a tradução de links para uma regra de publicação da Web especificada

  1. Execute as etapas 1 a 5 do procedimento para habilitar a tradução de links.

  2. Use a propriedade Value do objeto do conjunto de parâmetros do fornecedor de tradução de links para definir o valor do parâmetro denominado Enabled como False e chame Save na coleção FPCVendorParametersSets para salvar as alterações.

Para obter o status da tradução de links para uma regra de publicação da Web especificada

  1. Execute as etapas 1 a 4 do procedimento para habilitar a tradução de links.

  2. Tente obter uma referência para o objeto FPCVendorParametersSet de tradução de links existente.

  3. Se o conjunto de parâmetros de tradução de links existir, recupere o valor do parâmetro denominado Enabled e exiba uma mensagem indicando se a tradução de links está habilitada ou desabilitada com base no valor recuperado. Caso contrário, exiba uma mensagem indicando que a tradução de links está desabilitada.

Gerenciando os conjuntos de tipo de conteúdo traduzível

Quando a tradução de links está habilitada, o ISA Server verifica o cabeçalho Content-Type da resposta para determinar se a tradução de links deve ser aplicada ao corpo da mensagem. Os nomes de conjuntos de tipo de conteúdo, que contêm listas de seqüências correspondentes a cabeçalhos Content-Type, podem ser especificados em um determinado conjunto de parâmetros associado ao filtro de tradução de links. Por padrão, os seguintes conjuntos de tipo de conteúdo estão disponíveis para especificar tipos de conteúdo traduzível:

  • Aplicativo

  • Arquivos de dados de aplicativos

  • Áudio

  • Arquivos compactados

  • Documentos

  • Documentos HTML

  • Imagens

  • Documentos de Macro

  • Texto

  • Vídeo

  • VRML

Por padrão, a tradução de links é aplicada somente aos tipos de conteúdo incluídos no conjunto de tipo de conteúdo Documentos HTML.

O código VBScript em LinkTranslation_EditContentTypes.vbs recupera a coleção de conjuntos de parâmetros do fornecedor associados ao filtro de tradução de links. Em seguida, dependendo da ação especificada pelo usuário, o script é revertido para a lista padrão de tipos de conteúdo traduzível (os tipos de conteúdo incluídos no conjunto de tipo de conteúdo Documentos HTML), apagando todos os conjuntos de tipo de conteúdo traduzível especificados no conjunto de parâmetros do fornecedor, que define os conjuntos de tipo de conteúdo traduzível, exibe a lista atual de conjuntos de tipo de conteúdo traduzível definidos na propriedade AllNames desse conjunto de parâmetros do fornecedor ou define a lista de conjuntos de tipo de conteúdo traduzível.

Uso:
[Cscript] LinkTranslation_EditContentTypes.vbs  Action [ContentTypes]

Action especifica uma destas ações:

  • List. Lista os conjuntos de tipo de conteúdo traduzível atuais.

  • Default. Redefine para os tipos de conteúdo traduzível padrão.

  • SetTypes. Define os conjuntos de tipo de conteúdo traduzível especificados (lista delimitada por espaço).

ContentTypes especifica o conjunto de tipo de conteúdo.

Exemplo:

LinkTranslation_EditContentTypes.vbs SetTypes HTML Documents Video

Para listar os conjuntos de tipo de conteúdo traduzível atuais

  1. Defina constantes para o GUID do filtro de tradução de links ({9DEEF135-75DB-4aab-B2AC-314FBC98EF14}) e para o GUID do conjunto de parâmetros do fornecedor que especifica os conjuntos de tipo de conteúdo traduzível ({E4FA56DB-7A77-4d13-B421-6641DF2D1AF0}).

  2. Crie uma instância do objeto COM FPC, que fornece acesso aos outros objetos COM de administração do ISA Server.

  3. Obtenha uma referência para a coleção FPCVendorParametersSets associada ao filtro de tradução de links.

  4. Obtenha uma referência para o objeto FPCVendorParametersSet que especifica os conjuntos do tipo de conteúdo traduzível.

  5. Se o conjunto de parâmetros que especifica os conjuntos de tipo de conteúdo traduzível existir, recupere os nomes dos parâmetros que especificam os conjuntos de tipo de conteúdo traduzível e exiba-os. Caso contrário, exiba uma mensagem indicando que somente os tipos de conteúdo padrão serão usados.

Para redefinir para os tipos de conteúdo traduzível padrão

  1. Execute as etapas 1 a 3 do procedimento para listar os conjuntos de tipo de conteúdo traduzível atuais.

  2. Chame o método Remove da coleção FPCVendorParametersSets com o GUID do conjunto de parâmetros que especifica os conjuntos de tipo de conteúdo traduzível.

  3. Se o conjunto de parâmetros que especifica os conjuntos de tipo de conteúdo traduzível for removido com êxito, chame Save na coleção FPCVendorParametersSets para salvar as alterações.

Para definir os conjuntos de tipo de conteúdo traduzível

  1. Execute as etapas 1 a 3 do procedimento para listar os conjuntos de tipo de conteúdo traduzível atuais.

  2. Chame o método Remove da coleção de conjuntos de parâmetros do fornecedor com o GUID do conjunto de parâmetros que especifica os conjuntos de tipo de conteúdo traduzível para remover esse conjunto de parâmetros, se ele existir.

  3. Chame o método Add da coleção de conjuntos de parâmetros do fornecedor com o primeiro conjunto de parâmetros no GUID do conjunto de parâmetros que especifica os conjuntos de tipo de conteúdo traduzível para criar um novo conjunto de parâmetros vazio para os conjuntos de tipo de conteúdo traduzível.

  4. Em um loop For, para cada conjunto de tipo de conteúdo traduzível especificado na linha de comando, chame a propriedade Value do conjunto de parâmetros que define os conjuntos de tipo de conteúdo traduzível para adicionar um parâmetro cujo nome é definido como o nome do conjunto de tipo de conteúdo traduzível e cujo valor é definido como 1.

  5. Chame Save na coleção FPCVendorParametersSets para salvar as alterações.

Gerenciando dicionários de tradução de links

Cada regra de publicação da Web pode ter seu próprio dicionário de tradução de links, que é definido em um conjunto de parâmetros do fornecedor a ele associado. Cada entrada em um dicionário é um par de seqüências formado por uma seqüência contendo um nome de host usado internamente e uma seqüência contendo um nome de host que pode ser determinado externamente. A seqüência interna é especificada como o nome de um parâmetro, enquanto a seqüência externa é especificada como o valor correspondente.

O código VBScript em LinkTranslation_EditDictionary.vbs permite que o usuário gerencie os dicionários de tradução de links para regras de publicação da Web. Dependendo da ação especificada pelo usuário, esse script lista os dicionários de tradução de links de todas as regras de publicação da Web, lista todos os pares internos/externos contidos no dicionário para a regra de publicação da Web especificada, remove uma entrada específica do dicionário para a regra especificada, remove o dicionário inteiro para a regra especificada ou adiciona pares de seqüência internos/externos no dicionário para a regra especificada.

Uso:
LinkTranslation_EditDictionary.vbs Action [RuleName] [InternalString] ExternalString]

Action especifica uma destas ações:

  • ListAll. Lista os dicionários para todas as regras de publicação da Web.

  • List. Lista o dicionário para a regra especificada.

  • Clear. Limpa todas as entradas do dicionário de tradução de links para a regra especificada.

  • Add. Adiciona uma entrada definida por InternalString e ExternalString no dicionário da regra especificada.

  • RemoveEntry. Remove a entrada para InternalString do dicionário da regra especificada.

RuleName especifica a regra de publicação da Web.

InternalString especifica uma seqüência contendo um nome de host usado internamente.

ExternalString especifica uma seqüência contendo um nome de host que pode ser determinado externamente.

Para listar os dicionários para todas as regras de publicação da Web

  1. Defina uma constante para o GUID de um conjunto de parâmetros do fornecedor que define um dicionário de tradução de links ({3563FFF5-DF93-40eb-ABC3-D24B5F14D8AA}) e uma constante para o valor de enumeração para indicar que uma determinada regra de diretiva é uma regra de publicação da Web.

  2. Crie uma instância do objeto COM FPC, que fornece acesso aos outros objetos COM de administração do ISA Server.

  3. Declare uma coleção FPCPolicyRules e um objeto FPCPolicyRule.

  4. Obtenha uma referência para a coleção de regras de diretiva existente.

  5. Em um loop For, para cada regra na coleção de regras de diretiva, use a propriedade Type para determinar se ela é uma regra de publicação da Web. Se a regra de diretiva for uma regra de publicação da Web, chame um subprocedimento que lista as entradas no dicionário de tradução de links seguindo estas etapas:

    1. Declare uma coleção FPCVendorParametersSets e um objeto FPCVendorParametersSet.

    2. Obtenha uma referência para a coleção FPCVendorParametersSets da regra.

    3. Tente obter uma referência para o objeto FPCVendorParametersSet que define um dicionário de tradução de links na coleção.

    4. Se for obtida uma referência em um dicionário de tradução de links que não está vazio, em um loop For, exiba cada nome (seqüência interna) recuperado da propriedade AllNames seguido pela seqüência externa correspondente, que é obtida chamando a propriedade Value com o conjunto de parâmetros para a seqüência interna.

Para listar o dicionário para uma regra de publicação da Web especificada

  1. Execute as etapas 1 a 4 do procedimento para listar os dicionários para todas as regras de publicação da Web.

  2. Recupere o nome da regra de publicação da Web especificada no segundo argumento da linha de comando.

  3. Obtenha uma referência para a regra de diretiva especificada e verifique se ela é uma regra de publicação da Web usando a propriedade Type. Se ela não for, notifique o usuário e ignore as etapas restantes deste procedimento.

  4. Chame o subprocedimento descrito na Etapa 5 do procedimento para listar os dicionários para todas as regras de publicação da Web a fim de exibir as entradas no dicionário de tradução de links da regra.

Para limpar todas as entradas do dicionário de tradução de links para uma regra especificada

  1. Execute as etapas 1 a 4 do procedimento para listar os dicionários para todas as regras de publicação da Web.

  2. Recupere o nome da regra de publicação da Web especificada no segundo argumento da linha de comando.

  3. Obtenha uma referência para a regra de diretiva especificada e verifique se ela é uma regra de publicação da Web usando a propriedade Type. Se ela não for, notifique o usuário e ignore as etapas restantes deste procedimento.

  4. Declare uma coleção FPCVendorParametersSets e um objeto FPCVendorParametersSet.

  5. Obtenha uma referência para a coleção FPCVendorParametersSets da regra.

  6. Chame o método Remove da coleção FPCVendorParametersSets com o conjunto de parâmetros no GUID de um conjunto de parâmetros que define o dicionário de tradução de links para remover esse conjunto de parâmetros, se ele existir.

  7. Se o dicionário de tradução de links for removido com êxito, chame Save na coleção FPCVendorParametersSets para salvar as alterações.

Para adicionar uma entrada no dicionário de tradução de links para uma regra especificada

  1. Execute as etapas 1 a 4 do procedimento para listar os dicionários para todas as regras de publicação da Web.

  2. Recupere o nome da regra de publicação da Web especificada no segundo argumento da linha de comando.

  3. Obtenha uma referência para a regra de diretiva especificada e verifique se ela é uma regra de publicação da Web usando a propriedade Type. Se ela não for, notifique o usuário e ignore as etapas restantes deste procedimento.

  4. Declare uma coleção FPCVendorParametersSets e um objeto FPCVendorParametersSet.

  5. Obtenha uma referência para a coleção FPCVendorParametersSets da regra.

  6. Tente obter uma referência para o conjunto de parâmetros existente que define o dicionário de tradução de links.

  7. Chame o método Add da coleção de conjuntos de parâmetros do fornecedor com o primeiro conjunto de parâmetros no GUID do conjunto de parâmetros que define o dicionário de tradução de links para criar um novo conjunto de parâmetros vazio para o dicionário de tradução de links.

  8. Chame a propriedade Value do conjunto de parâmetros que define o dicionário de tradução de links para adicionar um parâmetro cujo nome é a seqüência interna especificada na linha de comando e cujo valor é definido como a seqüência externa especificada na linha de comando.

  9. Chame Save na coleção FPCVendorParametersSets para salvar as alterações.

Para remover uma entrada do dicionário de tradução de links para uma regra especificada

  1. Execute as etapas 1 a 4 do procedimento para listar os dicionários para todas as regras de publicação da Web.

  2. Recupere o nome da regra de publicação da Web especificada no segundo argumento da linha de comando.

  3. Obtenha uma referência para a regra de diretiva especificada e verifique se ela é uma regra de publicação da Web usando a propriedade Type. Se ela não for, notifique o usuário e ignore as etapas restantes deste procedimento.

  4. Declare uma coleção FPCVendorParametersSets e um objeto FPCVendorParametersSet.

  5. Obtenha uma referência para a coleção FPCVendorParametersSets da regra.

  6. Tente obter uma referência para o conjunto de parâmetros existente que define o dicionário de tradução de links. Se este conjunto de parâmetros não existir, ignore as etapas restantes deste procedimento.

  7. Chame o método RemoveValue do conjunto de parâmetros que define o dicionário de tradução de links com o conjunto de parâmetros para a seqüência interna especificada na linha de comando a fim de remover a entrada especificada.

  8. Se a entrada for removida com êxito, chame Save no objeto FPCVendorParametersSet para salvar as alterações.

Isso foi útil para você?
(1500 caracteres restantes)
Agradecemos os seus comentários
Mostrar:
© 2014 Microsoft. Todos os direitos reservados.