Connexion de l'application DataMonitoring au Serveur d'Authentification SoDevLog

Vous connaissez notre solution en ligne de Dashboard Universel. Ce post met le focus sur l'Authentification des utilisateurs au sein de la plateforme.

Un fois le développement de l'application STS IdentityServer de la SoDevLog testé et validé, nous avons implanté le code client au sein de l'application de DataMonitoring. Je vous présente rapidement les résultats obtenus.

C'est le bouton Login de la SmartAdmin UI qui permet de rediriger vers le Serveur d'Authentification  STS IdentityServer :

Page d'Accueil du DataMonitoring System - Clique sur le bouton Login

L'utilisateur est redirigé vers le Serveur d'Authentification où il peut entrer ses données de connexion, gérer son profile utilisateur ou bien s'enregistrer sur la plateforme si cela n'est pas déjà fait.

L'utilisateur s'authentifie avec ses informations de Connexion

Il est reconnu dans l'application de DataMonitoring, il est donc affublé des droits et des rôles que lui a octroyé le Serveur d'Authentification (et l'Administrateur de la plateforme).

L'utilisateur aaa@bbb.com est reconnu au sein de l'application de DataMonitoring

Jusque là rien que du très classique mais c'est une étape importante car les utilisateurs de l'application de DataMonitoring vont maintenant pouvoir s'enregistrer en ligne et venir utiliser l'application. Ce sont les prémices de la mise en ligne de notre plateforme de Dashboard Universel.

Merci de votre attention, n'hésitez pas à commenter, à suivre, à partager.

Sts Identity Server 4 - Secure Token Service for Authentication in web applications

Je vous présente le Server d'authentification SoDevLog, pour gérer les connections des utilisateurs au sein de vos applications Web. Lors que vous développez des applications Web, il vous faut gérer la communauté  des utilisateurs de votre application Web. C'est à dire authentifier les utilisateurs qui vont venir utiliser votre plateforme leur donner des droits, gérer ces droits.

Pour réaliser cette fonctionnalité SoDevLog à développé un STS IdentityServer sur la base de ASP.NET Core Identity et IdentityServer4, c'est l'application que je vous propose de découvrir rapidement en parcourant les principaux écrans.@suer

S'enregistrer pour obtenir des Autorisations

La page d'accueil informe vos utilisateurs qu'ils ont besoin de s'enregistrer pour accéder à vos applications. Ils s'enregistrent, ils sont alors authentifiés.

Secure Token Service - Server d'authentification pour application Web - Page d'Accueil
Secure Token Service - Server d'authentification pour application Web - Page d'Accueil

C'est une Interface Multilingue et on peut ajouter autant de langues que vous le désirez simplement en ajoutant un fichier de traduction.

S'enregistrer en Allemand :

Secure Token Service - Server d'authentification pour application Web - Page d'Accueil en Allemand
C'est une plateforme d'authentification pleine de ressources.

Une fois enregistré, l'utilisateur peut se connecter

Avec une gestion de mots de passe oubliés, c'est pratique.

Secure Token Service - Server d'authentification pour application Web - Page de Login

L'utilisateur enregistré administre les données de son compte 

Vous vous identifiez afin de découvrir vos prérogatives en tant qu'utilisateur. L'administrateur de la plateforme peut vous ajouter des Rôles et d'autres prérogatives.

Secure Token Service - Server d'authentification pour application Web - Page de Login
Secure Token Service - Server d'authentification pour application Web - Page de Login

Vous accédez à vos données personnelles que vous gérez entièrement juqu'à leur totales suppression pour respecter les règles en vigueur.

Secure Token Service - Server d'authentification pour application Web - Vos Paramètres

La Plateforme respecte entièrement la réglementation en vigueur, vis à vis des données personnelles.

Vous pouvez remarquer que l'on récolte plus d'informations sur nos utilisateurs, leur date de naissance, leur société, leur adresse car c'est important pour nous de nous adresser à des professionnels. Nous vendons des solutions logicielles professionnelles.

Secure Token Service - Server d'authentification pour application Web - Autorisation

L'utilisateur peut voir ses autorisations celles qui lui ont été attribuées par l'administrateur de la plateforme.

Secure Token Service - Server d'authentification pour application Web - Prérogatives de l'utilisateur
Et d'autres informations qui concernent son compte d'utilisateur.

Administrer les Utilisateurs

Il faut un Administrateur pour administrer la plateforme d'authentification. Suivant son rôle, s'il est administrateur, l'utilisateur peux administrer les utilisateurs, leur attribuer des prérogatives, des accès ou non.

Secure Token Service - Server d'authentification pour application Web - Administration

Il gère l'attribution des rôles au sein de l'application.

Secure Token Service - Server d'authentification pour application Web - Gestion des rôles Utilisateurs

Des écrans simples, des fonctionnalités pratiques.

Ajouter une légende

Une interface d'Administration des utilisateurs simple et efficace. Juste ce dont vous avez besoin, une liste des utilisateurs enregistrés que vous pouvez mettre à jour. Les rôles définis dans l'application et la possibilité d'attribuer ou non ces rôles aux utilisateurs.

C'est la plateforme qu'il vous faut pour administrer les utilisateurs de vos applications clientes.

Mon premier Tableau de Bord avec le Dashboard Universel

Je voulais vous faire part d'un premier résultat complet et intéressant obtenu avec le Dashboard Universel. L'objectif de cette séquence est et de démontrer la mise à jour automatique des données dans l'Interface Graphique du Dashboard lorsqu'elles sont modifiées depuis la base de donné.

Dashboard Universel
Dashboard Universel

Pour ce faire, je vous ai concocté un petit film muet (pas plus de trois minutes) que voici :



On peut y voir le déroulement de la séquence suivante :

1. Il y a tout d'abord un Tableau de bord affiché dans le navigateur Internet. Je montre le temps du dernier rafraîchissement du Tableau de bord qui date d'environ une minute.
2. Ensuite, je vais modifier les données directement dans la base grâce à Visual Studio Server Explorer qui me permet de modifier les données dans la base de données.
3. On revient sur la page monitor du Dashboard Universel dans le navigateur.
4. Je vous fais observer l'indication du "Temps de rafraîchissement".
5. Il va se passer quelque chose mais il faut être un peu patient.
6. Le graphe se met à jour à partir des données de la base.

Voilà, j'espère que cela vous a plu et que vous n'hésiterez pas à me faire part votre retour.

Présentation complète de Notre Solution Ici : Dashboard Universel

Devenir un éditeur de logiciels

Ce n'est pas un métier simple, j'ai souvent vu des éditeurs qui ont commencés par aligner des lignes de codes sources pour réaliser un logiciel sur un coin de table souvent en VB d’ailleurs (Visual Basic ;). Et puis ces lignes de codes sont devenues un logiciel, c'est une des plus mauvaise façon de faire.

Des sociétés installées sont assises sur des milliers de lignes de codes mais ne savent plus quoi en faire ni ce qu'elles font quand la brillante idée du manager survient un jour, il annonce : "Et si nous devenions éditeur de logiciel".

Avant de vous lancer dans cette aventure, il vous faut avant tout penser au bien être de vos clients et à celui de vos salariés ...

Respecter le bien être de vos clients cela implique de leur livrer le bon logiciel avec les bonnes fonctionnalités sans régression et en maîtrisant parfaitement le périmètre des fonctionnalités.

Le bien être de vos salariés repose sur la mise en place d'une "façon de faire" pour éviter le stress de la mise en production et pour contrôler le développement. L'ensemble de ses techniques est aujourd'hui rassemblées sous le terme de "devops" qui a pour objectif de faciliter les liens entre la R&D, des gens obscures difficiles d'accès qui développent n'importe quoi et les opérationnels qui ne comprennent rien à rien mais qui déploient et forment les clients.

Etre un éditeur de logiciels, c'est pratiquer un vrai métier avec un savoir faire. C'est avoir des pratiques professionnelles qui ne s'improvisent pas en écrivant quelques lignes de Visual Basic sur un coin de table.

Dashboard Universel - Etude de la concurrence

Le Dashboard Universel est le projet que développe actuellement la SoDevLog, une application web ASP.NET Core, EF Core et Angular pour le front, afin de créer des fonctionnalités autour d'un Dashboard Universel, d'un Universal Dashboard en anglais.

Dashboard-Universel

De quoi s'agit-il ? Depuis de nombreuses années dans le développement logiciel, je remarque une demande récurrente de la part de mes clients : mieux maîtriser leur SI (Système d'Information). Parmi les éditeurs de logiciels dans la GED, dans le Broadcasting Audiovisuel, dans l'IT, la maîtrise du SI est une problématique cruciale.

Ils développent de plus en plus de fonctionnalités autour de leur ERP et puis ils  perdent la maîtrise de leur SI car ils n'ont pas intégré des fonctions de BI qui leur permettraient d'avoir une vision synthétique et clair de ce qu'il se passe dans le SI.

Je tape la requête de moteur de recherche : "Universal Dashboard" je trouve :

Universal Dashboard. Powered by Jekyll & Minimal Mistakes

Avec un peu plus de documentation Ici :

Universal Dashboard - Concepts

C'est vraiment très programmatique, il s'agit d'écrire des scripts PowerShell qui seront exécutés sur le serveur de l'application pour afficher votre Dashboard Universel. Je crois que bon nombre d'entre nous n'ont pas envie d'investir dans l'apprentissage de ce langage.

Contrôles Utilisateurs, contrôles graphiques

C'est une part importante de ce type de projet, il faut choisir le bon fournisseur de contrôles graphiques celui que l'on va pouvoir facilement intégrer dans nos technologies. Voici une présentation des différents choix possibles.

Font Awesome

w3schools - Font Awesome Introduction

C'est vrai qu'en matière de front et de jolis contrôles utilisateurs, JS c'est vraiment bon, et je trouve avec Angular ces sites :

THEMESelection - Angular Admin Template

ThemeSelection 40+ BEST FREE & PREMIUM ANGULAR ADMIN TEMPLATE 2019

CREATIVE TIM - Material Dashboard Angular

Creative TIM - Dashboard

JavaScript, il faut dire que c'est vraiment superbe :

template/Dashboard/Web App - Joli Admin for Angular JS
Autre type de gestion des styles avec Angular :

SmartAdmin - Angular5 Dashboard

SmartAdmin - Angular5 Dashboard

Firebase - Helps mobile and web app teams succeed

Petite remarque concernant Firebase : J'avoue ne pas avoir tout compris sur le site de Firebase, par exemple, si je souhaite acheter le template de leur SmartAdmin comment je fais ... ?!

C'est magnifique et c'est le genre de Dashboard que vous obtiendrez dans notre solution de Dashboard Universel car nous implémentons cette interface JavaScript. Nous avons choisi pour vous SmartAdmin.

J'ai également visité ce site :

SmartAdmin WebApp
On dirait une suite mais payante ...

Et le chaînon manquant sans doute Ici :
SmartAdmin Site
https://www.gotbootstrap.com/

Logiciels de tableaux de bord

Avant de se lancer dans la réalisation d'une solution, il me faut poursuivre et avoir en tête une idée de ce que fait la concurrence, je trouve ce site intéressant par rapport aux fonctionnalités d'un Tableau de bord et de leurs comparaison.

Cet article est véritablement complet sur ce sujet.

Capterra - Logiciels de tableaux de bord

Choix des technologies

Fervent utilisateur des technos Microsoft, C# .NET, ASP.NET. Aujourd'hui, je suis donc partant pour une stack ASP.NET Core, Entity Framework Core et Angular pour le front.

Dashboard Universel - Notre solution
Voici une présentation plus complète de notre solution.

N'hésitez pas à nous contacter.