As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
A partir da DMS v3.5.3, você pode configurar seu endpoint de origem Oracle ou SQL Server para se conectar à sua instância de banco de dados usando a autenticação Kerberos. DMSsuporta AWS Directory Service a autenticação do Microsoft Active Directory e Kerberos. Para obter mais informações sobre o acesso AWS gerenciado aos Serviços do Microsoft Active Directory, consulte O que é AWS Directory Service? .
AWS DMS Visão geral da arquitetura de autenticação Kerberos
O diagrama a seguir fornece uma visão geral de alto nível do fluxo de trabalho de autenticação AWS DMS Kerberos.
![Arquitetura de autenticação Kerberos](images/datarep-kerberos-architecture.jpg)
Limitações no uso da autenticação Kerberos com AWSAWS DMS
As seguintes limitações se aplicam ao usar a autenticação Kerberos com: AWS AWS DMS
DMSas instâncias de replicação oferecem suporte a um arquivo Kerberos e a um
krb5.conf
arquivo keycache.Você deve atualizar o arquivo de keycache do Kerberos no Secrets Manager pelo menos 30 minutos antes da expiração do ticket.
Um DMS endpoint habilitado para Kerberos só funciona com uma instância de replicação habilitada para Kerberos. DMS
Pré-requisitos
Para começar, você deve preencher os seguintes pré-requisitos em um host existente autenticado pelo Active Directory ou Kerberos:
Estabeleça uma relação de confiança do Active Directory com seu AD local. Para obter mais informações, consulte Tutorial: Crie uma relação de confiança entre seu Microsoft AD AWS gerenciado e seu domínio autogerenciado do Active Directory.
Prepare uma versão simplificada do arquivo de
krb5.conf
configuração do Kerberos. Inclua informações sobre o reino, a localização dos servidores de administração do domínio e mapeamentos de nomes de host em um reino Kerberos. Você precisa verificar se okrb5.conf
conteúdo está formatado com a combinação correta de maiúsculas e minúsculas para os domínios e os nomes dos domínios. Por exemplo:[libdefaults] dns_lookup_realm = true dns_lookup_kdc = true forwardable = true default_realm = MYDOMAIN.ORG [realms] MYDOMAIN.ORG = { kdc = mydomain.org admin_server = mydomain.org } [domain_realm] .mydomain.org = MYDOMAIN.ORG mydomain.org = MYDOMAIN.ORG
Prepare um arquivo de keycache Kerberos. O arquivo contém uma credencial Kerberos temporária das informações principais do cliente. O arquivo não armazena a senha do cliente. Sua DMS tarefa usa essas informações de ticket de cache para obter credenciais adicionais sem uma senha. Execute as etapas a seguir em um host existente autenticado pelo Active Directory ou Kerberos para gerar um arquivo keycache.
Crie um arquivo keytab Kerberos. Você pode gerar um arquivo keytab usando o utilitário kutil ou ktpass.
Para obter mais informações sobre o utilitário Microsoft ktpass, consulte ktpass
na documentação do Windows Server. Para obter mais informações sobre o utilitário MIT kutil, consulte kutil
na documentação do MITKerberos. Crie um arquivo de keycache Kerberos a partir do arquivo keytab usando o utilitário kinit. Para obter mais informações sobre o utilitário kinit, consulte kinit
na documentação do MITKerberos.
-
Armazene o arquivo de keycache do Kerberos no Secrets Manager usando o parâmetro.
SecretBinary
Quando você carrega o arquivo keycache para o Secrets Manager, ele é DMS recuperado e, em seguida, atualiza o arquivo de cache local a cada 30 minutos. Quando o arquivo de cache de chaves local excede a data e hora de expiração predefinida, interrompe a tarefa normalmenteDMS. Para evitar falhas de autenticação durante uma tarefa de replicação contínua, atualize o arquivo keycache no Secrets Manager pelo menos 30 minutos antes da expiração do ticket. Para obter mais informações, consulte createsecret na Referência do Secrets Manager. API O exemplo a seguir AWS CLI mostra como armazenar o arquivo keycache em formato binário no Secrets Manager:aws secretsmanager create-secret —name keycache —secret-binary fileb:
//keycachefile
Conceda uma IAM função
GetSecretValue
eDescribeSecret
permissões para obter o arquivo keycache do Secrets Manager. Certifique-se de que a IAM função inclua a política dedms-vpc-role
confiança. Para obter mais informações sobre a política dedms-vpc-role
confiança, consulteCriando as IAM funções a serem usadas com AWS DMS.
O exemplo a seguir mostra uma política de IAM função com o Secrets Manager GetSecretValue
e DescribeSecret
as permissões. O <keycache_secretsmanager_arn>
valor é o Keycache Secrets Manager ARN que você criou na etapa anterior.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret" ], "Resource": [
<keycache_secretsmanager_arn>
] } ] }
Habilitando o suporte ao Kerberos em uma instância de AWS DMS replicação
Os reinos Kerberos são idênticos aos domínios no Windows. Para resolver um domínio principal, o Kerberos depende de um serviço de nomes de domínio (). DNS Quando você define o dns-name-servers
parâmetro, sua instância de replicação usará seu conjunto personalizado predefinido de DNS servidores para resolver os domínios do domínio Kerberos. Outra opção alternativa para resolver consultas de região do Kerberos é configurar o Amazon Route 53 na nuvem privada virtual da instância de replicação (). VPC Para obter mais informações, consulte Route 53.
Habilitando o suporte ao Kerberos em uma instância de DMS replicação usando o AWS Management Console
Para habilitar o suporte ao Kerberos usando o console, insira as seguintes informações na seção Autenticação Kerberos da página Criar instância de replicação ou Modificar instância de replicação:
O conteúdo do seu
krb5.conf
arquivoO segredo ARN do Secrets Manager que contém o arquivo keycache
A ARN da IAM função que tem acesso ao gerenciador secreto ARN e permissões para recuperar o arquivo keycache
Habilitando o suporte ao Kerberos em uma instância de DMS replicação usando o AWS CLI
O AWS CLI exemplo de chamada a seguir cria uma instância de DMS replicação privada com suporte a Kerberos. A instância de replicação usa um personalizado DNS para resolver o realm Kerberos. Para obter mais informações, consulte create-replication-instance.
aws dms create-replication-instance --replication-instance-identifier my-replication-instance --replication-instance-class dms.t2.micro --allocated-storage 50 --vpc-security-group-ids sg-12345678 --engine-version 3.5.4 --no-auto-minor-version-upgrade --kerberos-authentication-settings'{"KeyCacheSecretId":<secret-id>,"KeyCacheSecretIamArn":<secret-iam-role-arn>,"Krb5FileContents":<krb5.conf file contents>}' --dns-name-servers
<custom dns server>
--no-publicly-accessible
Habilitando o suporte Kerberos em um endpoint de origem
Antes de habilitar a autenticação Kerberos em um endpoint de origem SQL do servidor ou DMS Oracle, verifique se você pode se autenticar no banco de dados de origem usando o protocolo Kerberos de uma máquina cliente. Você pode usar o AWS DMS Diagnóstico AMI para iniciar uma EC2 instância da Amazon na VPC mesma instância de replicação e, em seguida, testar a autenticação kerberos. Para obter mais informações sobre o AMI, consulte Como trabalhar com a AMI compatível com o diagnóstico do AWS DMS.
Usar o console de AWS DMS
Em Acesso ao banco de dados do endpoint, escolha Autenticação Kerberos.
Usando o AWS CLI
Especifique o parâmetro de configuração do endpoint e defina a AuthenticationMethod
opção como kerberos. Por exemplo:
Oracle
aws dms create-endpoint --endpoint-identifier my-endpoint --endpoint-type source --engine-name oracle --username dmsuser@MYDOMAIN.ORG --server-name
mydatabaseserver
--port 1521 --database-namemydatabase
--oracle-settings "{\"AuthenticationMethod\": \"kerberos\"}"
SQLServidor
aws dms create-endpoint --endpoint-identifier my-endpoint --endpoint-type source --engine-name sqlserver --username dmsuser@MYDOMAIN.ORG --server-name
mydatabaseserver
--port 1433 --database-namemydatabase
--microsoft-sql-server-settings "{\"AuthenticationMethod\": \"kerberos\"}"
Testando um endpoint de origem
Você deve testar o endpoint habilitado para Kerberos em relação a uma instância de replicação habilitada para Kerberos. Quando você não configura adequadamente a instância de replicação ou o endpoint de origem para a autenticação Kerberos, a test-connection
ação do endpoint falhará e poderá retornar erros relacionados ao Kerberos. Para obter mais informações, consulte test-connection