Activación de la autenticación de Identity and Access Management (IAM) en Autonomous Database

Describe los pasos para activar el acceso de usuario de IAM en Autonomous Database.

Nota

La integración de Autonomous Database con Oracle Cloud Infrastructure IAM está soportada en regiones comerciales con dominios de identidad, así como en el IAM heredado, que no incluye dominios de identidad. Con los nuevos arrendamientos de Oracle Cloud Infrastructure creados después del 8 de noviembre de 2021, se ha introducido IAM con dominio de identidad. Autonomous Database soporta usuarios y grupos en dominios de identidad por defecto y no por defecto.

Para permitir a Autonomous Database conectarse a la base de datos a través de tokens de IAM:

  1. Siga los requisitos para obtener la autorización y autenticación de IAM en Autonomous Database. Consulte Requisitos para la autenticación en Autonomous Database de Identity and Access Management (IAM) para obtener más información.
  2. Utilice el procedimiento DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION para activar la autenticación de IAM de Oracle Cloud Infrastructure.

    Al realizar estos pasos, conéctese a la instancia de Autonomous Database como usuario ADMIN o como usuario con privilegios ADMIN.

    Por ejemplo:

    BEGIN
       DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION( 
          type => 'OCI_IAM' );
    END;
    /
    

    Por defecto, el parámetro force es false. Cuando se activa otro método de autenticación externa y force es false, DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION informa el siguiente error:

    ORA-20004: Another external authentication is already enabled.

    Si desea desactivar la autenticación externa que está activada actualmente y utilizar la autenticación de IAM en su lugar, incluya el parámetro force.

    Por ejemplo:

    BEGIN
       DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION( 
          type => 'OCI_IAM',
          force => TRUE );
    END;
    /
    

    Esto define el parámetro del sistema IDENTITY_PROVIDER_TYPE.

    Por ejemplo, puede utilizar lo siguiente para verificar IDENTITY_PROVIDER_TYPE:

    SELECT NAME, VALUE FROM V$PARAMETER WHERE NAME='identity_provider_type';
     
    NAME                   VALUE   
    ---------------------- ------- 
    identity_provider_type OCI_IAM