Search code examples
rpasswordsrstudiororacle

rstudioapi askForPassword without masking for username entry


Is there a way to disable the masking in the rstudioapi::askForPassword pop up window so a user can enter their username?

I am building a function I can share with my team for connecting to our Oracle DB instance using the ROracle pacakge

Current solution,

  connection <- dbConnect(
    driver
    , username = rstudioapi::askForPassword(prompt = 'Please enter username: ')
    , password = rstudioapi::askForPassword(prompt = 'Password: ')
    , dbname = 'my.connection.string'
  )

This pops up the following prompt: (image in link)

which is the solution described in the RStudio database docs that uses the Rstudio api

Would like to fund a solution that does not mask the password but pops up the same prompt (one nice line of code if possible...)


Solution

  • If you are using the preview version of RStudio (1.1.67+) there are newer functions available to you in the rstudioapi package, showPrompt seems to accomplish what you are after.

    connection <- dbConnect(
        driver,
        username = rstudioapi::showPrompt(
          title = "Username", message = "Username", default = ""
        ),
        password = rstudioapi::askForPassword(prompt = "Password"),
        dbname = "my.connection.string"
    )