O mecanismo de autenticação Kerberos pode ser usado quando o
WebSphere Application Server e o servidor DB2 forem configurados para a autenticação
Kerberos. A autenticação Kerberos pode fornecer soluções interoperáveis de ponta a ponta de conexão única (SSO)
e preserva a identidade do solicitante original.
Antes de Iniciar
No servidor de aplicativos, você pode configurar uma origem de dados
DB2, o servidor de aplicativos e o aplicativo para que a origem de dados DB2 e o
servidor de aplicativos interoperem usando as credenciais Kerberos delegadas de uma maneira de
ponta a ponta para acesso ao banco de dados pelo aplicativo.
Para tirar proveito da autenticação
DB2 Kerberos usando as credenciais delegadas do servidor de aplicativos, conhecidas neste tópico
como
opção 1, você precisa configurar DB2 e o servidor de aplicativos para usar o Kerberos
como o mecanismo de autenticação. Consulte o tópico, suporte ao mecanismo de autenticação
"Kerberos (KRB5) para segurança" para aprender a configurar o Kerberos como o mecanismo de
autenticação nesta versão do servidor de aplicativos.
Os recursos XARecovery e
TestConnection do servidor de aplicativos não conseguem fornecer credenciais
Kerberos delegadas à origem de dados. Também pode haver situações em que o componente de
segurança do servidor de aplicativos não consegue fornecer credenciais
Kerberos delegadas para um determinado pedido de conexão. Para responsabilizar-se por estes casos,
você pode configurar uma conexão DB2 usando a autenticação Kerberos conhecida neste tópico como
opção 2. Para esta opção, devem ser fornecidos um ID do usuário e senha para o driver JDBC
que o driver usa para obter suas próprias credenciais Kerberos. Para usar esta opção, você deve
configurar um alias de dados de autenticação J2C no servidor de aplicativos
que define o ID do usuário e a senha que o driver DB2 JDBC usará para solicitar um Kerberos
Ticket Granting Ticket (TGT). O TGT é usado para autenticação do Kerberos para um servidor DB2. Para
o servidor de aplicativos, isso se parece muito com a autenticação típica de senha e ID de usuário.
Você deve usar um driver DB2 JDBC que suporta autenticação Kerberos
e está operando no modo do tipo 4. Os drivers JDBC suportados são:
- IBM Data Server Driver para JDBC e SQLJ (identificado no servidor de aplicativos como
DB2 usando IBM JCC Driver)
- IBM DB2 JDBC Universal Driver Architecture (identificado no servidor de aplicativos como
DB2 Universal JDBC Driver Provider)
Sobre Esta Tarefa
Use as seguintes etapas para configurar o servidor de aplicativos e o
DB2 para autenticação com o Kerberos:
Procedimento
- Configure a autenticação do DB2 Server para Kerberos. Consulte a
documentação de segurança do DB2 Kerberos no centro de informações DB2, por exemplo, o tópico
"Detalhes de Autenticação Kerberos".
Outra referência útil é "DB2 UDB Security, Parte 6" que está localizado no website
IBM developerWorks. Verifique se a autenticação DB2 Kerberos
está funcionando.
- Configure o servidor de aplicativos para usar a segurança Kerberos.
Consulte o tópico "Configurando Kerberos como Mecanismo de Autenticação Usando o Console
Administrativo". Verifique se a autenticação do Kerberos do servidor de aplicativos está funcionando.
- Configure a origem de dados DB2 no servidor de aplicativos para usar a autenticação do Kerberos. Existem duas etapas para concluir esta tarefa, você precisa configurar o adaptador de
recursos no servidor de aplicativos para transmitir as credenciais Kerberos e as credenciais de
senha para o driver JDBC e, em segundo lugar, você precisa configurar o driver JDBC para usar a
autenticação Kerberos ao conectar-se ao servidor DB2.
Para obter informações adicionais sobre a
conclusão dessas etapas, consulte o tópico
"Configurando uma Origem de Dados Usando o Console Administrativo".
Tabela 1. Propriedades e Valores Customizados. Ao configurar a origem de dados do DB2,
você deve prestar atenção principalmente nas configurações de segurança e nas propriedades customizadas.Nome |
Valor |
kerberosServerPrincipal Nota: Esta propriedade é opcional, exceto ao conectar a um servidor
DB2 que estejam em execução em uma plataforma z/OS (a partir de DB2 para LUW, v8 FP11).
|
user@REALM
ou
service_name/hostname@REALM
|
SecurityMechanism Nota: Um valor para esta propriedade de 11, indica que o driver
JDBC precisa usar autenticação Kerberos ao se conectar ao servidor DB2.
|
11 |
- Para a opção 2, você deve configurar o "Alias de Configuração de Mapeamento" para
"DefaultPrincipalMapping" ou outra configuração de login que não gera
GSSCredentials, e configurar o "Alias de Autenticação Gerenciado pelo Contêiner"
para fazer referência a um alias para usar o login Kerberos pelo driver JDBC. O recurso testConnection também usará este alias, se nenhum alias de autenticação
gerenciado pelo componente estiver configurado.
- Para a opção 1, as credenciais Kerberos delegadas, você deve configurar o
"Alias de Configuração de Mapeamento" para "KerberosMapping".
Isso indicará que o
adaptador de recursos no servidor de aplicativos deve fornecer credenciais delegadas ao driver
DB2 JDBC. O recurso testConnection e o recurso de recuperação de transação
XA não conseguem fornecer credenciais Kerberos delegadas, mas podem reverter para autenticação
da opção 2. Se você não precisar desses recursos, poderá selecionar
none para cada um dos alias de autenticação. Se testConnection for usado e um alias de autenticação válido for configurado, uma
mensagem informativa, DSRA8221I, será registrada. Essa mensagem indica que
testConnection não consegue oferecer credenciais Kerberos. Se nenhum alias estiver configurado,
testConnection falhará com um erro de credenciais inválidas Kerberos relatado pelo driver JDBC.
Importante: Se
KerberosMapping estiver configurado, mas o componente de segurança não conseguir fornecer credenciais
Kerberos para um determinado pedido de conexão, o adaptador de recursos poderá ser configurado para reverter
para autenticação de conexão usando o Mapeamento de Princípio Padrão. Para configurar
este fallback, selecione um alias a partir da lista de alias de autenticação gerenciado por contêiner. Para desativar este fallback, selecione none a partir da lista de alias de autenticação
gerenciado por contêiner.
- Para ativar o mapeamento Kerberos (opção 1), você também deve especificar a
autenticação gerenciada por contêiner. Para especificar a autenticação gerenciada por contêiner, o
aplicativo deve usar uma referência de recurso para consultar a origem de dados A
referência de recurso deve especificar KerberosMapping como a configuração de login. Se uma
configuração de login for especificada para uma referência de recurso e, em seguida, para acesso de
aplicativo através dessa referência de recurso, a configuração de login especificada terá
precedência sobre o valor de alias de configuração de mapeamento especificado na origem de dados. Um alias de autenticação gerenciado por contêiner também pode ser especificado na referência de recurso.