Conexión de aplicaciones Python con una cartera
Puede conectar aplicaciones de Python a la instancia de Autonomous Database con una cartera.
El "modo fino" por defecto del controlador python-oracledb se conecta directamente a Oracle Database. De manera opcional, el controlador puede utilizar bibliotecas de Oracle Client, "modo grueso", para algunas funciones adicionales. Las bibliotecas de Oracle Client pueden ser de Oracle Instant Client, el cliente de Oracle completo o de una instalación de Oracle Database.
Siga estos pasos para conectar la aplicación Python a una instancia de Autonomous Database mediante una cartera (mTLS):
- Instalación de Python y el controlador python-oracledb
- Obtener credenciales de seguridad (Oracle Wallet) y activar la conectividad de red
- Realice este paso si solo desea conectarse en modo fino: Ejecute la aplicación Python con modo fino python-oracledb con una cartera
- Realice este paso si desea conectarse en modo grueso: Ejecutar aplicación Python con modo grueso python-oracledb con una cartera (mTLS)
Temas
- Cómo obtener credenciales de seguridad (Oracle Wallet) y activar la conectividad de red
Obtenga credenciales de seguridad de cliente para conectarse a una instancia de Autonomous Database. - Ejecución de la aplicación Python con modo fino python-oracledb con una cartera (mTLS)
Por defecto, python-oracledb utiliza el modo fino para conectarse directamente a la instancia de Autonomous Database. - Ejecución de la aplicación Python con el modo grueso python-oracledb con una cartera (mTLS)
Por defecto, python-oracledb se ejecuta en modo fino, que se conecta directamente a Oracle Database. Hay disponibles funciones adicionales de python-oracledb cuando el controlador se ejecuta en modo grueso.
Tema principal: Conexión de aplicaciones Python a Autonomous Database
Obtener credenciales de seguridad (Oracle Wallet) y activar la conectividad de red
Obtenga credenciales de seguridad de cliente para conectarse a una instancia de Autonomous Database.
Tema principal: Conexión de aplicaciones Python con una cartera (mTLS)
Ejecución de la aplicación Python con modo fino python-oracledb con una cartera (mTLS)
Por defecto, python-oracledb utiliza el modo fino para conectarse directamente a la instancia de Autonomous Database.
En el modo grueso solo se necesitan dos archivos del zip de cartera:
-
tnsnames.ora
: asigna nombres de servicio de red utilizados para cadenas de conexión de aplicaciones a los servicios de base de datos. -
ewallet.pem
: activa las conexiones SSL/TLS en modo fino.
Para conectarse en modo fino:
Si está protegido por un firewall, puede establecer un túnel de las conexiones TLS/SSL a través de un proxy mediante HTTPS_PROXY en el descriptor de conexión o mediante la configuración de atributos de conexión. La conexión correcta depende de configuraciones de proxy específicas. Oracle no recomienda el uso de un proxy en un entorno de producción, debido al posible impacto en el rendimiento.
En el modo fino, puede agregar los parámetros https_proxy
y http_proxy_port
para especificar un proxy.
Por ejemplo, en Linux:
connection=oracledb.connect(
config_dir="/opt/OracleCloud/MYDB",
user="admin",
password=password,
dsn="db2024_low",
wallet_location="/opt/OracleCloud/MYDB",
wallet_password=wallet_pw,
https_proxy='myproxy.example.com',
https_proxy_port=80)
Por ejemplo, en Windows:
connection=oracledb.connect(
config_dir=r"C:\opt\OracleCloud\MYDB",
user="admin",
password=password,
dsn="db2024_low",
wallet_location=r"C:\opt\OracleCloud\MYDB",
wallet_password=wallet_pw,
https_proxy='myproxy.example.com',
https_proxy_port=80)
Tema principal: Conexión de aplicaciones Python con una cartera (mTLS)
Ejecución de la aplicación Python con modo grueso python-oracledb con una cartera (mTLS)
El modo grueso necesita que las bibliotecas de Oracle Client estén instaladas donde se ejecuta Python. También debe llamar a
oracledb.init_oracle_client()
en el código de Python.
En el modo Grueso, se necesitan los siguientes tres archivos del archivo zip de cartera:
-
tnsnames.ora
: contiene los nombres de servicio de red utilizados para las cadenas de conexión de aplicaciones y asigna las cadenas a los servicios de base de datos. -
sqlnet.ora
: especifica la configuración del cliente de SQL*Net. cwallet.sso
: contiene la cartera de SSO de apertura automática.
Para conectarse en modo grueso:
Si está protegido por un firewall, puede establecer un túnel de las conexiones TLS/SSL a través de un proxy mediante HTTPS_PROXY en el descriptor de conexión o mediante la configuración de atributos de conexión. La conexión correcta depende de configuraciones de proxy específicas. Oracle no recomienda el uso de un proxy en un entorno de producción, debido al posible impacto en el rendimiento.
En el modo Grueso, puede especificar un proxy editando el archivo sqlnet.ora
y agregando una línea:
SQLNET.USE_HTTPS_PROXY=on
También puede editar tnsnames.ora
y agregar un nombre de proxy HTTPS_PROXY
y un puerto HTTPS_PROXY_PORT
a la lista de direcciones del descriptor de conexión de cualquier nombre de servicio que tenga previsto utilizar.
Por ejemplo:
mydb_high=(description=
(address=(https_proxy=myproxy.example.com)
(https_proxy_port=80)
(protocol=tcps)(port=1522)(host=...)
Consulte Activación del modo grueso de python-oracledb para obtener información sobre el modo Grueso.
Tema principal: Conexión de aplicaciones Python con una cartera (mTLS)