Pré-requisitos:

Para usar o plug-in authentication_oci, você precisa de um par de chaves de autenticação, de um arquivo de configuração e de instruções de política definidas corretamente.

Para usar o plug-in authentication_oci, é necessário o seguinte:

  • Uma das seguintes credenciais:
    • Um par de chaves de API: Usuários locais ou provisionados podem usar um par de chaves de API público-privado que esteja registrado corretamente no IAM e uma impressão digital de API. Você precisa do par de chaves e da impressão digital para cada usuário individual e membro do grupo mapeado. Consulte Chaves e OCIDs Obrigatórios.
    • Um token de segurança do IAM: Usuários locais, federados ou provisionados podem usar um token de segurança do IAM gerado usando a interface de linha de comando do Oracle Cloud Infrastructure. Consulte Gerando um Token de Segurança do Serviço IAM.
  • Um arquivo de configuração com uma impressão digital válida e um valor key_file. Para autenticação usando um token de segurança do IAM, especifique um valor security_token_file válido. Consulte o arquivo de configuração da CLI e do SDK.
  • A seguinte declaração de política definida em cada tenancy que você pretende conectar:
    Allow service mysql_dp_auth to {AUTHENTICATION_INSPECT, GROUP_MEMBERSHIP_INSPECT, 
      DYNAMIC_GROUP_INSPECT} IN TENANCY

    Esta instrução de política deve ser anexada ao compartimento raiz para que abranja toda a tenancy. Para fazer isso, você precisa selecionar o compartimento raiz ao adicionar a política e usar o parâmetro IN TENANCY. Ele não funcionará se for criado em um subcompartimento com IN COMPARTMENT <CompartmentName> no lugar de IN TENANCY.

    A política acima foi descontinuada na versão 9.4.0 e será removida em uma versão posterior. Para a versão 9.4.0 ou posterior, recomenda-se usar a seguinte política:
    Allow any-user to {AUTHENTICATION_INSPECT, GROUP_MEMBERSHIP_INSPECT, 
      DYNAMIC_GROUP_INSPECT} in tenancy where request.principal.type = 'mysqldbsystem'
    Observação

    Se quiser usar os principais entre diferentes tenancies, você precisará de uma política Admit na tenancy de destino (em que usuários e grupos são definidos) e de uma política Endorse na tenancy em que o recurso (sistema de banco de dados HeatWave) é instanciado conforme descrito abaixo.
    • Defina o seguinte na tenancy de destino que contém os usuários e grupos:
      Define tenancy <resource_tenancy_name> AS <resource_tenancy_OCID>
      Admit any-user of tenancy <resource_tenancy_name> TO {AUTHENTICATION_INSPECT, 
        GROUP_MEMBERSHIP_INSPECT, DYNAMIC_GROUP_INSPECT} in tenancy 
        where request.principal.type = 'mysqldbsystem'
    • Defina o seguinte na tenancy de recursos que contém o sistema de BD:
      Define tenancy <target_tenancy_name> AS <target_tenancy_OCID>
      Endorse any-user to {AUTHENTICATION_INSPECT, GROUP_MEMBERSHIP_INSPECT, 
        DYNAMIC_GROUP_INSPECT} in tenancy <target_tenancy_name> 
        where request.principal.type = 'mysqldbsystem'

Tópicos Relacionados

Gerando um Token de Segurança do IAM

Usuários locais, federados ou provisionados podem usar um token de segurança do IAM para autenticação por meio do plug-in authentication_oci.

Usando a CLI

Use a interface de linha de comando do Oracle Cloud Infrastructure para gerar um token de segurança do IAM.

  1. Execute o seguinte comando na interface de linha de comando do Oracle Cloud Infrastructure:
    oci session authenticate
  2. Quando solicitado, escolha a região.
    Um navegador da Web é iniciado.
  3. No browser, informe suas credenciais de usuário.
  4. Informe o nome do perfil que você deseja criar na interface de linha de comando.
    O token de segurança do IAM é gerado junto com um par de chaves efêmero. As informações de autenticação são salvas no arquivo .config. Por padrão, o token de segurança expira em uma hora.
  5. (Opcional) Para atualizar o token de segurança (dentro do período de validade) por uma hora, execute o seguinte comando:
    oci session refresh --profile <profile_name>
    Você pode atualizar o token até 24 horas.