Connettere le applicazioni Python con un wallet (mTLS)
È possibile connettere le applicazioni Python all'istanza di Autonomous Database con un wallet.
La "modalità thin" predefinita del driver python-oracledb si connette direttamente a Oracle Database. Il driver può facoltativamente utilizzare le librerie del client Oracle, "Modalità Spessa", per alcune funzionalità aggiuntive. Le librerie Oracle Client possono essere da Oracle Instant Client, dal client Oracle completo o da un'installazione di Oracle Database.
Attenersi alla procedura riportata di seguito per connettere l'applicazione Python a un'istanza di Autonomous Database utilizzando un wallet (mTLS).
- Installare Python e il driver python-oracledb
- Ottenere le credenziali di sicurezza (Oracle Wallet) e abilitare la connettività di rete
- Eseguire questo passo se si desidera connettersi solo in modalità Thin: Esegui applicazione Python con modalità Thin python-oracledb con un wallet (mTLS)
- Eseguire questo passo se si desidera connettersi in modalità Spessa: Eseguire l'applicazione Python con la modalità Spessa python-oracledb con un wallet (mTLS)
Temi
- Ottenere le credenziali di sicurezza (Oracle Wallet) e abilitare la connettività di rete
Ottenere le credenziali di sicurezza client per connettersi a un'istanza di Autonomous Database. - Esegui applicazione Python con modalità Thin python-oracledb con un wallet (mTLS)
Per impostazione predefinita, python-oracledb utilizza la modalità Thin per connettersi direttamente all'istanza di Autonomous Database. - Esegui applicazione Python con modalità spesso python-oracledb con un wallet (mTLS)
Per impostazione predefinita, python-oracledb viene eseguito in modalità Thin che si connette direttamente a Oracle Database. Ulteriori funzioni python-oracledb sono disponibili quando il driver viene eseguito in modalità Spessa.
Argomento padre: Connetti le applicazioni Python ad Autonomous Database
Ottenere le credenziali di sicurezza (Oracle Wallet) e abilitare la connettività di rete
Ottenere le credenziali di sicurezza client per connettersi a un'istanza di Autonomous Database.
Argomento padre: Connetti le applicazioni Python con un wallet (mTLS)
Esegui applicazione Python con modalità Thin python-oracledb con un wallet (mTLS)
Per impostazione predefinita, python-oracledb utilizza la modalità Thin per connettersi direttamente all'istanza di Autonomous Database.
In modalità Thin sono necessari solo due file dal file zip del wallet:
-
tnsnames.ora
: associa i nomi dei servizi di rete utilizzati per le stringhe di connessione dell'applicazione ai servizi di database. -
ewallet.pem
: abilita le connessioni SSL/TLS in modalità Thin.
Per connettersi in modalità sottile:
Se si è protetti da un firewall, è possibile eseguire il tunneling delle connessioni TLS/SSL tramite un proxy utilizzando HTTPS_PROXY nel descrittore di connessione o impostando gli attributi di connessione. La connessione riuscita dipende da configurazioni proxy specifiche. Oracle sconsiglia di utilizzare un proxy in un ambiente di produzione, a causa del possibile impatto sulle prestazioni.
In modalità Thin è possibile specificare un proxy aggiungendo i parametri https_proxy
e http_proxy_port
.
Ad esempio, su 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)
Ad esempio, in 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)
Argomento padre: Connetti le applicazioni Python con un wallet (mTLS)
Esegui applicazione Python con modalità Spessa python-oracledb con un wallet (mTLS)
La modalità Spessa richiede che le librerie del client Oracle siano installate nella posizione in cui si esegue Python. È inoltre necessario chiamare
oracledb.init_oracle_client()
nel codice Python.
In modalità Spessa sono necessari i tre file seguenti del file zip del wallet:
-
tnsnames.ora
: contiene i nomi dei servizi di rete utilizzati per le stringhe di connessione dell'applicazione e le mappa ai servizi di database. -
sqlnet.ora
: specifica la configurazione lato client SQL*Net. cwallet.sso
: contiene il wallet SSO con apertura automatica.
Per connettersi in modalità Spessa:
Se si è protetti da un firewall, è possibile eseguire il tunneling delle connessioni TLS/SSL tramite un proxy utilizzando HTTPS_PROXY nel descrittore di connessione o impostando gli attributi di connessione. La connessione riuscita dipende da configurazioni proxy specifiche. Oracle sconsiglia di utilizzare un proxy in un ambiente di produzione, a causa del possibile impatto sulle prestazioni.
In modalità Spessa è possibile specificare un proxy modificando il file sqlnet.ora
e aggiungendo una riga:
SQLNET.USE_HTTPS_PROXY=on
Inoltre, modificare tnsnames.ora
e aggiungere un nome proxy HTTPS_PROXY
e una porta HTTPS_PROXY_PORT
alla lista di indirizzi del descrittore di connessione di qualsiasi nome di servizio che si prevede di utilizzare.
Ad esempio:
mydb_high=(description=
(address=(https_proxy=myproxy.example.com)
(https_proxy_port=80)
(protocol=tcps)(port=1522)(host=...)
Per informazioni sulla modalità Spessa, vedere Abilitazione della modalità Spessa di python-oracledb.
Argomento padre: Connetti le applicazioni Python con un wallet (mTLS)