Configurar Autenticação Kerberos
Para ativar a autenticação do Kerberos no Oracle GoldenGate for Oracle AI Database, as seguintes configurações são assumidas:
-
O Kerberos KDC está configurado e o sistema Kerberos está instalado localmente.
-
Os Principais do Kerberos são configurados para Usuários de Banco de Dados autenticados externamente.
-
Os Caches do Kerberos são configurados localmente para cada Principal do Kerberos.
-
O Oracle Net Services está configurado corretamente.
-
Os arquivos de parâmetros do Servidor Oracle são configurados com as definições relacionadas ao Kerberos.
-
Os usuários do banco de dados autenticados externamente são criados com os privilégios adequados.
-
A variável de ambiente
TNS_ADMINestá configurada para o Oracle GoldenGate.
Implementar e Usar uma Conta do Kerberos para Acessar o Oracle AI Database do Oracle GoldenGate
Para iniciar a autenticação do Kerberos na Arquitetura de Microsserviços do Oracle GoldenGate, primeiro crie um alias de conta de usuário do banco de dados antes de usar DBLOGIN.
CONNECT http://localhost:9005 as ggadmin password We1come_$
A amostra a seguir usa a implantação demo para configurar o alias do ID do usuário para uma conta kerberos:
ALTER CREDENTIALSTORE ADD USER
/@EAST nopassword alias dbeast
2020-06-22T21:08:33Z INFO OGG-15102 Credential store created.
2020-06-22T21:08:33Z INFO OGG-15114 Credential store altered.
INFO CREDENTIALSTORE
Default domain: OracleGoldenGate
Alias: dbeast
Userid: /@EAST
DBLOGIN USERIDALIAS dbeast
Successfully logged into database EAST.
Aqui, o NET SERVICE é o nome simples do serviço de banco de dados. Como alternativa, uma string de conexão completa (descritor) pode ser usada em vez do nome do serviço de rede Oracle.
Veja um exemplo de um nome de serviço de rede predefinido e mapeamento de descritor de conexão:
EAST = (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=db1))
(CONNECT_DATA=(SERVICE_NAME=EAST.regress.rdbms.test.us.oracle.com)))
Um comando DBLOGIN válido sem USERID e senha pode ser especificado como:
DBLOGIN USERID /@EAST
Para saber mais, consulte os comandos ALTER CREDENTIALSTORE, DBLOGIN USERIDALIAS e MININGDBLOGIN. Consulte também os parâmetros USERIDALIAS.
No Oracle GoldenGate, se você quiser emitir o comando DBLOGIN com diferentes usuários autenticados externamente, o uso de um local de cache padrão do Kerberos será especificado no arquivo SQLNET.ORA. Este é, então, considerado o usuário autenticado externamente para fazer login no banco de dados.
Por exemplo, observe um local do Cache do Kerberos especificado no arquivo SQLNET.ORA do cliente:
SQLNET.KERBEROS5_CONF = /test/b/1234567890/oracle/work/krb/krb.conf
SQLNET.KERBEROS5_KEYTAB = /test/b/9876543210/oracle/work/krb/v5srvtab
SQLNET.KERBEROS5_CC_NAME = /test/b/1234506789/oracle/work/krb/krb.cc
Neste exemplo, o krb.cc é o Cache Kerberos usado nesta implantação do Oracle GoldenGate. Se você abrir o arquivo de cache krb.cc com o utilitário oklist, poderá ver que o principal padrão é usado como o usuário autenticado externamente oratst@US.ORACLE.COM.
[ demo_vw2 ] [demo@test02swv krb]$ oklist krb.cc
Kerberos Utilities for Linux: Version 21.0.0.0.0 - Production on 27-JUN-2025 23:59:13
Copyright (c) 1996, 2025 Oracle. All rights reserved.
Configuration file : /test/b/1234567890/oracle/work/krb/krb.conf
Ticket cache: FILE:krb.cc
Default principal: oratst@US.ORACLE.COM
Valid starting Expires Service principal
06/27/20 12:12:34 06/28/20 12:12:34 krbtst/US.ORACLE.COM@US.ORACLE.COM
06/27/20 12:12:34 06/28/20 12:12:34 oratst/demo2swv.us.oracle.com@US.ORACLE.COM
Configurar Autenticação do Kerberos com MA
Aqui estão as etapas para configurar a autenticação kerberos do Admin Client. A partir do Oracle GoldenGate 26ai, você pode usar a opção NOPASSWORD ou uma palavra-chave KERBEROS para configurar as credenciais de uma conta do kerberos.
Conecte-se ao Administration Service pelo Admin Client:
CONNECT http://localhost:9005 DEPLOYMENT oggdep as ggadmin PASSWORD We1come_$
Altere o armazenamento de credenciais após estabelecer conexão com o Serviço de Administração da implantação oggdep, usando KERBEROS:
ALTER CREDENTIALSTORE ADD USER /@dbwest ALIAS ggwest KERBEROS ALIAS u1alias;
A saída mostra:
2020-06-22T21:08:33Z INFO OGG-15102 Credential store created.
2020-06-22T21:08:33Z INFO OGG-15114 Credential store altered.
Se você usar a opção NOPASSWORD, o comando será semelhante ao seguinte:
ALTER CREDENTIALSTORE ADD USER /@dbwest NOPASSWORD ALIAS u1alias;
Execute o seguinte comando para verificar se o credentialstore foi alterado com sucesso:
INFO CREDENTIALSTORE
A saída exibe o seguinte:
Default domain: OracleGoldenGate
Alias: ggeast
Userid: /@DBEAST
Type: Kerberos
Ao usar a UI da Web do MA para criar a credencial, se o campo ID do Usuário começar com um caractere /, a senha não será obrigatória. Portanto, no campo ID do Usuário, digite /connect_string, em que connect_string é sua string de conexão.
Aqui, o NET SERVICE é o nome simples do serviço de banco de dados. Como alternativa, uma string de conexão completa (descritor) pode ser usada em vez do nome do serviço de rede Oracle.
Veja um exemplo de um nome de serviço de rede predefinido e mapeamento de descritor de conexão:
DBEAST = (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=db1))
(CONNECT_DATA=(SERVICE_NAME=DBEAST.regress.rdbms.test.example.com)))
Exemplo: Usando USERIDALIAS no Arquivo de Parâmetros da Conta Kerberos
O exemplo a seguir mostra como definir os valores USERIDALIAS no arquivo de parâmetros após criar o armazenamento de credenciais com autenticação Kerberos:
Considere que a sintaxe antiga e a nova funcionam.
Autenticação do Kerberos usando a palavra-chave KERBEROS:
ALTER CREDENTIALSTORE ADD USER /@ggadmin KERBEROS ALIAS u1alias;
Autenticação do Kerberos com NOPASSWORD
ALTER CREDENTIALSTORE ADD USER /@ggadmin NOPASSWORD ALIAS ggadmin
2020-12-17T21:08:33
INFO OGG-15102 Credential store created.2020-12-17T21:08:33
INFO OGG-15114 Credential store altered.
ALTER CREDENTIALSTORE ADD USER /@ggadmin_mining NOPASSWORD ALIAS ggadmin_mining
2020-12-17T21:09:45
INFO OGG-15102 Credential store created.2020-12-17T21:09:45
INFO OGG-15114 Credential store altered.
INFO CREDENTIALSTORE
A saída do comando é a seguinte:
Default domain: OracleGoldenGate
Alias: ggadmin
Userid: /@ggadmin
Type: Kerberos
Default domain: OracleGoldenGate
Alias: ggadmin_mining
Userid: /@ggadmin_mining
Type: Kerberos
Após alterar o armazenamento de credenciais, você pode especificar as opções USERIDALIAS no arquivo de parâmetros:
USERIDALIAS ggadmin
DOMAIN OracleGoldenGate
TRANLOGOPTIONS MININUSERIDLIAS ggadmin_mining
DOMAIN OracleGoldenGate