DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / Développer une application ou un site / Spécificités WEBDEV / SaaS
  • Présentation
  • Activation de la prise en charge de SaaS
  • Mode de connexion
  • Page de connexion automatique
  • Page de connexion personnalisée
  • Remarques
  • Vérification des autorisations
  • Remarque
  • Personnalisation d'un site SaaS
  • Configuration du mode test
  • Utilisation d'un Serveur d'Application WEBDEV (limité ou non à 10 connexions)
  • Utilisation d'un Serveur SaaS local
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Développement d'un site SaaS
Activation de la prise en charge de SaaS
Pour activer la prise en charge des fonctionnalités SaaS dans le projet :
  1. Sous le volet "Projet", dans le groupe "Projet", cliquez sur "Description".
  2. Dans l'onglet "Projet", cochez l'option "Site SaaS (Software as a Service)" :
    Options SaaS
  3. Indiquez si nécessaire le nom du Serveur d'Application (ou l'adresse complète du Webservice SaaS) à utiliser pour le mode test.
    Pour utiliser le serveur SaaS local, aucune adresse ne doit être indiquée.
    Pour plus de détails, consultez Configuration du mode test.
  4. Indiquez le mode de connexion :
    • Cochez la case "Utiliser le mode "Connexion automatique"" pour utiliser le mode de connexion intégré de WEBDEV.
    • Si vous souhaitez personnaliser la page de connexion à l'application, décochez cette case.
Pour plus de détails, consultez le paragraphe Mode de connexion.
Mode de connexion

Page de connexion automatique

Lorsqu'un site SaaS utilise la page de connexion automatique, le Serveur d'Application WEBDEV génère une page permettant à l'utilisateur de se connecter au site.
Cette page prend en charge les opérations suivantes :
  • Saisie du login et d'un mot de passe.
    • Un lien permet de gérer l'oubli du mot de passe. Dans ce cas, un email est envoyé à l'utilisateur avec le code de sécurité correspondant.
      Attention : pour utiliser cette fonctionnalité, il est nécessaire de renseigner l'adresse email de l'utilisateur et de configurer l'administrateur SaaS pour l'envoi d'emails par SMTP.
    • Après 3 tentatives de saisie du mot de passe, la saisie d'un captcha est demandée en plus du mot de passe pour l'identification.
  • Appel de la fonction SaaSConnecte pour vérifier les informations d'authentification fournies.
  • Vérification si l'utilisateur est titulaire d'une licence pour au moins un service fourni par le site.
  • Changement automatique de la connexion de tous les fichiers de données de l'analyse du site.
    Ce changement est équivalent au code suivant :
    HChangeConnexion("*", SaaSConnexionClient())
Avantages de cette méthode :
  • Si le site définit uniquement un seul service, il n'y a rien à programmer.
  • Test rapide du passage d'un site en SaaS.
  • Possibilité d'affiner le résultat des appels automatiques en utilisant les fonctions HChangeConnexion ou SaaSVérifieService dans le site.

Page de connexion personnalisée

Si le mécanisme de connexion automatique n'est pas utilisé, il est nécessaire de prévoir une page du site pour gérer un mécanisme d'authentification de l'utilisateur auprès du Websevice SaaS.
La page de connexion doit :
  1. Appeler la fonction SaaSConnecte pour établir la connexion au Webservice SaaS.
  2. Vérifier quels sont les services que l'utilisateur peut utiliser (fonction SaaSVérifieService).
  3. Changer la connexion des fichiers de données de l'analyse en utilisant la fonction HChangeConnexion. Les informations de connexion de l'utilisateur SaaS en cours peuvent être récupérées grâce à la fonction SaaSConnexionClient.
Avantages de cette méthode :
  • Possibilité de personnaliser la page de connexion.
  • La page de connexion n'est pas obligatoirement la première page site. Il devient possible d'avoir une partie "publique" visible par tous et une partie "privée" accessible aux seuls utilisateurs authentifiés.

Remarques

  • Même la partie publique d'un site peut nécessiter un appel à la fonction SaaSConnecte (en utilisant un identifiant "invité") afin de permettre la personnalisation de l'interface utilisateur du site grâce aux paramètres associés au compte client SaaS. Pour plus de détails, consultez Personnalisation d'un site SaaS.
  • Il est recommandé d'accéder à la page de connexion en utilisant le protocole HTTPS afin d'éviter de faire circuler les informations d'authentification en clair sur le réseau.
  • Pour accroître encore la sécurité d'un site SaaS, il est possible de placer le Webservice sur une machine qui n'est pas accessible publiquement mais seulement depuis le Serveur d'Application WEBDEV hébergeant le site SaaS. De cette façon, les requêtes au Webservice ne peuvent pas être interceptées.
Vérification des autorisations
Il est possible de segmenter les différentes fonctionnalités offertes par un site SaaS en déclarant des services dans l'Administrateur SaaS. Ces services sont ensuite mis à la disposition des utilisateurs par le biais de tarifications. Une tarification regroupe un ou plusieurs services. Les comptes utilisateur souscrivent des abonnements aux tarifications et distribuent les licences ainsi obtenues à leurs utilisateurs.
Pour vérifier que l'utilisateur connecté possède bien une licence correspondant à une fonctionnalité du site, il suffit d'utiliser la fonction SaaSVérifieService.
Par exemple, il est possible d'afficher un message d'erreur et rediriger l'utilisateur. La fonction SaaSVérifieService est employée dans le code d'initialisation d'une page de la façon suivante :
// Vérifie que l'utilisateur est autorisé à ajouter de nouveaux incidents dans la base
SI SaaSVérifieService("Ajout d'incident") = Faux ALORS
Erreur("Votre niveau d'abonnement ne vous autorise pas à ajouter de nouveaux incidents.")
PageAffiche(PAGE_ListeBug)
FIN
Il est également possible de rendre invisibles les éléments auxquels l'utilisateur n'a pas accès :
// Masque le graphe des statistiques
// si l'abonnement de l'utilisateur en cours n'inclus pas le service "statistiques"
GRF_Stat.Visible = SaaSVérifieService("statistiques")

Remarque

Même dans le cas d'un site offrant un nombre limité de services, il est toujours utile de déclarer des constantes correspondant aux noms des services afin d'éviter des fautes de frappe dans les appels à la fonction SaaSVérifieService.
Personnalisation d'un site SaaS
Il est possible de personnaliser l'IHM et le fonctionnement d'un site SaaS pour chaque compte client. Cette personnalisation peut se faire de la façon suivante :
  • Libellé dépendant du compte client.
  • Images propres à chaque compte client.
  • Fonctionnement interne (algorithmes du site) dépendant du compte client.
L'essentiel du paramétrage par client repose sur l'utilisation de la fonction SaaSLitParamètreSite.
L'administrateur du système SaaS peut en effet définir pour chaque site déclaré dans l'Administrateur SaaS, un ou plusieurs paramètres. Ces paramètres (identifiés par leur nom) peuvent être relus dans le code du site grâce à la fonction SaaSLitParamètreSite pour influer sur le fonctionnement du site.
Voici quelques exemples :
  • Paramétrage du logo et du titre des pages du site
    Ce code peut être utilisé dans un modèle de pages, présent dans chaque page du site.
    // Paramétrage de l'IHM du site SaaS
    IMG_Logo = SaaSLitParamètreSite("ImageLogo")
    LIB_Titre = SaaSLitParamètreSite("TitreClient")

    Dans cet exemple, il suffit de déclarer "ImageLogo" et "TitreClient" comme étant des paramètres du site et de personnaliser leur valeur pour chaque compte client.
  • Paramétrage de l'algorithmique du site
    bEstUnPro est un booléen
    bEstUnPro = SaaSLitParamètreSite("ComptePro")
     
    SI bEstUnPro = Vrai ALORS
    AppliqueRemisePro()
    SINON
    AppliqueRéductionCarteFidélité()
    FIN

    Dans cet exemple, le paramètre "ComptePro" indique si le compte client référence un professionnel ou un particulier et un traitement particulier est appelé en fonction de cette information.
Configuration du mode test
Afin de pouvoir lancer un site SaaS en mode test, plusieurs configurations sont possibles :
  • Utilisation d'un Serveur d'Application WEBDEV.
  • Utilisation d'un Serveur d'Application WEBDEV de test limité à 10 connexions.
  • Utilisation d'un Serveur SaaS local.

Utilisation d'un Serveur d'Application WEBDEV (limité ou non à 10 connexions)

Pour utiliser un Serveur d'Application WEBDEV en mode test, il suffit d'indiquer :
  • soit son nom (ou son adresse IP) dans le champ correspondant de la fenêtre de description du projet (sous le volet "Projet", dans le groupe "Projet", cliquez sur "Description").
  • soit l'URL complète du Webservice (pour faire usage du protocole HTTPS par exemple).

Utilisation d'un Serveur SaaS local

Pour utiliser un Serveur d'Application WEBDEV local en mode test, il suffit de ne pas spécifier d'adresse pour le serveur SaaS dans la description du projet. Pour lancer l'administrateur SaaS local, sous le volet "Outils", dans le groupe "Utilitaires Web", cliquez sur "WDAdminSaaS".
Liste des exemples associés :
WW_SiteClientSAAS Exemples didactiques (WEBDEV) : WW_SiteClientSAAS
[ + ] L'exemple "WW_SiteClientSAAS" est un exemple d'utilisation des fonctions d'administration SaaS de WEBDEV.

Cet exemple se présente sous forme d'un site de vente de solutions SaaS.
Pour utiliser cet exemple, un site SaaS doit être configuré tel que défini dans le code d'initialisation du projet.
L'internaute peut ainsi s'abonner à une ou plusieurs tarifications données d'un site SaaS sans faire appel à l'administrateur du serveur SaaS.
Version minimum requise
  • Version 15
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 25/05/2022

Signaler une erreur ou faire une suggestion | Aide en ligne locale