Configurar a autenticação Kerberos para instâncias de banco de dados do Amazon RDS para Db2
Você vai usar AWS Directory Service for Microsoft Active Directory (AWS Managed Microsoft AD) para configurar a autenticação Kerberos para uma instância de banco de dados do RDS para Db2 Para configurar a autenticação Kerberos, siga estas etapas:
Tópicos
Etapa 1: Criar um diretório usando o AWS Managed Microsoft AD
Etapa 2: Criar um perfil do IAM para o Amazon RDS acessar o AWS Directory Service
Etapa 4: Criar um grupo de administradores do RDS para Db2 no AWS Managed Microsoft AD
Etapa 5: Criar ou modificar uma instância de banco de dados do RDS para Db2
Etapa 1: Criar um diretório usando o AWS Managed Microsoft AD
O AWS Directory Service cria um Active Directory totalmente gerenciado na Nuvem AWS. Quando você cria um diretório AWS Managed Microsoft AD, o AWS Directory Service cria dois controladores de domínio e servidores DNS para você. Os servidores do diretório são criados em sub-redes diferentes em uma VPC. Essa redundância ajuda a garantir que o diretório permaneça acessível mesmo se ocorrer uma falha.
Ao criar um diretório do AWS Managed Microsoft AD, o AWS Directory Service executa as seguintes tarefas em seu nome:
-
Configura um Active Directory na VPC.
-
Cria uma conta de administrador do diretório com o nome de usuário
Admin
e a senha especificada. Use essa conta para gerenciar seu diretório.Importante
Certifique-se de salvar essa senha. O AWS Directory Service não armazena essa senha e não é possível recuperá-la ou redefini-la.
-
Cria um grupo de segurança para os controladores do diretório. O grupo de segurança deve permitir a comunicação com a instância de banco de dados do RDS para Db2.
Ao iniciar o AWS Directory Service for Microsoft Active Directory, a AWS cria uma unidade organizacional (UO) que contém todos os objetos do diretório. Essa UO, que tem o nome de NetBIOS que você digitou ao criar o diretório, está localizada na raiz do domínio. A raiz do domínio é controlada e de propriedade da AWS.
A conta Admin
, que foi criada com o diretório AWS Managed Microsoft AD, tem permissões para as atividades administrativas mais comuns da UO:
-
Crie, atualize ou exclua usuários.
-
Adicione recursos ao domínio, como servidores de arquivos ou de impressão, e atribua permissões para esses recursos aos usuários na UO.
-
Criar OUs adicionais e contêineres.
-
Delegar autoridade.
-
Restaure objetos excluídos da lixeira do Active Directory.
-
Execute os módulos Active Directory e Domain Name Service (DNS) para Windows PowerShell noAWS Directory Service.
A conta Admin
também possui direitos para executar as seguintes atividades de domínio:
-
Gerenciar configurações de DNS (adicionar, remover ou atualizar registros, zonas e encaminhadores).
-
Visualizar logs de eventos de DNS.
-
Visualizar logs de eventos de segurança.
Como criar um diretório com AWS Managed Microsoft AD
Faça login no AWS Management Console e abra o console do AWS Directory Service em https://console.aws.amazon.com/directoryservicev2/
. -
Selecione Configurar diretório.
-
Selecione AWS Managed Microsoft AD. O AWS Managed Microsoft AD é a única opção atualmente aceita para uso com o Amazon RDS.
-
Escolha Next (Próximo).
-
Na página Enter directory information (Inserir informações do diretório), forneça as seguintes informações:
-
Edição: selecione a edição que atenda aos requisitos.
-
Nome do DNS do diretório : o nome totalmente qualificado do diretório, como
corp.example.com
. -
Nome de NetBIOS do diretório : um nome curto opcional do diretório, como
CORP
. -
Descrição do diretório: uma descrição opcional do diretório.
-
Senha do administrador : a senha do administrador do diretório. O processo de criação do diretório cria uma conta de administrador com o nome de usuário
Admin
e essa senha.A senha do administrador do diretório não pode incluir a palavra "admin". A senha diferencia letras maiúsculas de minúsculas e deve ter entre 8 e 64 caracteres. Ela também precisa conter pelo menos um caractere de três das quatro categorias a seguir:
-
Letras minúsculas (a–z)
-
Letras maiúsculas (A–Z)
-
Números (0–9)
-
Caracteres não alfanuméricos (~!@#$%^&*_-+=`|\(){}[]:;"'<>,.?/)
-
Confirmar senha: digite a senha do administrador novamente.
Importante
Salve essa senha. O AWS Directory Service não armazena essa senha e não é possível recuperá-la ou redefini-la.
-
-
-
Escolha Next (Próximo).
-
Na página Choose VPC and subnets (Selecionar VPC e sub-redes), forneça as seguintes informações:
-
VPC: selecione a VPC do diretório. É possível criar a instância de banco de dados do RDS para Db2 nessa mesma VPC ou em outra VPC.
-
Sub-redes: selecione as sub-redes para os servidores do diretório. As duas sub-redes deve estar em diferentes zonas de disponibilidade.
-
-
Escolha Next (Próximo).
-
Analise as informações do diretório. Se alterações forem necessárias, escolha Previous (Anterior) e faça as alterações. Quando as informações estiverem corretas, escolha Create directory (Criar diretório).
A criação do diretório leva vários minutos. Depois que o diretório tiver sido criado com sucesso, o valor de Status muda para Active (Ativo).
Para ver as informações sobre o diretório, selecione o ID do diretório em ID do diretório. Anote o valor do Directory ID (ID do diretório). Esse valor será necessário ao criar ou modificar a instância de banco de dados do RDS para Db2.

Etapa 2: Criar um perfil do IAM para o Amazon RDS acessar o AWS Directory Service
Para que o Amazon RDS chame o AWS Directory Service para você, a Conta da AWS precisa de um perfil do IAM que use a política gerenciada do IAM AmazonRDSDirectoryServiceAccess
. Esse perfil permite que o Amazon RDS faça chamadas ao AWS Directory Service.
Quando você cria uma instância de banco de dados usando o AWS Management Console e a conta do usuário do console tiver a permissão iam:CreateRole
, o console criará o perfil do IAM necessário automaticamente. Nesse caso, o nome da função é rds-directoryservice-kerberos-access-role
. Caso contrário, é necessário criar a função do IAM manualmente. Ao criar essa função do IAM, escolha Directory Service
e associe a AWS política gerenciada da AmazonRDSDirectoryServiceAccess
a ela.
Para ter mais informações sobre como criar funções do IAM para um serviço, consulte o tópico sobre como Criar uma função para delegar permissões a um serviço da AWS, no Guia do usuário do IAM.
nota
O perfil do IAM usado para a autenticação Windows para RDS para o Microsoft SQL Server não pode ser usado para o RDS para Db2.
Como alternativa ao uso da política gerenciada pelo AmazonRDSDirectoryServiceAccess
, você pode criar políticas com as permissões exigidas. Nesse caso, o perfil do IAM deve ter a seguinte política de confiança do IAM:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": [ "directoryservice.rds.amazonaws.com", "rds.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }
O perfil também deve ter a seguinte política de perfil do IAM:
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "ds:DescribeDirectories", "ds:AuthorizeApplication", "ds:UnauthorizeApplication", "ds:GetAuthorizedApplicationDetails" ], "Effect": "Allow", "Resource": "*" } ] }
Etapa 3: Criar e configurar usuários
É possível criar usuários utilizando a ferramenta Active Directory Users and Computers. Essa é uma das ferramentas Active Directory Domain Services e Active Directory Lightweight Directory Services. Para ter mais informações, consulte Add Users and Computers to the Active Directory domain
Para criar usuários em um diretório do AWS Directory Service, é necessário estar conectado a uma instância do Amazon EC2 baseada no Windows que seja membro do diretório do AWS Directory Service. Ao mesmo tempo, é necessário estar conectado como um usuário que tenha privilégios para criar usuários. Para obter mais informações, consulte Criar um usuário no Guia de administração do AWS Directory Service.
Etapa 4: Criar um grupo de administradores do RDS para Db2 no AWS Managed Microsoft AD
O RDS para Db2 não é compatível com a autenticação Kerberos para o usuário principal ou para os dois usuários reservados rdsdb
e rdsadmin
do Amazon RDS. Em vez disso, você precisa criar um grupo chamado masterdba
no AWS Managed Microsoft AD. Para ter mais informações, consulte Create a Group Account in Active Directory
Depois de habilitar a autenticação Kerberos, o usuário principal perde o perfil masterdba
. Como resultado, o usuário principal não conseguirá acessar a associação do grupo de usuários local da instância, a menos que você desabilite a autenticação Kerberos. Para continuar utilizando o usuário principal com login por senha, crie um usuário no AWS Managed Microsoft AD com o mesmo nome do usuário principal. Depois, adicione esse usuário ao grupo masterdba
.
Etapa 5: Criar ou modificar uma instância de banco de dados do RDS para Db2
Crie ou modifique uma instância de banco de dados do RDS para Db2 para ser usada com o diretório. É possível usar o AWS Management Console, a AWS CLI ou a API do RDS para associar uma instância de banco de dados a um diretório. Você pode fazer isso por meio de uma das seguintes maneiras:
-
Crie uma instância de banco de dados do RDS para Db2 usando o console, o comando create-db-instance ou a operação da API CreateDBInstance. Para obter instruções, consulte Criar uma instância de banco de dados do Amazon RDS.
-
Modifique uma instância de banco de dados do RDS para Db2 existente usando o console, o comando modify-db-instance ou a operação da API ModifyDBInstance. Para obter instruções, consulte Modificar uma instância de banco de dados do Amazon RDS.
-
Restaure uma instância de banco de dados do RDS para Db2 de um snapshot de banco de dados usando o console, o comando restore-db-instance-from-db-snapshot ou a operação da API RestoreDBInstanceFromDBSnapshot. Para obter instruções, consulte Restaurar uma instância de banco de dados.
-
Restaure uma instância de banco de dados do RDS para Db2 para um ponto no tempo usando o console, o comando restore-db-instance-to-point-in-time ou a operação da API RestoreDBInstanceToPointInTime. Para obter instruções, consulte Restaurar uma instância de banco de dados para um momento especificado no Amazon RDS.
A autenticação Kerberos só é compatível com instâncias de banco de dados do RDS para Db2 em uma VPC. A instância de banco de dados pode estar na mesma VPC do diretório ou em uma VPC diferente. A instância de banco de dados deve usar um grupo de segurança que permita a entrada e a saída na VPC do diretório para que a instância de banco de dados possa se comunicar com o diretório.
Ao usar o console para criar, modificar ou restaurar uma instância de banco de dados, selecione Senha e autenticação Kerberos na seção Autenticação de banco de dados. Em seguida, escolha Browse Directory (Procurar diretório). Selecione o diretório ou escolha Criar diretório para usar o Directory Service.

Quando você usa a AWS CLI, são necessários os seguintes parâmetros para que a instância de banco de dados possa usar o diretório criado:
-
Para o parâmetro
--domain
, use o identificador de domínio (identificador “d-*
”) gerado quando o diretório foi criado. -
Para o parâmetro
--domain-iam-role-name
, use a função criada que usa a política gerenciadaAmazonRDSDirectoryServiceAccess
do IAM.
O exemplo a seguir modifica uma instância de banco de dados para usar um diretório. Substitua os seguintes placeholders no exemplo pelos próprios valores:
-
db_instance_name
: o nome da instância de banco de dados do RDS para Db2. -
directory_id
: o ID do diretório do AWS Directory Service for Microsoft Active Directory que você criou. -
role_name
: o nome do perfil do IAM criado.
aws rds modify-db-instance --db-instance-identifier
db_instance_name
--domain d-directory_id
--domain-iam-role-namerole_name
Importante
Se você modificar uma instância de banco de dados para habilitar a autenticação Kerberos, reinicialize a instância de banco de dados depois de fazer a alteração.
Etapa 6: Configurar um cliente Db2
Como configurar um cliente Db2
-
Crie um arquivo /etc/krb5.conf (ou equivalente) para apontar para o domínio.
nota
Para sistemas operacionais Windows, crie um arquivo C:\windows\krb5.ini.
-
Verifique se o tráfego pode fluir entre o host do cliente e o AWS Directory Service. Use um utilitário de rede, como o Netcat, para as seguintes tarefas:
-
Verifique o tráfego pelo DNS da porta 53.
-
Verifique o tráfego pelo TCP/UDP da porta 53 e do Kerberos, que inclui as portas 88 e 464 do AWS Directory Service.
-
-
Verifique se o tráfego pode fluir entre o host do cliente e a instância de banco de dados pela porta do banco de dados. É possível usar o comando
db2
para conectar e acessar o banco de dados.
O seguinte exemplo é o conteúdo do arquivo /etc/krb5.conf para o AWS Managed Microsoft AD:
[libdefaults] default_realm = EXAMPLE.COM [realms] EXAMPLE.COM = { kdc = example.com admin_server = example.com } [domain_realm] .example.com = EXAMPLE.COM example.com = EXAMPLE.COM