Criando um Principal de Serviço e um Arquivo keytab Kerberos que é usado pelo WebSphere Application Server SPNEGO TAI (Descontinuado)
Desempenhe esta tarefa de configuração na máquina do controlador de domínio do Microsoft Active Directory. Esta tarefa é uma parte necessária de preparação para processar solicitações do navegador de conexão única para o WebSphere Application Server e para o Trust Association Interceptor (TAI) SPNEGO.
Antes de Iniciar

No WebSphere Application Server Versão 6.1, foi introduzido um Trust Association Interceptor (TAI) que usa o Simple and Protected GSS-API Negotiation Mechanism (SPNEGO) para negociar e autenticar com segurança solicitações de HTTP para recursos seguros. Em WebSphere Application Server 7.0, esse função foi descontinuada. A autenticação da Web SPNEGO tomou este lugar para fornecer recarregamento dinâmico dos filtros SPNEGO e para ativar fallback para o método de login do aplicativo.
depfeatSobre Esta Tarefa
Procedimento
- Crie uma conta de usuário no Microsoft Active Directory para o WebSphere Application Server.
Clique em Iniciar->Programas->Ferramentas Administrativas->Computadores e Usuários do Active Directory
Use o nome para o WebSphere Application Server. Por exemplo, se o servidor de aplicativos que você está executando na máquina do WebSphere Application Server for chamado myappserver.austin.ibm.com, crie um novo usuário no Active Directory chamado myappserver.Importante: Não selecione "O usuário deve mudar a senha no próximo logon".Importante: Certifique-se de não possuir o nome do computador myappserver em Computadores e Controladores de Domínio. Se você já possui um nome de computador myappserver, precisará criar um nome de conta de usuário diferente.- Vá para Iniciar->Programas->Ferramentas Administrativas->Computadores e Usuários do Active Directory->Computadores
- Vá para Iniciar->Programas->Ferramentas Administrativas->Computadores e Usuários do Active Directory->Controladores de Domínio
- Utilize o comando setspn para mapear o service principal name do Kerberos, HTTP/<host name>, para uma conta do usuário do Microsoft. Um exemplo de uso do setspn é o seguinte:
C:\Program Files\Support Tools> setspn -A HTTP/myappserver.austin.ibm.com myappserver
Nota: Pode já haver alguns SPNs relacionados aos hosts do Microsoft Windows que tenham sido incluídos no domínio. É possível exibir os que estiverem existentes ao usar o comando setspn -L, mas ainda deverá incluir um SPN HTTP para WebSphere Application Server. Por exemplo, setspn -L myappserver listaria os SPNs.Importante: Certifique-se de que você não tenha o mesmo mapeamento de SPNs para mais de uma conta de usuário da Microsoft. Se mapear o mesmo SPN para mais de uma conta de usuário, o cliente do navegador da Web poderá enviar um token NTLM em vez de um token SPNEGO para o WebSphere Application Server.Mais informações sobre o comando setspn podem ser localizadas aqui, Windows 2003 Technical Reference (comando setspn)
- Crie o arquivo keytab Kerberos e disponibilize-o no WebSphere Application Server. Utilize
o comando ktpass para criar o arquivo keytab Kerberos (krb5.keytab).
Utilize a ferramenta ktpass a partir do kit de ferramentas Windows Server para criar o arquivo keytab Kerberos para o SPN (Service Principal Name). Use a versão mais recente da ferramenta ktpass que corresponde ao nível do servidor Windows que está sendo usado. Por exemplo, use a versão do Windows 2003 da ferramenta para um servidor Windows 2003.
Para determinar os valores de parâmetro apropriados para a ferramenta ktpass, execute o comando ktpass -? a partir da linha de comandos. Este comando lista se a ferramenta ktpass, que corresponde ao sistema operacional específico, usa o valor de parâmetro -crypto RC4-HMAC ou -crypto RC4-HMAC-NT. Para evitar mensagens de aviso do kit de ferramentas, você deve especificar o valor de parâmetro -ptype KRB5_NT_PRINCIPAL.
A versão do servidor Windows 2003 da ferramenta ktpass suporta o tipo de criptografia, RC4-HMAC e o DES (Data Encryption Standard) único. Para obter mais informações sobre a ferramenta ktpass, consulte Referência Técnica do Windows 2003 - Visão Geral do Ktpass.
O código a seguir mostra as funções que estão disponíveis ao inserir o comando ktpass -? na linha de comandos. Estas informações podem ser diferentes, dependendo da versão do kit de ferramentas que está sendo usada.C:\Program Files\Support Tools>ktpass -? Opções da linha de comandos: ---------------------args mais úteis [- /] out : Keytab a ser produzido [- /] princ : Nome do Proprietário (user@REALM) [- /] pass : senha a ser utilizada utilizar "*" para solicitar a senha. [- +] rndPass : ... ou utilize +rndPass para gerar uma senha aleatória [- /] minPass : comprimento mínimo para senha aleatória (def:15) [- /] maxPass : comprimento máximo para senha aleatória (def:256) ---------------------itens menos úteis [- /] mapuser : mapa princ para esta conta do usuário (padrão: não) [- /] mapOp : como configurar o atributo de mapeamento (padrão: incluí-lo) [- /] mapOp : é um de: [- /] mapOp : add : incluir valor (padrão) [- /] mapOp : set : configurar valor [- +] DesOnly : Configure a conta para a criptografia des-only (default:don't) [- /] in : Keytab para leitura/assimilação ---------------------opções para geração de chave [- /] crypto : Cryptosystem a ser utilizado [- /] crypto : é um de: [- /] crypto : DES-CBC-CRC : para compatibilidade [- /] crypto : DES-CBC-MD5 : para compatibilidade [- /] crypto : RC4-HMAC-NT : criptografia padrão de 128 bits [- /] ptype : tipo do proprietário em questão [- /] ptype : é um de: [- /] ptype : KRB5_NT_PRINCIPAL : O ptype geral -- recomendado [- /] ptype : KRB5_NT_SRV_INST : instância de serviço do usuário [- /] ptype : KRB5_NT_SRV_HST : instância de serviço do host [- /] kvno : Substituir Número de Versão de Chave Padrão: consultar DC para kvno. Utilizar /kvno 1 para Win2K compat. [- +] Resposta: +Answer responde SIM para os prompts. -Answer responde Nº [- /] Destino : Qual DC utiliza. Padrão:detect ---------------------opções para atributos de confiança (Windows Server 2003 Sp1 Only [- /] MitRealmName : Região MIT na qual ativar confiança RC4. [- /] TrustEncryp : Criptografia Confiável a ser utilizada; DES é o padrão [- /] TrustEncryp : Uma destas: [- /] TrustEncryp : RC4 : Região de Confiança RC4 (padrão) [- /] TrustEncryp : DES : Voltar para DES
Importante: Não utilize o comutador -pass no comando ktpass para reconfigurar uma senha para uma conta de servidor Microsoft Windows.Consulte Referência Técnica do Windows 2003 - Visão Geral do Ktpass para obter mais informações. Você deve usar a opção -mapUser com o comando ktpass para permitir que o KDC crie uma chave de criptografia. Caso contrário, quando o token do SPNEGO for recebido, ele falhará durante no processo de validação e o servidor de aplicativos exigirá do usuário um nome de usuário e uma senha.Dependendo do tipo de criptografia, use a ferramenta ktpass de uma das seguintes maneiras para criar o arquivo keytab do Kerberos. A seção a seguir mostra os diferentes tipos de criptografia que são usados pela ferramenta ktpass. É importante executar o comando ktpass -? para determinar qual valor de parâmetro -crypto é esperado pelo kit de ferramentas específico em seu ambiente do Microsoft Windows.O arquivo keytab Kerberos é criado para uso com SPNEGO TAI.- Para um único tipo de criptografia DESA partir de um prompt de comandos, execute o comando ktpass:
ktpass -out c:\temp\myappserver.keytab -princ HTTP/myappserver.austin.ibm.com@WSSEC.AUSTIN.IBM.COM -mapUser myappserv -mapOp set -pass was1edu -crypto DES-CBC-MD5 -pType KRB5_NT_PRINCIPAL +DesOnly
Tabela 1. Utilizando o ktpass para um Tipo de Criptografia DES Único. Esta tabela descreve como utilizar ktpass para um único tipo de criptografia DES.
Opção Explicação -out c:\temp\myappserver.keytab A chave é gravada para um arquivo de saída. -princ HTTP/myappserver.austin.ibm.com@WSSEC.AUSTIN.IBM.COM A concatenação do nome de logon do usuário e a região devem estar em maiúscula. -mapUser A chave é mapeada para o usuário, myappserver. -mapOp Essa opção configura o mapeamento. -pass was1edu Esta opção é a senha para o ID do usuário. -crypto DES-CBC-MD5 Esta opção utiliza o tipo de criptografia DES único. -pType KRB5_NT_PRINCIPAL Esta opção especifica o valor principal KRB5_NT_PRINCIPAL. Especifique esta opção para evitar mensagens de aviso do kit de ferramentas. +DesOnly Esta opção gera apenas criptografias DES. - Para o tipo de criptografia RC4-HMACImportante: A criptografia RC4-HMAC é suportada apenas ao utilizar um Windows 2003 Server como KDC.A partir de um prompt de comandos, execute o comando ktpass.
ktpass -out c:\temp\myappserver.keytab -princ HTTP/myappserver.austin.ibm.com@WSSEC.AUSTIN.IBM.COM -mapUser myappserver -mapOp set –pass was1edu -crypto RC4-HMAC -pType KRB5_NT_PRINCIPAL
Tabela 2. Utilizando o ktpass para o tipo de criptografia RC4-HMAC. Esta tabela identifica e descreve as opções ktpass para criptografia RC4-HMAC
Opção Explicação -out c:\temp\myappserver.keytab A chave é gravada para um arquivo de saída. -princ HTTP/myappserver.austin.ibm.com@WSSEC.AUSTIN.IBM.COM A concatenação do nome de logon do usuário e a região devem estar em maiúscula. -mapUser A chave é mapeada para o usuário, myappserver. -mapOp Essa opção configura o mapeamento. -pass was1edu Esta opção é a senha para o ID do usuário. -crypto RC4-HMAC Essa opção escolhe o tipo de criptografia RC4-HMAC. -pType KRB5_NT_PRINCIPAL Esta opção especifica o valor principal KRB5_NT_PRINCIPAL. Especifique esta opção para evitar mensagens de aviso do kit de ferramentas. - Para o tipo de criptografia RC4-HMAC-NTA partir de um prompt de comandos, execute o comando ktpass.
ktpass -out c:\temp\myappserver.keytab -princ HTTP/myappserver.austin.ibm.com@WSSEC.AUSTIN.IBM.COM -mapUser myappserver -mapOp set -pass was1edu -crypto RC4-HMAC-NT -pType KRB5_NT_PRINCIPAL
Tabela 3. Utilizando o ktpass para o tipo de criptografia RC4-HMAC. Esta tabela descreve o uso do ktpass para os tipos de criptografia RC4-HMAC. Opção Explicação -out c:\temp\myappserver.keytab A chave é gravada para um arquivo de saída. -princ HTTP/myappserver.austin.ibm.com@WSSEC.AUSTIN.IBM.COM A concatenação do nome de logon do usuário e a região devem estar em maiúscula. -mapUser A chave é mapeada para o usuário, myappserver. -mapOp Essa opção configura o mapeamento. -pass was1edu Esta opção é a senha para o ID do usuário. -crypto RC4-HMAC-NT Esta opção escolhe o tipo de criptografia RC4-HMAC-NT. -pType KRB5_NT_PRINCIPAL Esta opção especifica o valor principal KRB5_NT_PRINCIPAL. Especifique esta opção para evitar mensagens de aviso do kit de ferramentas.
Nota: Um arquivo de configuração keytab Kerberos contém uma lista das chaves que são análogas às senhas do usuário. É 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.Disponibilize o arquivo keytab para o WebSphere Application Server, ao copiar o arquivo krb5.keytab do Controlador de Domínio (máquina LDAP) para a máquina do WebSphere Application Server.ftp> bin ftp> put c:\temp\KRB5_NT_SEV_HST\krb5.keytab
- Para um único tipo de criptografia DES
Resultados
Seu controlador de domínio do Active Directory foi configurado corretamente para processar solicitações de conexão única para o WebSphere Application Server e para o SPNEGO TAI
Subtópicos
Utilizando o Comando ktab para Gerenciar o Arquivo ktab de Kerberos
O comando do gerenciador de tabelas de chaves do Kerberos (Ktab) permite que o administrador da produto gerencie os nomes principais e chaves de serviços de Kerberos armazenados em um arquivo keytab do Kerberos local. Com o IBM Software Development Kit (SDK) ou o Sun Java Development Kit (JDK) 1.6 ou posterior, você pode usar o comando ktab para mesclar dois arquivos keytab Kerberos.


http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tsec_SPNEGO_config_dc
Nome do arquivo: tsec_SPNEGO_config_dc.html