Configurando Kerberos como o Mecanismo de Autenticação Utilizando o Console Administrativo

É possível utilizar o console administrativo para configurar Kerberos como o mecanismo de autenticação para o servidor de aplicativos. Quando você tiver digitado e aplicado as informações necessárias à configuração, o service principal name do Kerberos será formado como <nome_do_serviço>/<nome_do_host_completo>@KerberosRealm e será usado para verificar pedidos recebidos de token do Kerberos.

Antes de Iniciar

Leia sobre Suporte do Mecanismo de Autenticação Kerberos (KRB5) para Segurança para entender o mecanismo de autenticação do Kerberos nesta versão do WebSphere Application Server. Você deverá ter concluído as seguintes etapas antes de configurar o Kerberos como o mecanismo de autenticação usando o console administrativo:

  • Se você ainda não tiver um arquivo de configuração Kerberos, krb5.ini ou krb5.conf, use a tarefa de comando createkrbConfigFile para criar o arquivo de configuração Kerberos. Leia sobre a Criando um Arquivo de Configuração do Kerberos para obter informações adicionais.
  • Você deve ter um arquivo keytab do Kerberos, krb5.keytab, que contenha um service principal name (SPN) do Kerberos, <nome_do_serviço>/<nome_do_host_completo>@KerberosRealm, para cada máquina que executar WebSphere Application Servers. O nome do serviço pode ser qualquer um que você escolher; o valor-padrão é WAS.

    Por exemplo, se você tiver duas máquinas servidor de aplicativos, host1.austin.ibm.com e host2.austin.ibm.com, o arquivo keytab do Kerberos deverá conter os SPNs <service_name>/host1.austin.ibm.com e <service_name>/host2.austin.ibm.com e suas chaves do Kerberos.

    Kerberos só carregará e usará um arquivo keytab por sessão. Por exemplo, se o Kerberos estiver configurado e você quiser utilizar um novo arquivo keytab com o mesmo nome e local do anterior, primeiro você deverá reiniciar o servidor para utilizar o novo arquivo keytab.

    Se o Kerberos estiver sendo configurado pela primeira vez e, acidentalmente, o arquivo keytab errado for usado, o Kerberos deverá ser desconfigurado e o servidor reiniciado para que o Kerberos possa ser configurado novamente usando um novo arquivo keytab. Isso não é verdade, no entanto, se o Java™ SE Development Kit (JDK) com SP3 estiver instalado.

Primeiro é necessário ativar a segurança global e de aplicativo.

Se o Kerberos estiver configurado na segurança global, mas você quiser configurar o Simple and Protected GSS-API Negotiation (SPNEGO) em um domínio usando uma região diferente do Kerberos, você deverá, primeiramente, usar o comando Java ktab -m para mesclar arquivos keytab existentes no arquivo keytab. Use esse arquivo keytab mesclado para configurar o Kerberos e o SPNEGO na segurança global e de domínio.

Procedimento

  1. No console administrativo, clique em Segurança > Segurança Global.
  2. A partir de Autenticação, clique em Configuração de Kerberos.
  3. Digite o nome do serviço Kerberos. Por convenção, um proprietário de serviço Kerberos é dividido em três partes: o nome principal, o da instância e o da região do Kerberos. O formato do service principal name do Kerberos é <nome_do_serviço>/<nome_do_host_completo>@KERBEROS_REALM. O nome do serviço é a primeira parte do nome do proprietário do serviço Kerberos. Por exemplo, em WAS/test.austin.ibm.com@AUSTIN.IBM.COM, o nome de serviço é WAS. Neste exemplo, o arquivo keytab deve ter o nome de proprietário de serviço Kerberos, WAS/test.austin.ibm.com@AUSTIN.IBM.COM, e suas chaves.

  4. Digite o nome do arquivo de configuração Kerberos ou clique em Procurar para localizá-lo. O arquivo de configuração do cliente Kerberos, krb5.conf ou krb5.ini, contém informações de configuração de Kerberos, incluindo os locais dos KDCs (Key Distribution Centers) para a região de interesse. O arquivo krb5.conf é o nome do arquivo padrão para todas as plataformas, exceto para o sistema operacional Windows, que utiliza o arquivo krb5.ini.
    Nota: O nome do arquivo de configuração Kerberos e o caminho do nome do arquivo keytab do Kerberos não precisam ser caminhos absolutos. É possível usar variáveis WebSphere para os caminhos. Se você tiver um ambiente combinado de plataforma, poderá usar a variável ${CONF_OR_INI} do arquivo de configuração Kerberos. A configuração de segurança a expandirá para ini em plataformas Windows ou para conf em plataformas não Windows. Por exemplo:
    ${WAS_INSTALL_ROOT}\etc\krb5\krb5.${CFG_OR_INI}
  5. Opcional: Digite o nome do arquivo keytab Kerberos ou clique em Procurar para localizá-lo. O arquivo keytab do Kerberos contém um ou mais nomes e chaves de proprietário de serviço Kerberos. O arquivo keytab padrão é krb5.keytab. É importante para os hosts protegerem seus arquivos keytab Kerberos armazenando-os no disco local, o que os torna legíveis apenas aos usuários autorizados. Consulte Criação de um Nome do Principal Serviço Kerberos e um Arquivo keytab para obter mais informações. Se você não especificar esse parâmetro, o nome do keytab padrão no arquivo de configuração do Kerberos será utilizado.
    Nota: O nome do arquivo de configuração Kerberos e o caminho do nome do arquivo keytab do Kerberos não precisam ser caminhos absolutos. É possível usar variáveis WebSphere para os caminhos.
    ${WAS_INSTALL_ROOT}\etc\krb5\krb5.keytab
  6. Digite o nome de sua região do Kerberos no campo Nome da Região do Kerberos. Na maioria dos casos, a região é o nome do domínio em letras maiúsculas. Se você não especificar esse parâmetro, o nome de região do Kerberos padrão no arquivo de configuração do Kerberos será utilizado.

    Por exemplo, uma máquina com o nome de domínio test.austin.ibm.com tem um nome de região do Kerberos AUSTIN.IBM.COM.

    Nota: O nome da região do Kerberos do KDC para Microsoft é um valor em maiúsculas do nome do Controlador de Domínio.
  7. Opcional: Remover Região do Kerberos do Nome do Proprietário é selecionado por padrão. Esta opção poderá ser limpa se você quiser que o sufixo do nome do Kerberos principal seja retido. Esta opção especifica se o módulo de login Kerberos remove o sufixo do nome de usuário principal, começando a partir de @ que antecede o nome de região do Kerberos. Se esse atributo for configurado como true, o sufixo do nome do usuário do proprietário será removido. Se esse atributo estiver configurado como false, o sufixo do nome do proprietário será retido. O valor padrão utilizado é true.

  8. Opcional: Ativar Delegação de Credenciais de Kerberos é selecionado por padrão. Esta opção especifica se as credenciais delegadas do Kerberos são extraídas do pedido do cliente. O token de autenticação do Kerberos (KRBAuthnToken) será criado com o nome principal do cliente e o ticket Kerberos delegado do cliente se o cliente receber a credencial de delegação do Kerberos como parte do pedido. O KRBAuthnToken é armazenado no assunto do cliente. O KRBAuthnToken é propagado para o servidor de recebimento de dados como parte da propagação do atributo de segurança. Se um aplicativo cliente precisar da GSSCredential para autenticação com um recurso de backend ou um servidor de recebimento de dados, você deverá recuperar a GSSCredential do KRBAuthnToken usando o método com.ibm.wsspi.wssecurity.platform.token.KRBAuthnToken.getGSSCredential() e colocá-la no assunto.

    Se você não marcar essa opção, o KRBAuthnToken terá apenas o nome do Kerberos principal.

    Nota: Se este parâmetro for true e o ambiente de tempo de execução não puder extrair uma credencial de delegação GSS do cliente, uma mensagem de aviso será exibida.
  9. Clicar em OK.

Resultados

Quando você selecionar Aplicar ou OK, a autenticação Kerberos será automaticamente testada. Se a configuração Kerberos não for concluída, será exibida uma mensagem indicando a falha de autenticação.

Você salvou e configurou o Kerberos como o mecanismo de autenticação do WebSphere Application Server.

O que Fazer Depois

Para ativar o SPNEGO, clique em Ativação de Autenticação da Web SPNEGO em Configuração Relacionada.

A autenticação da Web SPNEGO e a autenticação Kerberos usam a mesma configuração e arquivos keytab do cliente Kerberos.

Quando você tentar se autenticar no console administrativo, use um ID do usuário administrativo existente no KDC que esteja associado ao servidor de aplicativos. Se você usar um ID do usuário administrativo existente em um KDC diferente que não estiver associado ao console administrativo, o processo de login falhará e a seguinte mensagem de erro será incluída no arquivo de log:
SECJ9200E: Nenhuma credencial de Kerberos localizada no conjunto de credenciais do assunto.
Por exemplo, o cliente pode estar associado a um KDC diferente do KDC do servidor de aplicativos.

Ícone que indica o tipo de tópico Tópico de Tarefa



Ícone de registro de data e hora Última atualização: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tsec_kerb_auth_mech
Nome do arquivo: tsec_kerb_auth_mech.html