Installation de MyReport Center

Configuration de MyReport Center (Machine locale et distante)

Généralités

Le fonctionnement de MyReport Center est le même, qu'il soit utilisé en local sur la même machine que le serveur MyReport ou sur une machine distante en mode déporté (en DMZ ou non).

La communication entre le serveur MyReport et le serveur Center s'effectue toujours via le port 9089. Par conséquent, le serveur MyReport et le site Center peuvent être situés sur deux environnements distincts.

Seul le serveur MyReport a accès aux MySystems, aux Datawarehouses, aux bases sources ainsi qu'aux fichiers sources.

Important

Les parties authentification des utilisateurs (accès au fournisseur d'identité et à la base des licences et log Embedded) sont déléguées par le site d'authentification au Serveur MyReport.

Schéma de fonctionnement de MyReport Center

Figure 3.7. Principe de fonctionnement

Principe de fonctionnement

Prérequis

MyReport Center et MyReport Server doivent pouvoir communiquer entre eux :

  • Le serveur Center doit pouvoir communiquer avec le serveur MyReport (port 9089 par défaut).
  • L'application MyReport Server doit connaitre les URLs de MyReport Center (Onglet "Serveur Web" de l'application "MyReport Server" à renseigner).

Extension Manager

Important

Extenstion Manager nécessite que MyReport Center soit configuré en site / sous-sites.

Lors de l'installation d'une version compatible de MyReport, IIS installe et configure automatiquement, de manière transparente, les deux sous-sites : CenterExtension et CenterExtensionAPI.

éléments installés par l'updater :

  • Les deux sous-sites :

    • CenterExtension : sous-site Extension manager.
    • CenterExtensionAPI : sous-site pour la gestion API d' Extension Manager.
  • Les deux pools d'applications :

    • extapi
    • extensions
  • Explications :

    • urlExtensionManager : Permet à l'application d'accéder au site extensions pour le paramétrage de l'extension.

Droits des utilisateurs

Tout accès au site Extension Manager ainsi qu'à la configuration de l'extension nécessite l'ajout de l'autorisation suivante dans Administrator :

  • Server Center BE :

    • Accès à Extension Manager

Configuration

  • Ouvrir le port de MyReport Server (par défaut : 9089) pour permettre son utilisation par le Serveur Web (Center).
  • Pour une utilisation de MyReport Center sur une machine distante ou sur un serveur MyReport sécurisé avec un certificat SSL, suite à l'installation, il est nécessaire de modifier les fichiers de configuration ci-dessous :

    • Site

      Chemin par défaut du fichier de configuration

      Paramétrage à ajouter (partie en gras)

      Client Center

      C:\inetpub\MyReportCenter\ClientCenter\assets\config\config-center.json

      {
        "urlServerCenter": "/api",
        "urlAuthentication": "/auth",
        "urlExtensionManager": "###MonServeurMyReport###/extensions",
        "urlExtensionManagerApi": "###MonServeurMyReport###/extapi",
        "hideKpisUntilMeasurements": false,
        "urlMyReportUpdaterInstaller": "",
        "enablePortDiscovery": true
      }

      Site d'authentification

      C:\inetpub\MyReportCenter\ServerIdentity\appsettings.json

      {
        "urlClient": "/",
        "urlExtensionManagerClient": "###MonServeurMyReport###/extensions",
        "urlExtensionManagerApi": "###MonServeurMyReport###/extapi/api/v1",
        "applicationServer" : {
          "enabled" : true,
          "host" : "###MonServeurMyReport###",
          "port" : 9089,
          "SSLEnabled" : true,
          "certificat": "###NOM DU CERTIFICAT###"
        },
        "identityProvider": {
          "isPermettreAuthentificationBE": true // Permet l'affichage d'une fenêtre intermédiaire permettant la connexion avec un utilisateur MyReport (hors fournisseur d'identité) même sur un compte avec un IdP de type Graph configuré. Sinon, l'utilisateur est directement redirigé pour authentification sur l'environnement de l'IdP.
        }
      }

      Site API

      C:\inetpub\MyReportCenter\ServerCenter\appsettings.json

      {
        "Logging": {
          "LogLevel": {
            "Default": "Warning"
          }
        },
        "AllowedHosts": "*",
        "urlAuthentication": "/auth",
        "AllowedHosts": "*",
        "ConnectionStrings": {
          "ExtensionManagerStorageAPI": "https://extension-manager-api.myreport.fr"
        },
        "ExtensionGrpc": {
          "ChannelUrl": "http://localhost:9089"
        },
        "Serilog": {
      
        },
        "applicationServer" : {
          "enabled" : true,
          "host" : "###MonServeurMyReport###",
          "port" : 9089,
          "SSLEnabled" : true,
          "certificat": "###NOM DU CERTIFICAT###"
        }
      }
    • Explication

      • enabled : Indique que le serveur est dédié (par défaut à true).
      • host : Il s'agit de l'adresse du serveur MyReport BE qui est accessible depuis le serveur dédié.
      • port : Numéro de port utilisé par le serveur MyReport BE.
      • SSL Enabled : Cette option spécifie si le paramètre de connexion sécurisée est activé dans MyReport Server, permettant ainsi l'utilisation du protocole SSL/TLS pour chiffrer les communications.
      • Certificat : Il s'agit du nom de domaine associé au certificat SSL déclaré dans MyReport Server. Ce certificat est utilisé pour établir une connexion sécurisée entre MyReport Center et MyReport Server.

    Note

    Le fichier doit être dans un format JSON valide, il faut faire attention à rajouter une virgule avant "applicationServer".

Installation Standard

Important

MyReport Center ne fonctionne qu'avec une seule liaison : il n'est pas possible de le faire fonctionner en même temps sur l'URL "http://localhost:8080" et sur une URL public "http://monCenter.fr".

Installation standard pilotée par le setup

Note

Depuis la version 4.1.0, le setup peut vérifier si les prérequis de MyReport Center sont bien présents, et proposer de les installer le cas échéant.

Il est possible de ne pas faire ces vérifications en décochant les options dans la fenêtre de sélection des produits.

Procédure d'installation :

  • Vérification d'une installation précédente de IIS (IIS-WebServer et IIS-WebServerRole) et proposition d'installation

    • Si l'utilisateur accepte, le setup installe IIS, URL Rewrite et DotNetCoreBundle et demande le redémarrage de la machine.
    • Si l'utilisateur refuse, IIS, URL Rewrite et DotNetCoreBundle ne seront pas installés, et Center ne sera pas configuré automatiquement.

      Les fichiers de Center seront tout de même copiés, et l'utilisateur pourra faire une installation manuelle ultérieure.

  • Si IIS est installé :

    • Le setup opère une vérification et l'installation de « URL Rewrite » et « DotNetCoreBundle ».
  • Installation des applications lourdes MyReport.
  • Copie des fichiers Center.
  • Si IIS est installé, le setup vérifie si un site IIS utilise le dossier de Center :

    • Si un site existe, l'installation est terminée.
    • Sinon :

      • Le setup demande à l'utilisateur s'il veut l'installer automatiquement et lui demande de choisir un port parmi la liste suivante (filtrés sur les ports déjà utilisés par IIS) : 80, 81, 82, 8080, 8081, 8082.
      • Le setup effectue la configuration des sites et des pools d'applications pour une installation standard en localhost sur le port choisi.

Installation standard manuelle

Création des Pools d'applications

  • Lancer le Gestionnaire des services Internet (IIS)
  • Cliquer sur le nœud serveur
  • Cliquer droit sur " Pools d'applications"
  • Cliquer sur ajouter "Ajoute un pool d'applications"
  • Tableau 3.1. Configuration du Pool d'application Center

    Paramètre

    Valeur

    Version du CLR.NET

    Aucun code managé

    Identité

    LocalSystem (ou utilisateur ayant les droits sur les MySystems)


  • Tableau 3.2. Configuration du Pool d'application CenterAPI

    Paramètre

    Valeur

    Version du CLR.NET

    Aucun code managé

    Identité

    LocalSystem (ou utilisateur ayant les droits sur les MySystems)


  • Tableau 3.3. Configuration du Pool d'application CenterAuth

    Paramètre

    Valeur

    Version du CLR.NET

    Aucun code managé

    Identité

    LocalSystem (ou utilisateur ayant les droits sur les MySystems)


  • Tableau 3.4. Configuration du Pool d'application CenterExtension

    Paramètre

    Valeur

    Version du CLR.NET

    Aucun code managé

    Identité

    LocalSystem (ou utilisateur ayant les droits sur les MySystems)


  • Tableau 3.5. Configuration du Pool d'application CenterExtensionAPI

    Paramètre

    Valeur

    Version du CLR.NET

    Aucun code managé

    Identité

    LocalSystem (ou utilisateur ayant les droits sur les MySystems)


Création du site "Center"

  • Tableau 3.6. Dans l'arborescence sur la gauche, faire un clic droit sur "Sites", puis sélectionner "Ajouter un site"

    Nom du site

    Center

    Chemin d'accès physique

    C:\inetpub\MyReportCenter\ClientCenter

    Port

    8080

    Pool d’applications

    Center


Création du sous-site "api"

  • Tableau 3.7. Click droit sur le site Center => « Ajouter une application »

    Alias

    api

    Chemin d'accès physique

    C:\inetpub\MyReportCenter\ServerCenter

    Pool d’applications

    CenterAPI


  • Retirer les règles de réécriture d’URL si elles existent

    • Sélectionner l’application « api »
    • Double-cliquer sur « Réécriture d’URL »
    • Supprimer la règle « pushState »

Création du sous-site "auth"

  • Tableau 3.8. Click droit sur le site Center => « Ajouter une application »

    Alias

    auth

    Chemin d'accès physique

    C:\inetpub\MyReportCenter\ServerIdentity

    Pool d’applications

    CenterAuth


  • Retirer les règles de réécriture d’URL si elles existent

    • Sélectionner l’application « auth »
    • Double-cliquer sur « Réécriture d’URL »
    • Supprimer la règle « pushState »

Création du sous-site "extapi"

  • Tableau 3.9. Click droit sur le site Center => « Ajouter une application »

    Alias

    extapi

    Chemin d'accès physique

    C:\inetpub\MyReportCenter\APIExtensionManager

    Pool d’applications

    CenterExtensionAPI


  • Retirer les règles de réécriture d’URL si elles existent

    • Sélectionner l’application « extapi»
    • Double-cliquer sur « Réécriture d’URL »
    • Supprimer la règle « pushState »

Création du sous-site "extensions"

  • Tableau 3.10. Click droit sur le site Center => « Ajouter une application »

    Alias

    extensions

    Chemin d'accès physique

    C:\inetpub\MyReportCenter\ClientExtensionManager

    Pool d’applications

    CenterExtension


  • Retirer les règles de réécriture d’URL si elles existent

    • Sélectionner l’application « extensions»
    • Double-cliquer sur « Réécriture d’URL »
    • Supprimer la règle « pushState »

Configuration de l'aperçu dans MyReport Page et synchronisation de MyReport Center avec le projet

Important

La configuration de ces adresses est nécessaire pour propager les modifications des tableaux de bord de MyReport Page à MyReport Center.

Configurer les adresses de Center dans MyReport Server:

  • Adresse du serveur de consultation des tableaux de bords en ligne : http://localhost:8080
  • Adresse du serveur API : http://localhost:8080/api
  • Adresse du serveur d'authentification : http://localhost:8080/auth

Test de l'installation

Tester l'installation standard

  1. Rendez-vous sur http://localhost:8080/ pour tester l'installation du Center

Il est possible de tester différents appels depuis MyReport Server dans l'onglet "Serveurs Web" :

  • Adresse du site : ouvre l'URL dans un navigateur. MyReport Center doit s'ouvrir

  • Adresse du serveur d'API :

    • Requête l'API via l'adresse ".../api/v1/health" pour tester la communication Serveur MyReport => Serveur API
    • Puis le serveur API requête la base de licences pour tester la communication Serveur API => Serveur MyReport
  • Adresse du serveur d'authentification

    • Requête l'authentification via l'adresse ".../health" pour tester la communication Serveur MyReport => Serveur Authentification
    • Puis le serveur d'authentification requête la base de licences pour tester la communication Serveur Authentification => Serveur MyReport

Avertissement

Si une erreur apparaît au chargement d'un fichier de configuration (json), il faut vérifier que IIS accepte les fichiers json :

  • Ouvrir IIS
  • Sur le nœud du serveur, cliquer sur Types MIME
  • Vérifier que l’extension ".json" existe
  • Si elle n'existe pas, la rajouter :

    • Extension : ".json"
    • Type MIME : "application/json"

Paramétrage avancé et accès à distance

Généralités

Lors d'une mise à jour de MyReport, certains fichiers ne sont pas écrasés pour garder la configuration personnalisée de MyReport Center.

Tableau 3.11. Des fichiers "Template" sont présents pour connaitre la structure de ces fichiers :

ClientCenter\assets\config\config-center.template.json

Permet de reconfigurer le fichier "config-center.json"

ServerCenter\appsettings.template.json

Permet de reconfigurer le fichier "appsettings.json"

ServerIdentity\appsettings.template.json

Permet de reconfigurer le fichier "appsettings.json"

ClientExtensionManager\assets\config\config-extension.template.json

Permet de reconfigurer le fichier "config-extension.json""

APIExtensionManager\appsettings.template.json

Permet de reconfigurer le fichier "appsettings.json"


Publication sur le réseau (local ou externe)

Généralités

Tableau 3.12. Avant de procéder à la configuration de l'accès à distance, veiller à ce que les points suivants soient vérifiés :

Quel nom de domaine / sous domaine est à utiliser pour le site Center ?

Quel port est utilisé pour le site Center ?

Contrôler l'ouverture du port dans les différents pare-feu

Gestion d'un Proxy et d'un Reverse Proxy ?

Obtenir un certificat valide pour le domaine (HTTPs)


Configuration du nom de domaine et du port

  1. Ouvrir le Gestionnaire des services Internet (IIS),
  2. Dans l'arborescence sur la gauche, sélectionner le site Center
  3. Dans le panneau de droite sélectionner "Liaisons"
  4. Modifier la liaison existante

    • Choisir le type (HTTP / HTTPs)
    • Définir le port
    • Renseigner le nom d'hôte
    • Pour le HTTPs, sélectionner le certificat SSL
  5. Les services IIS seront redémarrés après la configuration des applications

Important

  • Il est nécessaire de définir le nom de domaine sur les DNS publique pour l'accès externe, et les DNS locaux pour le fonctionnement en réseau local.
  • Pour rappel, MyReport Center ne fonctionne qu'avec une seule liaison : il n'est pas possible de le faire fonctionner sur l'URL "http://localhost:8080" et sur une URL public "https://monCenter.fr" en même temps.
  • Il est conseillé d'installer le certificat SSL dans l'entrepôt de certificat "Ordinateur local".
Exemple de génération de certificat LetsEncrypt sur Windows Server (passage en HTTPS)

Création des certificats via LetsEncrypt

Important

Il existe plusieurs méthodes pour obtenir un certificat, rapprochez vous de votre DSI pour sa génération / achat.

  1. Télécharger et extraire l’exécutable de Win-acme disponible via ce lien : https://www.win-acme.com/ et cliquez sur le bouton "Download"
  2. Lancer une invite de commande en tant qu'Administrateur
  3. Se positionner dans le répertoire qui contient l’exécutable Win-acme, puis taper la commande "wacs.exe"
  4. Taper la lettre N (N: Create new certificate (simple for IIS) et valider
  5. Taper 4 (4: Manual input) et valider
  6. Saisir le nom de domaine pour lequel un certificat doit être généré et valider
  7. Dans la liste qui apparait, choisir le site "ClientCenter" et valider
  8. Valider "Open in default application? (y/n*)" en laissant le choix par défaut
  9. Valider "Open in default application? (y/n*)" en laissant le choix par défaut

Vérification de la génération du certificat :

  1. Quitter l'application Win-acme
  2. Ouvrir le Gestionnaire des services Internet (IIS)
  3. Dans l'arborescence sur la gauche, sélectionner le site Center
  4. Dans le panneau de droite sélectionner "Liaisons"
  5. Une nouvelle liaison a été créée sur le port 443
  6. Sélectionner cette liaison, et cliquer sur "Modifier..."
  7. Vérifier que la zone "Certificat SSL" contient bien le certificat LetsEncrypt
Configuration pour accéder à MyReport Center et Extension manager par adresse IP

Pour pouvoir accéder à MyReport Center par l'adresse IP de la machine Serveur, il faut :

  • Dans la configuration IIS, la liaison du site doit:

    • Définir l'adresse IP (par défaut : "Toutes non attribués")
    • Définir le port
    • Le nom de l'hôte doit être vide
  • Tableau 3.13. Il faut modifier les fichiers de configurations des 4 sites en mode absolue : (remplacer "192.168.1.1:8080" par l'adresse IP : Port de la machine)

    ClientCenter\assets\config\config-center.json

    "urlServerCenter" : "http://192.168.1.1:8080/api/api"

    "urlAuthentication" : "http://192.168.1.1:8080/auth"

    "urlExtensionManager": "http://192.168.1.1:8080/extensions"

    "urlExtensionManagerApi": "http://192.168.1.1:8080/extapi"

    ServerCenter\appsettings.json

    "urlAuthentication" : "http://192.168.1.1:8080/auth"

    ServerIdentity\appsettings.json

    "urlClient" : "http://192.168.1.1:8080"

    ClientExtensionManager\assets\config\config-center.json

    "urlExtensionApi": "http://192.168.1.1:8080/extapi"

    "urlAuthentication": "http://192.168.1.1:8080/auth"

    "urlCenter": "http://192.168.1.1:8080/"


  • Tableau 3.14. Il faut modifier la configuration dans MyReport Server :

    Site de consultation

    http://192.168.1.1:8080

    Serveur d'API

    http://192.168.1.1:8080/api

    Serveur d'authentification

    http://192.168.1.1:8080/auth


Passage de 3 sites Center à un seul site

Pour passer de 3 sites Center à un seul site, il faut :

  1. Supprimer dans IIS les sites et les pools.
  2. Tableau 3.15. Reconfigurer les fichiers json dans le dossier d'installation:

    Chemin du fichier

    Paramètre

    Valeur par défaut

    C:\inetpub\MyReportCenter\ServerCenter\appsettings.json

    urlAuthentication

    /auth

    C:\inetpub\MyReportCenter\ServerIdentity\appsettings.json

    urlClient

    /

    C:\inetpub\MyReportCenter\ClientCenter\assets\config\config-center.json

    urlServerCenter

    /api

    C:\inetpub\MyReportCenter\ClientCenter\assets\config\config-center.json

    urlAuthentication

    /auth


  3. Suivre l'installation standard.

Dissocier les trois sites (non recommandé)

Attention

Cette configuration n'est pas recommandée.

La casse doit être respectée dans les fichiers de configuration :

Application IIS : "Auth", "aPi", "center"

=> Dans les fichiers de configuration : "/Auth", "/aPi", "/center"

Tableau 3.16. En complément de la configuration de IIS et des points précédents, il faut modifier les fichiers suivants avec les URL publiques

Application IIS

Application de destination

Chemin du fichier

Paramètre

Valeur d'exemple

api

auth

C:\inetpub\MyReportCenter\ServerCenter\appsettings.json

urlAuthentication

http://mon-server:mon-port/auth

auth

Center

C:\inetpub\MyReportCenter\ServerIdentity\appsettings.json

urlClient

http://mon-server:mon-port

Center

api

C:\inetpub\MyReportCenter\ClientCenter\assets\config\config-center.json

urlServerCenter

http://mon-server:mon-port/api

Center

auth

C:\inetpub\MyReportCenter\ClientCenter\assets\config\config-center.json

urlAuthentication

http://mon-server:mon-port/auth


Avertissement

Extension manager n'est pas pris en charge en mode sites dissociés.

Contrôle de l'installation de IIS

IIS 10 pour Windows server 2016/2019

Windows Server 2016/2019

  1. Accédez au Gestionnaire de serveur

  2. Sélectionnez "Serveur local", puis cliquez sur Gérer > Ajouter des rôles et fonctionnalités

  3. Dans Type d'installation, sélectionnez Installation basée sur un rôle ou une fonctionnalité

  4. Dans "Rôles de serveur", sélectionnez Serveur Web (IIS)

  5. Acceptez l'installation des outils de management

  6. Confirmez et installez

IIS 10 pour Windows 10

Windows 10

  1. Accédez au panneau de configuration ► Programmes ► Activer ou désactiver des fonctionnalités Windows

  2. Sélectionnez "Internet information service"

  3. Vérifier que toutes les fonctionnalités Windows décrites ci après sont sélectionnées

  4. Validez pour procéder à l'installation

Fonctionnalités Windows

Vous devez vérifier que les fonctionnalités de Windows cités ci-dessous sont bien activés sur votre machine :

  • Internet Information Services

    • Outils d'administration Web

      • Console de gestion IIS
    • Services World Wide Web

      • Fonctionnalités de performances

        • Compression du contenu statique
      • Fonctionnalités HTTP communes

        • Contenu statique
        • Document par défaut
        • Erreurs HTTP
        • Exploration de répertoire
      • Intégrité et diagnostics

        • Journalisation HTTP
      • Sécurité

        • Filtrage des demandes
  • .NET Framework 3.5
  • .NET Framework 4.8 (ou 4.6) Advanced Services

    • ASP .NET 4.8 (ou 4.6)
    • Services WCF/Partage de port TCP
ghostghostghostghostghost
loading table of contents...