sql >> Database >  >> RDS >> Oracle

Authenticatie met openbare sleutels en cx_Oracle met Python

Een mogelijke oplossing is het implementeren van Oracle Wallet. Het maken van een Oracle Wallet-vermelding houdt in dat u:

  • een tnsname-resolutienaam die is vastgesteld voor de genoemde instantie
  • een gebruikersnaam en wachtwoord

Voorbeeld:de Oracle-sid waarmee ik werk heet ORCL, de gebruiker waarmee ik verbinding moet maken heet my_user. In je tnsnames.ora-bestand heb je al een item dat de ORCL-servicenaam/sid oplost, maak er nog een aan met exact dezelfde parameters:

#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)))

Nadat het nieuwe item is opgelost, maakt u het Oracle-portemonnee-item voor de lokale naam ORCL_MY_USER. Deze nieuwe lokale naam ga je gebruiken in je python-script om verbinding te maken zonder een wachtwoord erin op te geven of hard te coderen.

Voorbeeld:



  1. Retourneer de huidige werkstationnaam die is verbonden met SQL Server (T-SQL)

  2. sql om voor elke maand één record te selecteren met een som van de records van die maand

  3. Hoe kan ik MySQL toewijzingsoperator (:=) gebruiken in de slaapstand native query?

  4. hoe een dynamisch menu met submenu te maken met php &mysql