Usar Credenciais de Segredo do Vault com o Oracle Cloud Infrastructure Vault

Descreve o uso de credenciais de segredo do vault, em que o segredo (senha) é armazenado como segredo no Oracle Cloud Infrastructure Vault.

Você pode usar credenciais secretas do vault para acessar recursos da nuvem, acessar outros bancos de dados com links de banco de dados ou usar em qualquer lugar em que as credenciais de tipo de nome de usuário/senha sejam necessárias.

Pré-requisitos para Criar Credenciais de Segredo do Vault com o Oracle Cloud Infrastructure Vault

Descreve as etapas de pré-requisito necessárias para usar credenciais de segredo do vault com segredos do Oracle Cloud Infrastructure Vault.

Para criar credenciais de segredo do vault onde o segredo está armazenado no Oracle Cloud Infrastructure Vault, primeiro execute os pré-requisitos necessários.

  1. Crie um vault e um segredo no vault com o Oracle Cloud Infrastructure Vault.

    Para obter mais informações, consulte as instruções para criar um vault e um segredo, Gerenciando Vaults e Visão Geral do Serviço Key Management.

  2. Configure um grupo dinâmico para fornecer acesso ao segredo no Oracle Cloud Infrastructure Vault.

    Crie um grupo dinâmico para a instância do Autonomous Database na qual você deseja criar uma credencial secreta do vault:

    1. Na console do Oracle Cloud Infrastructure, clique em Identidade e Segurança.
    2. Em Identidade, clique em Domínios e selecione um domínio de identidades (ou crie um novo domínio de identidades).
    3. Em Domínio de identidades, clique em Grupos dinâmicos.
    4. Clique em Criar grupo dinâmico e digite um Nome, uma Descrição e uma regra.
      • Criar Grupo Dinâmico para um banco de dados existente:

        Você pode especificar que uma instância do Autonomous Database faça parte do grupo dinâmico. O grupo dinâmico no exemplo a seguir inclui apenas o Autonomous Database cujo OCID é especificado no parâmetro resource.id:

        resource.id = 'your_Autonomous_Database_instance_OCID'
      • Criar um Grupo Dinâmico para um banco de dados que ainda não foi provisionado:

        Quando você estiver criando o grupo dinâmico antes de provisionar ou clonar uma instância do Autonomous Database, o OCID do novo banco de dados ainda não estará disponível. Nesse caso, crie um grupo dinâmico que especifique os recursos em um determinado compartimento:

        resource.compartment.id = 'your_Compartment_OCID'
    5. Clique em Criar.
  3. Grave instruções de política para o grupo dinâmico para permitir o acesso aos recursos do Oracle Cloud Infrastructure (segredos).
    1. Na Console do Oracle Cloud Infrastructure, clique em Identidade e Segurança e em Políticas.
    2. Para gravar políticas para o grupo dinâmico criado na etapa anterior, clique em Criar Política e digite um Nome e uma Descrição.
    3. Use a opção mostrar editor manual do Criador de Políticas para criar uma política.

      Por exemplo, para permitir que o acesso ao grupo dinâmico leia um segredo específico em um compartimento:

      Allow dynamic-group dynamic_group_name to read secret-bundles in compartment compartment_name
         where target.secret.id='secret_OCID'

      Por exemplo, para permitir que o acesso ao grupo dinâmico leia todos os segredos em um compartimento:

      Allow dynamic-group dynamic_group_name to read secret-bundles in compartment compartment_name

      Consulte Detalhes do Serviço Vault para obter mais informações.

    4. Selecione o grupo ou o grupo dinâmico e selecione o local.
    5. Clique em Criar.

Criar credenciais de segredo do vault com o Oracle Cloud Infrastructure Vault

Descreve as etapas para usar um segredo do Oracle Cloud Infrastructure Vault com credenciais.

Isso permite que você armazene um segredo no Oracle Cloud Infrastructure Vault e use o segredo com a credencial criada para acessar recursos da nuvem ou acessar outros bancos de dados.

Para criar credenciais de segredo do vault nas quais o segredo está armazenado no Oracle Cloud Infrastructure Vault:

  1. Ative a autenticação do controlador de recursos para fornecer acesso a um segredo no Oracle Cloud Infrastructure Vault.
  2. Crie um grupo dinâmico e defina políticas para permitir que o seu Autonomous Database acesse segredos em um Oracle Cloud Infrastructure Vault.
  3. Use DBMS_CLOUD.CREATE_CREDENTIAL para criar uma credencial de segredo do vault.

    Por exemplo:

    BEGIN DBMS_CLOUD.CREATE_CREDENTIAL(
        credential_name   => 'OCI_SECRET_CRED',
        params            => JSON_OBJECT(
            'username'   value 'SCOTT',
            'secret_id'  value 'ocid1.vaultsecret.oc1.iad.example..aaaaaaaauq5ok5nq3bf2vwetkpqsoa' ));
    END;
    /

    Onde:

    • username: é o nome do usuário da credencial original. Pode ser o nome de usuário de qualquer tipo de credencial de nome de usuário/senha, como o nome de usuário de um usuário Swift do OCI, o nome de usuário necessário para acessar um banco de dados com um link de banco de dados e assim por diante.

    • secret_id: é o ID do segredo do vault. Por exemplo, quando você armazena a senha mysecret em um segredo no Oracle Cloud Infrastructure Vault, o valor secret_id é o OCID do segredo do vault.

    Para criar uma credencial secreta do vault, você deve ter o privilégio EXECUTE no pacote DBMS_CLOUD.

    Consulte CREATE_CREDENTIAL Procedimento para obter mais informações.

  4. Use a credencial para acessar um recurso de nuvem.

    Por exemplo:

    SELECT count(*) FROM DBMS_CLOUD.LIST_OBJECTS(
        'OCI_SECRET_CRED',
        'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o/' );
Observação

A cada 12 horas, o segredo (senha) é atualizado com base no conteúdo do Oracle Cloud Infrastructure Vault. Se você alterar o valor do segredo no Oracle Cloud Infrastructure Vault, poderá levar até 12 horas para que a instância do Autonomous Database selecione o valor do segredo mais recente.

Execute DBMS_CLOUD.REFRESH_VAULT_CREDENTIAL para atualizar imediatamente uma credencial de segredo do vault. Este procedimento obtém a versão mais recente do segredo do vault do Oracle Cloud Infrastructure Vault. Consulte REFRESH_VAULT_CREDENTIAL Procedimento para obter mais informações.