Die Containertechnologie ist in geradezu idealer Weise geeignet, um Webapps auf Basis von R und Shiny zu hosten. Für den Shiny Server gibt es in der Community bereits fertige Container, welche direkt inhaltlich mit dem entwickelten Shiny-Code befüllt werden können. Dieser kann anschließend auch direkt im Container getestet werden. Anschließend kann der fertige Shiny-Server-Container auf eine der bereits beschriebenen Weisen publiziert werden.

Zugriffssteuerung

Speziell im Zusammenhang mit einem Shiny-Server-Container besteht die Möglichkeit einer Zugriffssteuerung direkt über die Anwendung, welche sich im Container befindet. Shiny Server unterstützt Authentifizierungsvarianten allerdings nur in der Pro-Variante. In diesem Fall jedoch gleich mehrere. Hierunter fallen Google und PAM Authentifizierung, sowie die Validierung von Zugangsdaten über ein Active Directory.

Sofern die Shiny Server Pro Lizenz aufgrund der Lizenzkosten uninteressant ist, bieten sich mit Docker verschiedene alternative Architekturen an, um eine Anwendung vor unerlaubtem Zugriff zu schützen. So kann bspw. ein Apache Server als vermittelnde Instanz zwischen den Anwender und den Shiny Server gesetzt werden und die Authentifizierung übernehmen. Als positiver Nebeneffekt sind im Funktionsumfang somit automatisch Redirects und andere Serverfunktionalitäten enthalten.

Eine weitere Möglichkeit der Authentifikation – und darüber hinaus der Autorisierung – stellt ShinyProxy dar. Hierbei handelt es sich um eine Open Source Java Server-Lösung, bei der die Zugriffssteuerung per Java Wrapper um die Shiny-Apps geregelt ist. Der Vorteil liegt darin, den Shiny Server ähnlich der Pro-Variante nutzen zu können, ohne dass dadurch zusätzliche Kosten entstehen.

Dr. Hornecker Software-Entwicklung und IT-Dienstleistungen

Leo-Wohleb-Strasse 6
D-79098 Freiburg

+49 (0) 761 - 20 55 10 - 20

Dr. Hornecker Softwareentwicklung und IT-Dienstleistungen