Personalizando formulários HTML

Publicado: novembro de 2009

Aplica-se a: Forefront Threat Management Gateway (TMG)

O Forefront TMG fornece diversos métodos de autenticação que você pode aplicar a regras de publicação de Web para clientes que acessam servidores Web publicados. Quando a autenticação com base em formulários é selecionada, os usuários são direcionados para um formulário HTML para fornecer as credenciais de autenticação. O Forefront TMG fornece conjuntos de formulários padrão usados para a autenticação com base em formulários. Você pode personalizar esses conjuntos de formulários para fornecer uma aparência diferente para os formulários de logon de diferentes sites publicados.

Este tópico fornece uma visão geral dos conjuntos de formulários do Forefront TMG e descreve como personalizá-los.

Visão geral dos formulários HTML

As seções a seguir descrevem os conjuntos de formulários HTML incluídos no Forefront TMG e a estrutura dos diretórios de conjuntos de formulários do Forefront TMG:

  • Conjuntos de formulários do Forefront TMG

  • Diretórios de conjuntos de formulários

Conjuntos de formulários do Forefront TMG

O Forefront TMG inclui conjuntos de formulários pré-configurados que residem nas seguintes pastas:

  • ISA — Inclui todos os formulários HTML que podem ser necessários para a autenticação com base em formulários, conforme especificado no ouvinte da Web ou na regra de publicação de Web do Forefront TMG.

  • Exchange — Inclui todos os formulários HTML que podem ser necessários para a autenticação com base em formulários do acesso de cliente da Web do Microsoft Exchange.

O Forefront TMG oferece suporte a três classes de formulários HTML, que são organizadas em conjuntos de formulários:

  • HTML — Destinado a navegadores padrão.

  • cHTML — Destinado a navegadores que oferecem suporte a cHTML, como dispositivos móveis i-mode.

  • xHTML — Destinado a navegadores que oferecem suporte a xhtml-mp, como o Microsoft Windows Mobile® ou outros dispositivos móveis.

Dica

O Forefront TMG determina o tipo do formulário a ser fornecido com base no cabeçalho do Agente do Usuário fornecido pelo cliente móvel.

Cada conjunto de formulários inclui todos os formulários HTML que os clientes podem necessitar para a autenticação com base em formulários, como formulários de logon, logoff e SecurID. Por padrão, quando você cria um novo ouvinte da Web com a autenticação com base em formulários como o método de autenticação selecionado, um conjunto de formulários é selecionado automaticamente. Dependendo do método de validação de autenticação especificado para o ouvinte da Web, o Forefront TMG apresenta um dos seguintes tipos de formulários logon:

  • Formulário de senha (password) — O usuário insere um nome de usuário e uma senha no formulário. Essas credenciais são necessárias para a validação de credenciais do Active Directory, LDAP (Lightweight Directory Access Protocol) e RADIUS (Remote Authentication Dial-In User Service).

  • Formulário de senha (passcode) — O usuário insere um nome de usuário e uma senha no formulário. Essas credenciais são necessárias para a validação única de senha de SecurID e RADIUS.

  • Formulário de senhas (passcode/password) — O usuário insere um nome de usuário e uma senha (passcode) e um nome de usuário e uma senha (password). O nome de usuário e a senha (passcode) são usados para a autenticação no Forefront TMG usando os métodos de autenticação única de senha SecurID ou RADIUS, e o nome de usuário e a senha (password) são utilizados para a delegação. Esse formulário é usado quando o administrador opta por coletar credenciais adicionais no formulário.

Depois de criar o ouvinte da Web e a regra de publicação de Web, você pode especificar que um conjunto de formulários diferente deve ser usado. Além disso, as propriedades do formulário HTML de uma regra de publicação de Web podem substituir o conjunto de formulários de seu ouvinte da Web. Um conjunto de formulários é determinado pelo:

  • Conjunto de formulários especificado no ouvinte da Web.

  • Conjunto de formulários especificado na regra de publicação de Web.

Para obter mais informações sobre como criar conjuntos de formulários, consulte Criando conjuntos de formulários personalizados.

Diretórios de conjuntos de formulários

O diretório \%Diretório de Instalação do Forefront TMG%\Templates\CookieAuthTemplates contém os diretórios de formulários do ISA e do Exchange incluídos no Forefront TMG. Os subdiretórios imediatos desses diretórios contêm os diversos diretórios de conjuntos de formulários.

Cada diretório de conjunto de formulários inclui o conjunto completo de formulários HTML (arquivos .htm). Quando o Forefront TMG exibe um formulário HTML, ele substitui os espaços reservados nos arquivos .htm pelas cadeias de caracteres do arquivo strings.txt correspondentes às configurações de idioma do navegador do usuário, localizado na pasta de idiomas do diretório de idiomas (nls), conforme mostrado a seguir.

Diretório ISA

Quando uma regra de publicação de Web ou do Microsoft SharePoint é criada, um conjunto de formulários do diretório ISA é utilizado automaticamente.

Diretório Exchange

Quando uma regra de publicação de acesso de emails de cliente da Web é criada usando o Assistente para Nova Regra de Publicação do Exchange, o conjunto de formulários HTML do Exchange é automaticamente selecionado para essa regra. A pasta Exchange contém apenas o conjunto de formulários HTML. Para usar os conjuntos de formulários cHTML ou XHTML para o acesso de cliente da Web do Exchange, você deve criar os diretórios Exchange\cHTML ou Exchange\xHTML e copiar o conteúdo de Exchange\HTML nesses diretórios.

Dica

Para usar o Assistente de Regra de Publicação do Exchange, na árvore de console de Gerenciamento de Servidor, clique em Diretiva de Firewall e, em seguida, na guia Tarefas, clique em Publicar Acesso de Cliente da Web do Exchange.

Diretório Idioma

O diretório de idiomas, nls, inclui um único subdiretório com um arquivo strings.txt para cada idioma com suporte. Quando o Forefront TMG exibe um formulário HTML, ele substitui os espaços reservados nos arquivos .htm pelas cadeias de caracteres do arquivo strings.txt do idioma correspondente ao cabeçalho Accept-Language enviado pelo navegador do cliente.

Quando o Forefront TMG não consegue corresponder o cabeçalho Accept-Language enviado pelo navegador do cliente, Forefront TMG utiliza o arquivo strings.txt do diretório do conjunto de formulários padrão. Observe que o arquivo strings.txt é a versão do idioma inglês do arquivo.

Permissões do diretório do conjunto de formulários

Quando o Forefront TMG é instalado, as permissões dos diretórios de formulários são definidas automaticamente. Estas permissões nunca devem ser alteradas:

  • Controle total — Aplica-se a membros do grupo de Administradores local.

  • Somente leitura — Aplica-se à conta Serviços de Rede para que o Forefront TMG possa ler o conteúdo desse diretório enquanto estiver em execução sob a conta Serviços de Rede.

Para preservar a herança de permissões da pasta pai, recomenda-se que você copie os arquivos no diretório do conjunto de formulários, em vez de movê-los para o diretório.

Personalizando conjuntos de formulários

Em alguns casos, você pode querer fornecer uma aparência diferente para os formulários de alguns sites publicados. Cada uma dessas aparências é definida por um conjunto de formulários. É possível modificar um conjunto de formulários existente ou criar seu próprio conjunto de formulários.

As seções a seguir descrevem:

  • Personalizando cadeias de texto

  • Usando elementos gráficos personalizados

  • Criando conjuntos de formulários personalizados

Dica

  • Ao personalizar os formulários, você pode manter todos os campos do formulário original e todos os espaços reservados que o Forefront TMG substitui por campos ocultos. Nenhuma marca de entrada <input …> ou marca de formulário <form…> deve ser alterada nos arquivos .htm, ou os formulários não funcionarão. Além disso, você não deve alterar o formato do arquivo strings.txt.

  • As pastas Exchange e ISA são substituídas durante a atualização. Se você personalizar os formulários HTML, certifique-se de fazer um backup dos arquivos atualizados antes de aplicar qualquer hotfix, service pack ou atualização.

  • Se estiver executando o Forefront TMG Enterprise Edition, você deverá fazer todas as alterações dos conjuntos de formulários do Forefront TMG em cada membro da matriz do Forefront TMG.

  • Para as alterações entrarem em vigor, você deve reiniciar o serviço de firewall.

  • Todos os arquivos localizados no diretório de personalização de formulários podem ser acessados por usuários anônimos; portanto, eles não devem conter nenhuma informação confidencial.

Personalizando cadeias de texto

Quando o Forefront TMG exibe um formulário HTML, ele substitui os espaços reservados nos arquivos .htm pelas cadeias de caracteres do arquivo strings.txt do idioma especificado nas configurações de idioma do navegador do cliente ou no ouvinte da Web. A personalização de cadeias de texto é feita por meio da modificação das cadeias de caracteres do arquivo strings.txt que correspondem aos espaços reservados dos arquivos .htm.

Dica

  • Antes de personalizar o conteúdo do arquivo strings.txt, é recomendável que você faça um backup do arquivo strings.txt que estiver modificando.

  • Você deve codificar adequadamente todas as cadeias de caracteres que modificar ou adicionar para ficarem de acordo com a sintaxe HTML. O caractere < não pode ser incluído na cadeia de caracteres e deve ser substituído por &lt;. Além disso, para incluir aspas, você deve usar aspas simples em vez de aspas duplas.

O exemplo a seguir descreve como alterar a cadeia de texto da entrada de nome de usuário na página de logon padrão de "Domain\user name:" para "Alias:".

Para alterar o texto da entrada de nome de usuário na página de logon padrão

  1. Abra o arquivo strings.txt da pasta de idioma apropriada no diretório nls.

  2. Localize a cadeia de caracteres correspondente ao espaço reservado @@L_username_ text. A cadeia de caracteres é exibida no arquivo strings.txt como: L_UserName_Text="Domain\User name:".

  3. Altere a cadeia de texto para L_UserName_Text="Alias:".

  4. Salve o arquivo strings.txt. Quando o formulário HTML for gerado, o novo valor de @@L_username_text será exibido no formulário.

  5. Reinicie o serviço de Firewall da Microsoft para que as alterações entrem em vigor.

Além de modificar as cadeias de texto, você pode adicionar novas cadeias a um formulário. O exemplo a seguir mostra como adicionar uma cadeia de caracteres a um formulário.

Para adicionar uma cadeia de caracteres a um formulário

  1. Abra o arquivo .htm.

  2. Adicione um espaço reservado para a cadeia de caracteres e salve o arquivo. O espaço reservado deve estar no formato @@L_stringname. Ele não pode conter espaços.

  3. Salve o arquivo .htm.

  4. Adicione a cadeia de caracteres correspondente no arquivo strings.txt. A cadeia de caracteres deve estar no formato L_stringname="string text".

  5. Salve o arquivo strings.txt.

  6. Reinicie o serviço de Firewall para que as alterações entrem em vigor. Quando o formulário HTML for gerado, o valor de @@L_stringname será exibido no formulário.

Considerações de segurança

Se você fornecer o arquivo strings.txt a um terceiro para modificação, certifique-se de que não tenham sido feitas adições de não-texto ao arquivo, pois isso pode fornecer um meio de ataque em suas redes.

Usando elementos gráficos personalizados

Você pode substituir um elemento gráfico em um formulário específico ou globalmente em todos os formulários, de forma que a alteração seja exibida em todos os arquivos .htm que fizerem referência ao elemento gráfico.

Os elementos gráficos usados pelo Forefront TMG nos formulários HTML estão todos localizados nos diretórios de formulários padrão (ISA e Exchange). A URL usada para fazer referência aos elementos gráficos são escritos da seguinte maneira, onde <filename> é o nome do arquivo com a extensão: /cookieauth.dll?GetPic?formdir=@@FORMDIR&image=<filename>.

O exemplo a seguir descreve como substituir o elemento gráfico de logotipo <lgntop.gif> pelo logotipo <logo.gif> de sua própria empresa. Ele também descreve como modificar um formulário do diretório HTML.

Para substituir o elemento gráfico de logotipo

  1. Copie o arquivo logo.gif no diretório do conjunto de formulários \%Diretório de Instalação do Forefront TMG%\Templates\CookieAuthTemplates\ISA\HTML.

  2. Abra o arquivo .htm que inclui o elemento gráfico que estiver substituindo.

  3. Modifique a URL do elemento gráfico, substituindo o nome do arquivo existente <lgntop.gif>. A URL modificada é: /cookieauth.dll?GetPic?formdir=@@FORMDIR&image=logo.gif.

  4. Salve o arquivo.

  5. Reinicie o serviço de Firewall para que as alterações entrem em vigor. Quando o formulário for gerado, logo.gif será exibido no formulário.

Como alternativa, para substituir um elemento gráfico globalmente em todos os formulários, copie seu elemento gráfico no diretório de formulários usando o nome de arquivo do elemento gráfico que estiver substituindo.

Criando conjuntos de formulários personalizados

Você pode fornecer formulários personalizados para especificar um diretório de formulários diferente dos diretórios padrão ISA ou Exchange fornecidos pelo Forefront TMG. Por exemplo, considere um cenário em que você está publicando o acesso de cliente da Web para duas empresas diferentes e gostaria que cada uma delas tivesse seu próprio logotipo na página, bem como outras cadeias de texto personalizadas.

O procedimento a seguir descreve como fornecer formulários personalizados para esse exemplo.

Para fornecer formulários personalizados

  1. Crie uma nova pasta no diretório \CookieAuthTemplates\; por exemplo, \%Diretório de Instalação do Forefront TMG%\Templates\CookieAuthTemplates\Empresa1.

  2. Copie o conteúdo das pastas ISA ou Exchange na nova pasta criada por você. Se tiver apenas navegadores padrão, você deverá copiar apenas a pasta HTML.

  3. Personalize o formulário no diretório copiado. Faça todas as alterações no arquivo strings.txt da pasta de idioma apropriada, ou substitua todos os arquivos de elementos gráficos. Não altere nenhum dos elementos do formulário HTML, como <FORM> e <INPUT>.

  4. Reinicie o serviço de Firewall para que as alterações entrem em vigor.

  5. Para aplicar o novo conjunto de formulários em um ouvinte da Web, insira o nome do diretório na guia Formulários do ouvinte da Web. Forneça apenas o nome do diretório, como Empresa1, e não o caminho completo. Como alternativa, para aplicar o novo conjunto de formulários em uma regra de publicação de Web, na guia Configurações do Aplicativo da regra, habilite a caixa de seleção Usar formulários HTML personalizados e insira o nome do diretório.

  6. Para garantir que os formulários sejam exibidos apenas em um idioma específico, na guia Formulários do ouvinte da Web, em Exibir o formulário HTML neste idioma, selecione o idioma. Por exemplo, para garantir que um formulário seja exibido apenas em inglês, independentemente das configurações do navegador do cliente, selecione Inglês [en].

  7. Repita o procedimento para a segunda empresa (Empresa2).

  8. Clique em Aplicar na barra Aplicar Alterações para atualizar a configuração.

Dica

Se estiver executando o Forefront TMG Enterprise Edition, o diretório de formulários deverá ser exibido em todos os membros de matriz do Forefront TMG.

Configurações de idioma

Por padrão, o Forefront TMG compila os formulários HTML usando o arquivo strings.txt da pasta de idioma especificada na opção Idiomas de Opções da Internet do navegador do cliente. Você pode substituir as configurações de idioma do cliente especificando um idioma no ouvinte da Web. Além disso, se o Forefront TMG não localizar o arquivo strings.txt correspondente às configurações de idioma, ele usará o arquivo strings.txt padrão.

Dica

O idioma do arquivo strings.txt no diretório padrão é inglês. Você pode alterar o idioma do arquivo strings.txt padrão substituindo-o pelo arquivo strings.txt de qualquer uma das pastas de idiomas.