Alternar as credenciais do RDS Custom para Oracle para programas de conformidade - Amazon Relational Database Service

Alternar as credenciais do RDS Custom para Oracle para programas de conformidade

Alguns programas de conformidade exigem que as credenciais do usuário do banco de dados sejam alteradas periodicamente, por exemplo, a cada 90 dias. O RDS Custom para Oracle alterna automaticamente as credenciais de alguns usuários predefinidos do banco de dados.

Alternância automática de credenciais para usuários predefinidos

Se sua instância de banco de dados do RDS Custom para Oracle estiver hospedada no Amazon RDS, as credenciais dos seguintes usuários predefinidos da Oracle serão alternadas automaticamente a cada 30 dias. As credenciais dos usuários anteriores residem em AWS Secrets Manager.

Usuário do banco de dadosCriado porVersões compatíveis do mecanismoObservações

SYS

Oracle

custom-oracle-ee

custom-oracle-ee-cdb

custom-oracle-se2

custom-oracle-se2-cdb

SYSTEM

Oracle

custom-oracle-ee

custom-oracle-ee-cdb

custom-oracle-se2

custom-oracle-se2-cdb

RDSADMIN

RDS

custom-oracle-ee

custom-oracle-se2

C##RDSADMIN

RDS

custom-oracle-ee-cdb

custom-oracle-se2-cdb

Nomes de usuário com um prefixo C## só existem em CDBs. Para ter mais informações sobre CDBs, consulte Visão geral da arquitetura do Amazon RDS Custom para Oracle.

RDS_DATAGUARD

RDS

custom-oracle-ee

Esse usuário existe somente em réplicas de leitura, bancos de dados de origem para réplicas de leitura e bancos de dados que você migrou fisicamente para o RDS Custom usando o Oracle Data Guard.

C##RDS_DATAGUARD

RDS

custom-oracle-ee-cdb

Esse usuário existe somente em réplicas de leitura, bancos de dados de origem para réplicas de leitura e bancos de dados que você migrou fisicamente para o RDS Custom usando o Oracle Data Guard. Nomes de usuário com um prefixo C## só existem em CDBs. Para ter mais informações sobre CDBs, consulte Visão geral da arquitetura do Amazon RDS Custom para Oracle.

Uma exceção à alternância automática de credenciais é uma instância de banco de dados do RDS Custom para Oracle que você configurou manualmente como um banco de dados de espera. O RDS alterna somente as credenciais para réplicas de leitura que você criou usando o comando create-db-instance-read-replica DA CLI ou a API CreateDBInstanceReadReplica.

Diretrizes para alternância de credenciais de usuário

Para garantir que suas credenciais sejam alternadas de acordo com seu programa de conformidade, observe as seguintes diretrizes:

  • Se sua instância de banco de dados alternar as credenciais automaticamente, não altere nem exclua manualmente um segredo, um arquivo de senha ou uma senha para usuários listados em Usuários predefinidos da Oracle. Caso contrário, o RDS Custom pode colocar sua instância de banco de dados fora do perímetro de suporte, o que suspende a alternância automática.

  • O usuário principal do RDS não é predefinido, então você é responsável por alterar a senha manualmente ou configurar a alternância automática no Secrets Manager. Para ter mais informações, consulte Alternar segredos do AWS Secrets Manager.

Alternar manualmente as credenciais do usuário

Para as seguintes categorias de bancos de dados, o RDS não alterna automaticamente as credenciais dos usuários listados em Usuários predefinidos da Oracle:

  • Um banco de dados que você configurou manualmente para funcionar como um banco de dados de espera.

  • Um banco de dados on-premises.

  • Uma instância de banco de dados que está fora do perímetro de suporte ou em um estado em que a automação do RDS Custom não pode ser executada. Nesse caso, o RDS Custom também não alterna as chaves.

Se seu banco de dados estiver em qualquer uma das categorias anteriores, você deverá alternar suas credenciais de usuário manualmente.

Como alternar as credenciais do usuário manualmente para uma instância de banco de dados
  1. Faça login no AWS Management Console e abra o console do Amazon RDS em https://console.aws.amazon.com/rds/.

  2. Em Bancos de dados, garanta que o RDS não esteja fazendo backup de sua instância de banco de dados nem realizando operações como configuração de alta disponibilidade.

  3. Na página de detalhes do banco de dados, selecione Configuração e anote o ID do recurso para a instância de banco de dados. Você pode usar o comando describe-db-instances da AWS CLI.

  4. Abra o console do Secrets Manager em https://console.aws.amazon.com/secretsmanager/.

  5. Na caixa de pesquisa, insira o ID do recurso de banco de dados e localize o segredo no seguinte formato:

    do-not-delete-rds-custom-db-resource-id-numeric-string

    Esse segredo armazena a senha para RDSADMIN, SYS e SYSTEM. O exemplo de chave a seguir é para a instância de banco de dados com o ID do recurso de banco de dados db-ABCDEFG12HIJKLNMNOPQRS3TUVWX:

    do-not-delete-rds-custom-db-ABCDEFG12HIJKLNMNOPQRS3TUVWX-123456
    Importante

    Se sua instância de banco de dados for uma réplica de leitura e usar o mecanismo custom-oracle-ee-cdb, haverá dois segredos com o sufixo db-resource-id-numeric-string, um para o usuário principal e outro para RDSADMIN, SYS e SYSTEM. Para encontrar o segredo correto, execute o seguinte comando no host:

    cat /opt/aws/rdscustomagent/config/database_metadata.json | python3 -c "import sys,json; print(json.load(sys.stdin)['dbMonitoringUserPassword'])"

    O atributo dbMonitoringUserPassword indica o segredo para RDSADMIN, SYS e SYSTEM.

  6. Se sua instância de banco de dados existir em uma configuração do Oracle Data Guard, encontre o segredo no seguinte formato:

    do-not-delete-rds-custom-db-resource-id-numeric-string-dg

    Esse segredo armazena a senha para RDS_DATAGUARD. O exemplo de chave a seguir é para a instância de banco de dados com o ID do recurso de banco de dados db-ABCDEFG12HIJKLNMNOPQRS3TUVWX:

    do-not-delete-rds-custom-db-ABCDEFG12HIJKLNMNOPQRS3TUVWX-789012-dg
  7. Para todos os usuários do banco de dados listados em Usuários predefinidos da Oracle, atualize as senhas seguindo as instruções em Modificar um segredo do AWS Secrets Manager.

  8. Se seu banco de dados for um banco de dados independente ou de origem em uma configuração do Oracle Data Guard:

    1. Inicie seu cliente Oracle SQL e faça login como SYS.

    2. Execute uma instrução SQL no seguinte formato para cada usuário do banco de dados listado em Usuários Oracle predefinidos:

      ALTER USER user-name IDENTIFIED BY pwd-from-secrets-manager ACCOUNT UNLOCK;

      Por exemplo, se a nova senha do RDSADMIN armazenada no Secrets Manager for pwd-123, execute a seguinte instrução:

      ALTER USER RDSADMIN IDENTIFIED BY pwd-123 ACCOUNT UNLOCK;
  9. Se sua instância de banco de dados executa o Oracle Database 12c Release 1 (12.1) e é gerenciada pelo Oracle Data Guard, copie manualmente o arquivo de senha (orapw) da instância de banco de dados primária para cada instância de banco de dados de espera.

    Se sua instância de banco de dados estiver hospedada no Amazon RDS, o local do arquivo de senha será /rdsdbdata/config/orapw. Para bancos de dados que não estão hospedados no Amazon RDS, o local padrão é $ORACLE_HOME/dbs/orapw$ORACLE_SID no Linux e no UNIX e %ORACLE_HOME%\database\PWD%ORACLE_SID%.ora no Windows.