Far*_*rel 25 passwords r google-docs rstudio
我喜欢RGoogleDocs并且使用它很多.但是,我不喜欢一直输入密码.显然我可以在R脚本中输入密码,而不必再次输入密码.但这不可行,因为这意味着我的密码将在我的硬盘上保持未加密状态.此外,我与同事分享我的脚本.
为了解决这个问题,我提出了这个问题.
if(exists("ps")){
print("got password, keep going")
} else {
ps <-readline(prompt="get the password in ")
}
options(RCurlOptions = list(
capath = system.file("CurlSSL", "cacert.pem",
package = "RCurl"), ssl.verifypeer = FALSE)
)
sheets.con = getGoogleDocsConnection(
getGoogleAuth("notreal@gmail.com", ps, service ="wise"))
#WARNING: this would prevent curl from detecting a 'man in the middle' attack
ts2=getWorksheets("hpv type",sheets.con)
Run Code Online (Sandbox Code Playgroud)
我喜欢使用RStudio.当我看到办公室里的任何同事显示我的密码时,我感到很不舒服.我使用了假密码,但看看图像.
.此外,如果我保存了一个工作区,我的密码会随之保存,如果几个月之后,当我很久以前忘记了它的内容时,我担心我会把它交给别人,我发送了我的.RData向同事提交.
Dun*_*can 23
我的方法是在R启动文件的R选项列表中设置登录名和密码.Rprofile.然后我的代码获取值,getOption()然后值永远不可见或存储在顶级变量中globalenv().(如果通过事后调试,可以保存dump.frames).
至关重要的是,.Rprofile除了你以外的任何人都无法阅读.
所以
options(GoogleDocsPassword = c(login = 'password'))
Run Code Online (Sandbox Code Playgroud)
在.Rprofile然后
auth = getGoogleAuth()
Run Code Online (Sandbox Code Playgroud)
只是作为第一个参数的默认值工作是寻找GoogleDocsPassword选项.
D.
我有同样的问题,没有真正的解决方案.我使用的解决方法是,我为此目的创建了一个谷歌帐户,密码是我不关心的.然后,我分享了我希望R使用该帐户访问的文档.
但如果有人对我最感兴趣的初始问题有答案.