Uso de la autenticación de Identity and Access Management (IAM) con Autonomous Database
Note:
La integración de Autonomous Database con Oracle Cloud Infrastructure (OCI) IAM está soportada en arrendamientos comerciales con dominios de identidad, así como en Oracle Cloud Infrastructure IAM, que no incluye dominios de identidad. Oracle Cloud Infrastructure IAM con dominios de identidad se ha introducido con los nuevos arrendamientos de OCI creados a partir del 8 de noviembre de 2021. Autonomous Database soporta usuarios y grupos en dominios de identidad por defecto y no por defecto.Acerca de la autenticación de Identity and Access Management (IAM) con Autonomous Database
La integración de Oracle Cloud Infrastructure IAM con Autonomous Database soporta la autenticación de contraseña de base de datos y la autenticación basada en token. Consulte la sección sobre autenticación y autorización de usuarios de IAM para instancias de Oracle Autonomous Database para obtener más información sobre la arquitectura para utilizar usuarios de IAM en Autonomous Database.
Autenticación de contraseña de base de datos de IAM
Note:
Se puede utilizar cualquier cliente de base de datos 12c o superior soportado para el acceso de contraseña de base de datos de IAM a Autonomous Database.Una contraseña de base de datos de IAM de Oracle Cloud Infrastructure permite a un usuario de IAM conectarse a una instancia de Autonomous Database, ya que los usuarios de Oracle Database se suelen conectar con un nombre de usuario y una contraseña. El usuario introduce su nombre de usuario de IAM y la contraseña de base de datos de IAM. Una contraseña de base de datos de IAM es una contraseña diferente a la contraseña de la consola de Oracle Cloud Infrastructure. El uso de un usuario de IAM con el verificador de contraseña le permite conectarse a Autonomous Database con cualquier cliente de base de datos soportado.
Autenticación basada en token de conexión única de Identity and Access Management (IAM)
Un cliente de base de datos puede obtener un token de base de datos de IAM de varias maneras:
-
Una aplicación o una herramienta de cliente puede solicitar el token de base de datos de IAM para el usuario y puede transferir el token de base de datos a través de la API de cliente. El uso de la API para enviar el token sustituye otros valores en el cliente de base de datos. Este tipo de uso de token de base de datos de IAM está soportado para los siguientes clientes:
- JDBC-thin en todas las plataformas
- Oracle Instant Client OCI-C en Linux
- Oracle Data Provider para .NET (ODP.NET) Core
-
Si la aplicación o la herramienta no soporta la solicitud de un token de base de datos de IAM a través de la API de cliente, el usuario de IAM puede utilizar primero la interfaz de línea de comandos (CLI) de Oracle Cloud Infrastructure para recuperar el token de base de datos de IAM y guardarlo en una ubicación de archivo. Por ejemplo, para utilizar SQL*Plus y otras aplicaciones y herramientas con este método de conexión, primero debe obtener el token de base de datos mediante la interfaz de línea de comandos (CLI) de Oracle Cloud Infrastructure (OCI). Si el cliente de base de datos está configurado para tokens de base de datos de IAM, cuando un usuario se conecta con el formulario de conexión de barra inclinada, el controlador de base de datos utiliza el token de base de datos IAM que se ha guardado en una ubicación de archivo por defecto o especificada.
-
Una aplicación o una herramienta de cliente puede utilizar una entidad de recurso o un principal de instancia de IAM de Oracle Cloud Infrastructure para obtener un token de base de datos de IAM y utilizar el token de base de datos de IAM para autenticarse en una instancia de Autonomous Database.
-
Los usuarios de IAM y las aplicaciones de OCI pueden solicitar un token de base de datos de IAM con varios métodos, incluido el uso de una clave de API. Consulte Configuración de una conexión de cliente para SQL*Plus que utilice un token de IAM para obtener un ejemplo. Consulte la sección sobre autenticación y autorización de usuarios de IAM para una instancia de Oracle Autonomous Database para obtener una descripción de otros métodos, como el uso de un token de delegación dentro de una instancia de OCI Cloud Shell.
Si un usuario introduce un nombre de usuario/contraseña para conectarse, el controlador de base de datos utiliza el método de verificador de contraseñas para acceder a la base de datos independientemente de la configuración de token de base de datos del cliente.
Requisitos para la autenticación de Identity and Access Management (IAM) en Autonomous Database
Antes de utilizar la autenticación de Identity and Access Management (IAM) en Autonomous Database, debe asegurarse de lo siguiente:
Utilice el servicio Networking para agregar un gateway de servicio, una regla de ruta y una regla de seguridad de salida a la VCN (red virtual en la nube) y las subredes en las que residen los recursos de Autonomous Database.
- Cree un gateway de servicio en la VCN (red virtual en la nube) en la que residan los recursos de Autonomous Database siguiendo las instrucciones de la Tarea 1: creación del gateway de servicio de la Documentación de Oracle Cloud Infrastructure.
- Después de crear el gateway de servicio, agregue una regla de ruta y una regla de seguridad de salida a cada subred (en la VCN) en la que residan los recursos de Autonomous Database para que estos recursos puedan utilizar el gateway para usar la autenticación de Identity and Access Management (IAM):
- Vaya a la página Detalles de subred de la subred.
- En el separador Información de Subred, haga clic en el nombre de la Tabla de Direcciones de la subred para mostrar su página Detalles de Tabla de Direcciones.
- En la tabla de Reglas de ruta existentes, compruebe si ya hay una regla con las siguientes características:
- Destino: todos los servicios de IAD en Oracle Services Network
- Tipo de destino: gateway de servicio
- Destino: nombre del gateway de servicio que acaba de crear en la VCN
Si dicha regla no existe, haga clic en Agregar reglas de ruta y agregue una regla de ruta con estas características.
- Vuelva a la página Detalles de subred de la subred.
- En la tabla Listas de seguridad de la subred, haga clic en el nombre de la lista de seguridad de la subred para mostrar su página Detalles de lista de seguridad.
- En el menú lateral, en Recursos, haga clic en Reglas de salida.
- En la tabla de Reglas de salida existentes, compruebe si ya hay una regla con las siguientes características:
- Sin estado: No
- Destino: todos los servicios de IAD en Oracle Services Network
- Protocolo IP: TCP
- Rango de puertos de origen: Todo
- Rango de puertos de destino: 443
- Si dicha regla no existe, haga clic en Agregar Reglas de Salida y agregue una regla de salida con estas características.
La configuración del proxy HTTP en el entorno debe permitir que la base de datos acceda al proveedor de servicios en la nube.
Note:
La configuración de red, incluido el proxy HTTP, solo se puede editar hasta que la infraestructura de Exadata tenga el estado Necesita activación. Una vez activada, no puede editar esa configuración.La configuración de un proxy HTTP para una infraestructura de Exadata ya aprovisionada necesita una solicitud de servicio (SR) en My Oracle Support. Consulte Creación de una solicitud de servicio en My Oracle Support para obtener más información.
Cambio de proveedores de identidad externos en Autonomous Database
Describe los pasos para cambiar el proveedor de identidad externo de autenticación y autorización (IAM) a otro proveedor de autenticación externo y viceversa.
La autenticación y la autorización de Oracle Cloud Infrastructure (IAM) para los usuarios está activada por defecto para las bases de datos de contenedores autónomas y las instancias de Autonomous Database recién aprovisionadas. Hay otros esquemas de autenticación externos, como usuarios gestionados de forma centralizada con Active Directory (CMU-AD), Azure AD y Kerberos, que puede activar para Autonomous Database. Sin embargo, solo puede haber un esquema de autenticación externo activado en un momento determinado.
- Desactive la integración de IAM mediante el procedimiento DBMS_CLOUD_ADMIN.DISABLE_EXTERNAL_AUTHENTICATION:
Por ejemplo:
Para obtener información adicional, consulte Procedimiento DISABLE_EXTERNAL_AUTHENTICATION.BEGIN DBMS_CLOUD_ADMIN.DISABLE_EXTERNAL_AUTHENTICATION; END; /
- Siga los pasos descritos en las siguientes páginas para configurar otro esquema de autenticación externo de su elección:
- Vuelva a activar los usuarios de IAM para que se conecten a Autonomous Database mediante la autenticación y la autorización de Oracle Cloud Infrastructure (IAM).
Como usuario ADMIN, ejecute el procedimiento DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION con los parámetros que se muestran a continuación:
BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION( type => 'OCI_IAM' force => TRUE ); END; /
En el ejemplo anterior se desactiva cualquier proveedor de autenticación externo que esté activado actualmente y se activa la autenticación y autorización de Oracle Cloud Infrastructure (IAM).
En este ejemplo:force
está definido enTRUE
para desactivar la autenticación externa que está activada actualmente.type
está definido en'OCI_IAM'
para activar y utilizar la autenticación y autorización de Oracle Cloud Infrastructure (IAM).
Note:
Por defecto, el parámetroforce
esFALSE
. Cuando se activa otro método de autenticación externa y el valorforce
esFALSE
, DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION notifica el siguiente error:ORA-20004: Another external authentication is already enabled.
Consulte Procedimiento ENABLE_EXTERNAL_AUTHENTICATION para obtener más referencia.
- Verifique el valor del parámetro del sistema
IDENTITY_PROVIDER_TYPE
como se muestra a continuación:SELECT NAME, VALUE FROM V$PARAMETER WHERE NAME='identity_provider_type'; NAME VALUE ---------------------- ------- identity_provider_type OCI_IAM
Creación de grupos y políticas de Identity and Access Management (IAM) para usuarios de IAM
Describe los pasos para escribir sentencias de política para un grupo de IAM a fin de permitir el acceso de usuario de IAM a los recursos de Oracle Cloud Infrastructure, en concreto, a las instancias de Autonomous Database.
Una política es un grupo de sentencias que especifica quién puede acceder a determinados recursos y cómo. Se puede otorgar acceso a todo el arrendamiento, a las bases de datos de un compartimento o a bases de datos individuales. Esto significa que debe escribir una sentencia de política que otorgue a un grupo específico un tipo de acceso específico a un tipo específico de recurso dentro de un compartimento específico.
Note:
Es necesario definir una política para utilizar tokens de IAM para acceder a Autonomous Database. No es necesaria una política al utilizar contraseñas de base de datos de IAM para acceder a Autonomous Database.Para activar Autonomous Database para permitir a los usuarios de IAM conectarse a la base de datos mediante tokens de IAM:
Notas para crear políticas para su uso con usuarios de IAM en Autonomous Database:
-
Las políticas pueden permitir a los usuarios de IAM acceder a instancias de Autonomous Database en todo el arrendamiento o en un compartimento, o limitar el acceso a una única instancia de Autonomous Database.
-
Puede utilizar el principal de instancia o la entidad de recurso para recuperar tokens de base de datos a fin de establecer una conexión desde la aplicación a una instancia de Autonomous Database. Si utiliza un principal de instancia o un principal de recurso, debe asignar un grupo dinámico. Por lo tanto, no se puede asignar exclusivamente principales de instancia y de recurso; solo se pueden asignar mediante una asignación compartida y colocando la instancia o la instancia de recurso en un grupo dinámico de IAM.
Puede crear grupos dinámicos y grupos dinámicos de referencia en las políticas que cree para acceder a Oracle Cloud Infrastructure. Consulte Planificación de controles de acceso y creación de recursos de soporte y Gestión de grupos dinámicos para obtener más información.
Adición de usuarios de IAM en Autonomous Database
Para agregar usuarios de IAM para permitirles el acceso a Autonomous Database, asigne usuarios globales de base de datos a grupos o usuarios de IAM con las sentencias CREATE USER
o ALTER USER
(con la cláusula IDENTIFIED GLOBALLY AS
).
La autorización de usuarios de IAM a una instancia de Autonomous Database funciona mediante la asignación de usuarios globales de IAM (esquemas) a usuarios de IAM (asignación exclusiva) o grupos de IAM (asignación de esquema compartido).
Para autorizar a los usuarios de IAM en una instancia de Autonomous Database:
Note:
Los usuarios de base de datos que no seanIDENTIFIED GLOBALLY
pueden continuar con la conexión como antes, incluso cuando Autonomous Database está activado para la autenticación de IAM.
Para asignar exclusivamente un usuario de IAM local a un usuario global de Oracle Database:
-
Conéctese como usuario ADMIN a la base de datos que está activada para utilizar IAM (el usuario ADMIN tiene los privilegios del sistema
CREATE USER
yALTER USER
necesarios para estos pasos). -
Cree una asignación entre el usuario (esquema) de Autonomous Database con las sentencias
CREATE USER
oALTER USER
e incluya la cláusulaIDENTIFIED GLOBALLY AS
especificando el nombre de usuario de IAM localPor ejemplo, para crear un nuevo usuario global de base de datos denominado
peter_fitch
y asignar este usuario a un usuario de IAM local existente denominadopeterfitch
:CREATE USER peter_fitch IDENTIFIED GLOBALLY AS 'IAM_PRINCIPAL_NAME=peterfitch'
En el siguiente ejemplo, se muestra cómo crear el usuario especificando un dominio no predeterminado,
sales_domain
:CREATE USER peter_fitch2 IDENTIFIED GLOBALLY AS 'IAM_PRINCIPAL_NAME=sales_domain/peterfitch';
Adición de roles de IAM en Autonomous Database
Si lo desea, puede crear roles globales para proporcionar roles y privilegios de base de datos adicionales a los usuarios de IAM cuando se asignen varios usuarios de IAM al mismo usuario global compartido.
El uso de roles globales es opcional al utilizar una asignación de IAM exclusiva al usuario (esquema) o una asignación de usuario compartido en Autonomous Database. Por ejemplo, se pueden otorgar todos los privilegios y roles al esquema compartido, y a todos los usuarios de IAM que se asignen al esquema compartido se les otorgarán los privilegios y roles asignados al esquema compartido.
Puede utilizar un rol global para diferenciar opcionalmente a los usuarios que utilizan el mismo esquema compartido. Por ejemplo, un juego de usuarios puede tener todos el mismo esquema compartido y el esquema compartido podría tener el privilegio CREATE SESSION
. A continuación, los roles globales se pueden utilizar para otorgar privilegios y roles diferenciados asignados a diferentes grupos de usuarios que utilizan el mismo esquema compartido.
El otorgamiento de roles adicionales a usuarios de IAM en Autonomous Database funciona mediante la asignación de roles globales de Autonomous Database a grupos de IAM.
Para asignar roles globales de Autonomous Database a grupos de IAM:
Si desea agregar asignaciones de roles globales adicionales para otros grupos de IAM, siga estos pasos para cada grupo de IAM.
Creación de contraseña de base de datos de IAM para usuarios de IAM
Para agregar un usuario de IAM y permitir que el usuario de IAM se conecte a Autonomous Database proporcionando un nombre de usuario y una contraseña, debe crear una contraseña de base de datos de IAM.
Consulte la sección sobre cómo trabajar con contraseñas de base de datos de IAM para obtener más información.
Conexión a Autonomous Database con autenticación de Identity and Access Management (IAM)
Una vez que el usuario ADMIN de la base de datos ha asignado usuarios globales y roles globales a los usuarios de IAM y los grupos de IAM, los usuarios se conectan a la instancia de Autonomous Database mediante sus credenciales de Oracle Cloud Infrastructure IAM o acceden a la base de datos mediante un token de base de datos de Oracle Cloud Infrastructure IAM.
Podrá seguir conectándose a Autonomous Database con el nombre de usuario y la contraseña de la cuenta de base de datos local (cuenta de usuario de base de datos no global).
Puede utilizar un cliente de base de datos para acceder a una instancia de Autonomous Database como usuario de Oracle Cloud Infrastructure IAM. Para utilizar un cliente con credenciales de nombre de usuario y contraseña de Oracle Cloud Infrastructure IAM y un verificador de contraseñas, el cliente de base de datos debe ser 12c o posterior.
-
JDBC-Thin con soporte para la autenticación de token de IAM está soportado con lo siguiente:
-
JDBC versión 19.13.0.0.1 (o posterior): consulte la sección sobre descargas de JDBC y UCP para los controladores JDBC.
-
JDBC versión 21.4.0.0.1 (o posterior): consulte la sección sobre descargas de JDBC y UCP para los controladores JDBC.
Consulte la sección sobre el soporte para la autenticación basada en token de IAM para obtener más información:
-
- SQL*Plus y Oracle Instant Client: soportado con SQL*Plus e Instant Client en las versiones 19.13 o posteriores de Linux, y con Instant Client en las versiones 21.4 o posteriores de Linux.
Consulte la sección sobre la autenticación basada en token de Identity and Access Management (IAM) para obtener más información.
-
El cliente de base de datos también se puede configurar para recuperar un token de base de datos utilizando el nombre de usuario de IAM y la contraseña de base de datos de IAM.
Consulte Conexiones de cliente que utilizan un token solicitado por un nombre de usuario y una contraseña de base de datos de IAM para obtener más información.
-
Clientes .NET (versión más reciente de Linux o Windows). Los componentes de software .NET están disponibles como descarga gratuita en los siguientes sitios:
Note:
Si la instancia de Autonomous Database está en modo restringido, solo se podrán conectar a la base de datos los usuarios con el privilegio RESTRICTED SESSION
, como ADMIN.
Acerca de la conexión a una instancia de Autonomous Database on Dedicated Exadata Infrastructure mediante IAM
Los usuarios de IAM se pueden conectar a la instancia de Autonomous Database on Dedicated Exadata Infrastructure mediante un verificador de contraseña de base de datos de IAM o un token de IAM.
El uso del verificador de contraseña de base de datos de IAM es similar al proceso de autenticación de contraseña de Oracle Database. Sin embargo, en lugar de almacenar el verificador de contraseña (hash cifrado de la contraseña) en la Autonomous Database on Dedicated Exadata Infrastructure, el verificador se almacena como parte del perfil de usuario de IAM de Oracle Cloud Infrastructure (OCI).
El segundo método de conexión, el uso de un token de IAM para la base de datos, es más moderno. El uso del acceso basado en token se ajusta mejor a recursos en la nube como Autonomous Database on Dedicated Exadata Infrastructure. El token se basa en la seguridad que puede aplicar el punto final de IAM. Puede ser una autenticación multifactor, que es más segura que el uso únicamente de contraseñas. Otra ventaja del uso de tokens es que el verificador de contraseña (que se considera confidencial) nunca se almacena ni está disponible en la memoria.
Conexiones de cliente que utilizan un verificador de contraseña de base de datos de IAM
Una vez que haya configurado la autorización necesaria para el usuario de IAM, este usuario se puede conectar mediante la aplicación cliente existente, como SQL*Plus o SQLcl, sin configuración adicional.
El usuario de IAM introduce el nombre de usuario de IAM y la contraseña de base de datos de IAM (no la contraseña de la consola de Oracle Cloud Infrastructure [OCI]) mediante cualquier cliente de base de datos soportado actualmente. La única restricción es que la versión de cliente de base de datos sea Oracle Database versión 12.1.0.2 o posterior para utilizar contraseñas de Oracle Database 12c. El cliente de base de datos debe poder utilizar el verificador de contraseña 12C
. El uso del cifrado del verificador 11G
no está soportado con IAM. No se necesita ninguna configuración especial de cliente o herramienta para que el usuario de IAM se conecte a la instancia de Autonomous Database on Dedicated Exadata Infrastructure.
Conexiones de cliente que utilizan un token
Para el acceso de token de IAM a Autonomous Database on Dedicated Exadata Infrastructure, la aplicación o herramienta de cliente solicita un token de base de datos de IAM para el usuario de IAM.
La aplicación cliente transferirá el token de base de datos directamente al cliente de base de datos a través de la API de cliente de base de datos.
Si la aplicación o la herramienta no se han actualizado para que solicite un token de IAM, el usuario de IAM puede utilizar la interfaz de línea de comandos (CLI) de Oracle Cloud Infrastructure (OCI) para solicitar y almacenar el token de base de datos. Puede solicitar un token de acceso a la base de datos (db-token
) con las siguientes credenciales:
- Tokens de seguridad (con autenticación de IAM), tokens de delegación (en OCI Cloud Shell) y
API-keys
, que son credenciales que representan al usuario de IAM para activar la autenticación - Tokens de principal de instancia, que permiten que las instancias sean actores (o principales) autorizados para realizar acciones en recursos de servicio después de la autenticación
- Token entidad de recurso, que es una credencial que permite a la aplicación autenticarse en otros servicios de Oracle Cloud Infrastructure
Cuando los usuarios de IAM se conectan al cliente con una barra inclinada /
y se configura el parámetro OCI_IAM
(sqlnet.ora
, tnsnames.ora
o como parte de una cadena de conexión), el cliente de base de datos recupera el token de base de datos de un archivo. Si el usuario de IAM envía un nombre de usuario y una contraseña, la conexión utilizará el acceso del verificador de base de datos de IAM descrito para las conexiones de cliente que utilizan verificadores de contraseña de base de datos de IAM. En las instrucciones de esta guía se muestra cómo utilizar la CLI de OCI como ayuda para el token de base de datos. Si la aplicación o la herramienta se ha actualizado para que funcione con IAM, siga las instrucciones de la aplicación o la herramienta. Algunos casos de uso habituales son: SQL*Plus local, SQLcl local, SQL*Plus en Cloud Shell o aplicaciones que utilizan carteras SEP.
-
Configurar una conexión de cliente para que SQL*Plus utilice una contraseña de base de datos de IAM.
-
Configurar una conexión de cliente para que SQL*Plus utilice un token de IAM.
-
Acceder a la base de datos mediante un token de base de datos deOracle Cloud Infrastructure IAM utilizando un principal de instancia.
Configuración de una conexión de cliente para SQL*Plus que utilice una contraseña de base de datos de IAM
Puede configurar SQL*Plus para que utilice una contraseña de base de datos de IAM.
Configuración de una conexión de cliente para SQL*Plus que utilice un token de IAM
Puede configurar una conexión de cliente para SQL*Plus que utilice un token de IAM.
TOKEN_AUTH
, el usuario de IAM se puede conectar a la instancia de Autonomous Database ejecutando el siguiente comando para iniciar SQL*Plus. Puede incluir el propio descriptor de conexión o utilizar el nombre del descriptor del archivo tnsnames.ora
.connect /@exampledb_high
O:
connect /@(description=
(retry_count=20)(retry_delay=3)
(address=(protocol=tcps)(port=1522)
(host=example.us-phoenix-1.oraclecloud.com))
(connect_data=(service_name=aaabbbccc_exampledb_high.example.oraclecloud.com))
(security=(ssl_server_cert_dn="CN=example.uscom-east-1.oraclecloud.com,
OU=Oracle BMCS US, O=Example Corporation,
L=Redwood City, ST=California, C=US")
(TOKEN_AUTH=OCI_TOKEN)))
El cliente de base de datos ya está configurado para obtener db-token
porque TOKEN_AUTH
ya está definido, ya sea mediante el archivo sqlnet.ora
o en una cadena de conexión. El cliente de base de datos obtiene db-token
y lo firma mediante la clave privada y, a continuación, envía el token a Autonomous Database. Si se ha especificado un nombre de usuario de IAM y una contraseña de base de datos de IAM en lugar de una barra inclinada /
, el cliente de base de datos se conectará utilizando la contraseña en lugar de db-token
.
Uso del principal de instancia para acceder a Autonomous Database con autenticación de Identity and Access Management (IAM)
Una vez que el usuario ADMIN ha activado IAM en Oracle Cloud Infrastructure en Autonomous Database, una aplicación puede acceder a la base de datos a través de un token de base de datos de Oracle Cloud Infrastructure IAM mediante un principal de instancia.
Consulte Acceso a la API de Oracle Cloud Infrastructure con principales de instancia para obtener más información.
Configuración de autenticación de proxy
La autenticación de proxy permite a un usuario de IAM conectarse mediante proxy a un esquema de base de datos para tareas como el mantenimiento de la aplicación.
La autenticación de proxy se suele utilizar para autenticar al usuario real y, a continuación, autorizarlo a utilizar un esquema de base de datos con los privilegios y los roles de esquema para gestionar una aplicación. Alternativas como el uso compartido de la contraseña del esquema de la aplicación se consideran inseguras e impiden auditar qué usuario real ha realizado una acción.
Un caso de uso puede ser un entorno en el que un usuario de IAM con nombre que sea administrador de la base de datos de la aplicación pueda autenticarse mediante sus credenciales y, a continuación, conectarse mediante proxy a un usuario de esquema de base de datos (por ejemplo, hrapp
). Esta autenticación permite al administrador de IAM utilizar los privilegios y los de roles hrapp
como usuario hrapp
para realizar el mantenimiento de la aplicación, y seguir utilizando sus credenciales de IAM para la autenticación. El administrador de base de datos de una aplicación se puede conectar a la base de datos y, a continuación, conectarse mediante proxy a un esquema de aplicación para gestionar este esquema.
Puede configurar la autenticación de proxy para los métodos de autenticación de contraseña y de token.
Configuración de autenticación de proxy para el usuario de IAM
Para configurar la autenticación de proxy para un usuario de IAM, el usuario de IAM ya debe tener una asignación a un esquema global (asignación exclusiva o compartida). También debe estar disponible un esquema de base de datos independiente para que el usuario de IAM pueda conectarse a este mediante proxy.
-
Conéctese a la instancia de Autonomous Database como un usuario que tenga los privilegios del sistema
ALTER USER
. -
Otorgue un permiso para que el usuario de IAM se conecte mediante proxy a la cuenta de usuario de la base de datos local. No se puede hacer referencia a un usuario de IAM en el comando, por lo que se debe crear el proxy entre el usuario global de la base de datos (asignado al usuario de IAM) y el usuario de la base de datos de destino. En el siguiente ejemplo,
hrapp
es el esquema de base de datos al que se realizará la conexión mediante proxy, ypeterfitch_schema
es el usuario global de base de datos asignado exclusivamente al usuariopeterfitch
.ALTER USER hrapp GRANT CONNECT THROUGH peterfitch_schema;
En esta etapa, el usuario de IAM se puede conectar a la instancia de base de datos mediante el proxy. Por ejemplo:
CONNECT peterfitch[hrapp]@connect_string
Enter password: password
CONNECT [hrapp]/@connect_string
Validación de la autenticación de proxy del usuario de IAM
-
Conéctese a la instancia de Autonomous Database como un usuario que tiene los privilegios del sistema
CREATE USER
yALTER USER
. -
Conéctese al usuario de IAM y ejecute los comandos
SHOW USER
ySELECT SYS_CONTEXT
. Por ejemplo, supongamos que desea comprobar la autenticación de proxy del usuario de IAMpeterfitch
cuando se conecta mediante proxy al usuario de base de datoshrapp
. Tendrá que conectarse a la base de datos utilizando los diferentes tipos de métodos de autenticación que se muestran aquí, pero la salida de los comandos que ejecute será la misma para todos los tipos.-
Para la autenticación mediante contraseña:
CONNECT peterfitch[hrapp]/password\!@connect_string SHOW USER; --The output should be USER is "HRAPP" SELECT SYS_CONTEXT('USERENV','AUTHENTICATION_METHOD') FROM DUAL; --The output should be "PASSWORD_GLOBAL" SELECT SYS_CONTEXT('USERENV','PROXY_USER') FROM DUAL; --The output should be "PETERFITCH_SCHEMA" SELECT SYS_CONTEXT('USERENV','CURRENT_USER') FROM DUAL; --The output should be "HRAPP"
-
Para la autenticación mediante token:
CONNECT [hrapp]/@connect_string SHOW USER; --The output should be USER is "HRAPP " SELECT SYS_CONTEXT('USERENV','AUTHENTICATION_METHOD') FROM DUAL; --The output should be "TOKEN_GLOBAL" SELECT SYS_CONTEXT('USERENV','PROXY_USER') FROM DUAL; --The output should be "PETERFITCH_SCHEMA" SELECT SYS_CONTEXT('USERENV','CURRENT_USER') FROM DUAL; --The output should be "HRAPP"
-
Uso de un enlace de base de datos con usuarios autenticados de IAM
Puede utilizar un enlace de base de datos para conectarse desde una instancia de Autonomous Database a otra como usuario de Oracle Cloud Infrastructure IAM.
Puede utilizar un usuario conectado o un enlace de base de datos de usuario fijo para conectarse a una instancia de Autonomous Database como usuario de Oracle Cloud Infrastructure IAM.
Note:
El enlace de base de datos de usuario actual no está soportado para la conexión a Autonomous Database como usuario de Oracle Cloud Infrastructure IAM.-
Enlace de base de datos de usuario conectado: para un enlace de base de datos de usuario conectado, un usuario de IAM debe estar asignado a un esquema en la base de datos de origen y en la de destino conectado mediante un enlace de base de datos. Puede utilizar un verificador de contraseña de base de datos o un token de base de datos de IAM para utilizar un enlace de base de datos de usuario conectado.
-
Enlace de base de datos de usuario fijo: se puede crear un enlace de base de datos de usuario fijo mediante un usuario de base de datos o un usuario de IAM. Al utilizar un usuario de IAM como enlace de base de datos de usuario fijo, el usuario de IAM debe tener una asignación de esquema en la base de datos de destino. El usuario de IAM para un enlace de base de datos solo se puede configurar con un verificador de contraseña.
Desactivación de la autenticación de Identity and Access Management (IAM) en Autonomous Database
Describe los pasos para desactivar el acceso de usuario de autenticación externa de IAM para Autonomous Database.
ALTER SYSTEM
, como se muestra a continuación:ALTER SYSTEM RESET IDENTITY_PROVIDER_TYPE SCOPE=BOTH;
Si también desea actualizar el acceso a IAM desde el recurso, es decir, la base de datos de contenedores autónoma o Autonomous Database, puede que deba eliminar o modificar el grupo de IAM y las políticas que haya configurado para permitir el acceso a IAM desde esos recursos.
Notas para el uso de herramientas de Autonomous Database con autenticación de Identity and Access Management (IAM)
Proporciona notas para utilizar las herramientas de Autonomous Database con la autenticación de IAM activada.
- Oracle APEX no está soportado para usuarios de IAM con Autonomous Database. Consulte Acceso a los servicios de administración de Oracle Application Express para obtener información sobre el uso de usuarios normales de base de datos con Autonomous Database.
-
Las acciones de base de datos no están soportadas para los usuarios de IAM con Autonomous Database. Consulte la sección sobre activación del acceso de usuario a Database Actions para obtener información sobre el uso de usuarios normales de base de datos con Autonomous Database.