sql >> Databasteknik >  >> RDS >> Oracle

Autentisering med publika nycklar och cx_Oracle med Python

En möjlig lösning är att implementera Oracle Wallet. Att skapa en Oracle Wallet-post innebär att ha:

  • ett tnsname-upplösningsnamn som upprättats för nämnda instans
  • ett användarnamn och lösenord

Exempel:Oracle-sidan jag arbetar med heter ORCL, användaren jag måste ansluta till heter my_user. I din tnsnames.ora-fil har du redan en post som löser ORCL-tjänstens namn/sid, skapa en till med exakt samma parametrar:

#initial local name entry:
ORCL = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = my_ip)(PORT = 1528))) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = ORCL)))

#create an additional local name entry:
ORCL_MY_USER = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = my_ip)(PORT = 1528))) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = ORCL)))

När den nya posten har lösts, skapar du oracle wallet-posten för det lokala namnet ORCL_MY_USER. Detta nya lokala namn kommer du att använda i ditt python-skript för att ansluta utan att ange eller hårdkoda ett lösenord i det.

Exempel:



  1. Rails:Fel vid installation av pg gem

  2. Välja Max- och Min-posterna i ett MySQL-kommando

  3. Hur sparar man en Google Maps-överläggsform i databasen?

  4. SQL-rekursiv fråga som hämtar alla förfäder till ett objekt