Итак, я создал небольшое приложение Shiny и разместил его на сервере, скажем, на сервере A. Это приложение попытается подключиться к другому серверу, скажем, серверу B по ssh. Для этого подключения я использовал run.remote из пакета ssh.utils CRAN.
Когда я пытаюсь запустить приложение Shiny из RStudio (с помощью кнопки «Запустить приложение») непосредственно на сервере A, появляется небольшое окно с запросом пароля для доступа к серверу B.
Однако, когда я использую shiny-server на сервере A и запускаю приложение, я не вижу всплывающего окна с запросом пароля. Тем не менее, в журнале блестящего сервера я обнаружил следующее сообщение:
Permission denied, please try again.
Permission denied, please try again.
Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).
Это означает, что мое приложение трижды пыталось получить доступ, о котором я не знаю.
Мой вопрос: что мне делать с shiny-server, чтобы он тоже выскочил из окна, чтобы спросить пароль, как когда я использую Rstudio? Другой - я не хочу использовать закрытый / открытый ключ ssh.
Вот мой простой код, который находится на сервере A:
library(shiny)
library(shinyFiles)
library(ssh.utils)
ui <- fluidPage(
navbarPage(title = "Main window",
tabPanel(title = "Test SSH",
textInput(inputId="username", label = h3("Username:")),
actionButton("submit", "Submit")
)
)
)
server <- function(input, output, session) {
observeEvent(input$submit, {
## submit function here ##
res <- run.remote("randomScript",remote = paste0(input$username,"@server-b.de"))
})
}
shinyApp(ui = ui, server = server)
Заранее спасибо.