No emprego de RStudio como entorno de programación para R, temos á nosa disposición unha opción como é a de gardar as conexións á base de datos coa que traballamos. Neste caso é necesario levar a cabo unha serie de instruccións para lograr acadalo con seguridade. Nun primeiro momento, para que as nosas claves queden gardadas e non sexan visibles a través dos arquivos de conexión do RStudio podemos empregar diferentes métodos de seguridade co noso usuario e clave. Un primeiro paso seria o de gardar o usuario e a clave da base de datos de xeito que non sexa visible, pero tampouco fácilmente editable. Para lograr isto, empregamos dentro de R a libreria keyring. Para lograr isto o que facemos en primeiro lugar é xerar un «servizo» no que gardaremos o noso usuario e clave:
install.packages("keyring") keyring::key_set( service = 'SERVIZO_KEYRING', username = 'usuario' )
Unha vez excutado o código aparacerá un cadro de diálogo que nos permite introducir a nosa clave nese servizo para o usuario. Deste xeito, se chamamos ao servizo podemos leer tanto o usuario como a súa clave sen que apareza no arquivo de R.
Unha vez xerado o servizo para o usuario e clave a empregar podemos crear o conector ODBC. Para elo é necesario empregar sempre a libreria DBI de R dado que é a que permite que quede gravada na memoria de RStudio.
library(DBI)
Imos facer a proba cun conector que non empregue a conexión DSN para elo, dado que en Linux é necesario levar a cabo a configuración previa dos arquivos odbc.ini e freetds.ini que deixaremos para outro artigo. Para xerar o conector executaremos o código seguinte:
ConexionSQL <- DBI::dbConnect( odbc::odbc(), Driver = "PSQL", Server = "ip_servidor", Port = "porto", Database = "base de datos", Encoding = "UTF-8", UID = keyring::key_list("SERVIZO_KEYRING")[1,2], PWD = keyring::key_get("SERVIZO_KEYRING", keyring::key_list("SERVIZO_KEYRING")[1,2]) )
Deste xeito aparecerános no panel de Conexións de RStudio unha conexión á que podemos acudir co nome «base de datos». Recordar tamén que a conexión de RStudio vainos permitir observar unha primeira vez todas as base de datos dispñibles, pero en todas elas imos ter a clasificación de esquemas da nosa base de datos de referencia