Le fil

Shinymanager : sécurisez simplement vos applications R Shiny

R&D - 1 mars 2020

Contrôler les utilisateurs, gérer les droits en fonction des profils… le package shinymanager développé par Datastorm est un outil simple et robuste pour administrer vos applications R Shiny.

Le développement d’une application Shiny est devenu une étape quasi inévitable de la plupart des projets de data science. En effet, la richesse de l’écosystème R, notamment sur les outils de visualisation grâce à l’excellent package htmlwidgets, couplée à la puissance et la simplicité de Shiny, permet de développer rapidement une application web à destination des utilisateurs « métier ». Cependant, la question de la sécurisation de l’accès à ces données et ces résultats se pose rapidement : comment contrôler les utilisateurs et gérer les droits, qui peuvent varier en fonction des profils ?

Une alternative gratuite et simple d’utilisation

Bien évidemment, des outils existent déjà sur le marché comme le déploiement sur la plateforme shinyapps.io, l’utilisation de shiny-server pro ou RSConnect ou encore l’utilisation de shinyproxy. Mais toutes ces solutions présentent des inconvénients :

> Achat d’une licence amenant l’authentification pour les produits RStudio
> Installation et configuration plus complexe côté serveur

Shinymanager a donc été pensé et développé pour amener une solution alternative, gratuite, et simple d’utilisation pour administrer des applications Shiny.

shinymanager

Shinymanager propose deux modes de fonctionnement :

> L’utilisation directe d’une table contenant les informations de connexion.
> L’utilisation d’une base de données SQLite chiffrée. Ce choix préférentiel permet notamment par la suite d’administrer la base des utilisateurs et d’accéder aux logs d’utilisation.

Les + de shinymanager :

> Simplicité d’utilisation
> Customisation de l’interface / support multilingue (actuellement français, anglais et portugais)
> Déconnexion automatique / expiration des droits d’accès
> Base de données chiffrée
> Console d’administration (Ajout, modification, suppression des utilisateurs / Gestion des mots de passe (politique, réinitialisation) / Logs d’usage)

shinymanager

shinymanager

Sécurité

Shinymanager utilise des requêtes http couplées à des tokens sha256 temporaires afin de garantir l’accès à l’application. En complément, la base de données d’authentification est cryptée à l’aide d’openssl et d’une clé de chiffrement. Le code source web de l’application étant également protégé.

Le package shinymanager a été développé par Datastorm en collaboration avec dreamRs.

logo shinymanager

Shinymanager sur Github :
https://github.com/datastorm-open/shinymanager

Documentation :
https://datastorm-open.github.io/shinymanager/

R&D
Voici shinydrive, le dernier-né des packages Datastorm

Dans la famille des packages shiny de Datastorm, voici le petit dernier : shinydrive. Le package shinydrive a été développé pour répondre à un besoin simple : faciliter le partage de fichiers entre différents utilisateurs d’une application R/shiny.

R&D
Functional Data : un potentiel encore peu exploré

La dernière matinée R&D de Datastorm était notamment consacrée aux données fonctionnelles. Elles peuvent apporter de nouvelles pistes de modélisation pour la prévision ou l’analyse. Le point avec Benoit Ravel, CEO de Datastorm.

Replay webinar : Anticiper les dérives de vos Modèles de Machine Learning grâce au MLOps

La multiplication des projets data et des algorithmes expose les entreprises à un risque aujourd’hui clairement identifié : la baisse de performance des modèles de Machine Learning. Il est pourtant capital d’anticiper les dérives de vos modèles et le Machine Learning Operations (MLOps) peut vous y aider. Dans ce nouveau webinaire, les équipes de Datastorm vous expliquent comment.

Toute l'expertise du Groupe ENSAE-ENSAI

Plateau de Saclay
5 Avenue Henry-Le-Chatelier
91120 PALAISEAU - FRANCE

Paris
24 rue Barbès
92120 MONTROUGE - FRANCE