11. Renforcer la sécurité de votre installation WAPT - Côté Console

11.1. Génération de l’autorité de certification (CA) WAPT Enterprise feature WAPT Enterprise feature

Lors de l’installation de WAPT, il vous est demandé de créer une paire .pem / .crt en cochant les cases Pour Signature de code et Pour usage en tant que CA.

Cette paire .pem / .crt permettra de signer les paquets WAPT et les nouveaux certificats.

11.1.1. Générer un nouveau certificat avec l’Autorité de Certification

Construire une nouvelle paire .pem / .crt.

Note

Le nouveau certificat ne sera pas un certificat auto-signé ;

Ce nouveau certificat sera signé par le CA (la clé générée lors de la première installation de WAPT) ;

Vous devez ensuite remplir la Clé privée de l’autorité et le Certificat de l’autorité.

Lors de la génération de la nouvelle paire pem/ crt, vous avez la possibilité de choisir si le nouveau certificat sera de type Pour Signature de code ou non.

Indication

Pour rappel, un certificat Pour Signature de code est réservé aux personnes ayant le rôle Administrateur dans le contexte de WAPT et un simple certificat SSL sans l’attribut Pour Signature de code est réservé aux personnes ayant le rôle Déployeur de paquet.

Les Administrateurs seront autorisés à signer les paquets qui CONTIENNENT un fichier exécutable setup.py (c’est-à-dire les paquets base).

Les personnes ayant le rôle de Déployeur de paquet seront autorisées à signer les paquets qui NE CONTIENNENT PAS le fichier exécutable setup.py (c’est-à-dire les paquets host, unit et group).

Génération d'un certificat sans l'attribut *Pour Signature de code*

Génération d’un certificat sans l’attribut Pour Signature de code

Les clés et les certificats qui ne sont pas Signature de code peuvent être distribués aux personnes chargées de déployer les paquets sur la base installée des appareils équipés de WAPT.

Une autre équipe disposant de certificats ayant l’attribut Pour Signature de code préparera les paquets WAPT contenant les applications qui devront être configurées conformément aux directives de sécurité de l’Organisation et aux personnalisations utilisateur souhaitées par celle-ci.

Génération d'un certificat avec l'attribut *Pour Signature de code*

Génération d’un certificat avec l’attribut Pour Signature de code

La génération d’une nouvelle paire .pem / .crt permettra également d’identifier formellement la personne qui a signé un paquet en recherchant l’attribut CN du certificat de paquet WAPT.

Indication

Les nouveaux certificats ne seront pas des Autorités de Certification, ce qui signifie qu’ils ne seront pas autorisés à signer d’autres certificats.

En règle générale, il n’y a qu’une seule paire pem / crt d”Autorité de Certification par Organisation.

Attention

Il n’est pas nécessaire de déployer des certificats enfants avec l’Agent WAPT.

Les certificats enfants sont utilisés avec la Console WAPT pour autoriser ou restreindre les actions dans la console.

11.1.2. Déploiement des certificats des administrateurs informatiques locaux sur les clients

Indication

Certaines organisations choisiront de laisser les administrateurs informatiques locaux effectuer des actions sur les appareils équipés de WAPT en leur délivrant des certificats personnels qui fonctionneront sur l’ensemble des appareils dont les administrateurs informatiques locaux sont responsables.

Les administrateurs informatiques du siège déploieront les certificats des administrateurs informatiques locaux sur les ordinateurs que les administrateurs locaux gèrent sur leurs sites respectifs.

Ainsi, les administrateurs informatiques locaux ne pourront pas gérer les ordinateurs situés au siège, mais uniquement sur leurs propres sites.

Il est possible de gérer simplement et de manière plus fine en utilisant Access Control Lists avec la version Enterprise de WAPT.

Vous devrez copier les certificats des administrateurs informatiques locaux autorisés sur les clients WAPT dans C:\program files(x86)\wapt\ssl.

Indication

Ne pas oublier de redémarrer le service WAPT sur les clients pour qu’ils utilisent leur nouveau certificat. Ouvrez une console en ligne de commande cmd.exe.

net stop waptservice && net start waptservice

Si vous voulez déployer les certificats en utilisant WAPT, utilisez un paquet de certificat

11.2. Afficher l’onglet des certificats dans la Console WAPT

Dans cet onglet, vous pouvez voir les certificats auxquels la machine accepte de faire confiance.

Fenêtre montrant les certificats approuvés par la machine sélectionnée

Fenêtre montrant les certificats approuvés par la machine sélectionnée

11.3. Configuration des listes de contrôle d’accès WAPT Enterprise feature WAPT Enterprise feature

Indication

L’utilisateur SuperAdmin de WAPT est authentifié par un mot de passe stocké dans waptserver.ini comme valeur de l’attribut wapt_password. Les autres utilisateurs WAPT peuvent être des utilisateurs locaux htpasswd_path) ou des utilisateurs de comptes AD (ldap_auth_server / ldap_auth_base_dn).

Les ACL définissent les actions autorisées pour tous les types d’utilisateurs dans le contexte WAPT.

Note

Les ACLs par défaut au niveau utilisateur sont définies par default_ldap_users_acls dans waptserver.ini.

L’ACL par défaut pour un nouvel utilisateur est vue.

Attention

La sécurité est définie par le certificat déployé sur les clients, et non par les ACL.

Les ACL limitent simplement les actions que le serveur est autorisé à relayer de la Console WAPT aux Agents WAPT.

A la date du 2026-06-15 , les Agents WAPT ne vérifient pas les droits ACL.

Pour configurer les ACL dans WAPT, allez dans Serveur ‣ Gérer les utilisateurs WAPT et des droits.

Liste de menus pour la gestion des ACL dans la Console WAPT

Note

Au premier lancement après l’installation du Serveur WAPT, seul le compte SuperAdmin est présent dans la liste des utilisateurs.

Si le compte SuperAdmin n’existe pas ou ne possède pas le droit admin, le compte est recréé en redémarrant le service du Serveur WAPT.

Le compte SuperAdmin est authentifié en utilisant la valeur de wapt_password dans le fichier de configuration waptserver.ini.

11.3.1. Création du compte utilisateur

Deux types de comptes sont gérables par ACL, local et Active Directory.

  • Dans la fenêtre Droits des Utilisateurs WAPT, cliquez sur Nouveau compte.

Créer un nouveau compte local

Il est possible de renommer des comptes en appuyant sur F2 sur la colonne User.

Entrez le nom d’utilisateur, par exemple user1 .

Note

Les utilisateurs locaux sont définis dans un fichier .htpasswd.

Remplissez le nom d’utilisateur et ajoutez @votre_domaine.lan, par exemple user1@mydomain.lan.

Note

Pour gérer les utilisateurs WAPT avec Active Directory, vous devez activer l’authentification Active Directory.

Une fois la première connexion effectuée, le compte AD apparaîtra automatiquement dans la liste des utilisateurs WAPT.

  • Sauvegardez en cliquant sur Enregistrer les comptes.

  • Pour définir un mot de passe, voir le point Changez le mot de passe.

  • Pour définir les droits, consultez la section gérer les droits ACL.

Si l’utilisateur local a un mot de passe dans waptusers.htpasswd, alors, le nom d’utilisateur apparaît en gras et Mots de passe est coché, sinon changez le mot de passe pour cet utilisateur.

11.3.2. Changer le mot de passe de l’utilisateur

Pour changer le mot de passe du compte sélectionné :

  • Faites un clic droit sur le compte ‣ Changer le mot de passe utilisateur sur le Serveur WAPT.

wapt change user password on waptserver
  • Saisissez le nouveau mot de passe.

Boîte de dialogue permettant de modifier le mot de passe de l'utilisateur dans le fichier htaccess

Boîte de dialogue permettant de modifier le mot de passe de l’utilisateur dans le fichier htaccess

L’utilisateur local apparaît en gras et la case Mots de passe est cochée.

11.3.3. Blocage des comptes d’utilisateurs locaux

Pour désenregistrer les utilisateurs locaux, faites clic droit sur le compte ‣ Invalider le mot de passe de l’utilisateur sur le Serveur WAPT.

wapt invalidate user password on waptserver

Le compte sera bloqué et ne pourra plus gérer quoi que ce soit dans WAPT.

11.3.4. Liste des droits

De nombreux droits et restrictions peuvent être définis pour chaque utilisateur dans la Console WAPT.

Liste des droits des utilisateurs

Droit

Description

Admin

Comme SuperAdmin, tous les droits sont accordés sauf Mot de passe.

Voir

Permet de visualiser uniquement les informations sur la Console WAPT.

voir avec certificat

Limite l’affichage de la vue, au certificat associé à l’utilisateur.

Inscrire machine

Permet d’utiliser les informations d’identification de l’administrateur pour enregistrer manuellement une machine sur le Serveur WAPT.

Désinscrire machine

Permet de supprimer une machine depuis la Console WAPT.

Modifier la machine

Permet de modifier le paquet machine sur la Console WAPT.

Affecter des paquets

Permet d’attribuer un ou plusieurs paquets sur des hôtes à l’aide de la console WAPT.

Actions distantes machine

Permet d’utiliser les outils Windows de Gestion de l’ordinateur avec la Console WAPT.

Lancer les mises à jour

Permet d’appliquer à distance des mises à jour sur son périmètre, si la machine est en statut PENDING.

Modif paquets

Permet de modifier les paquets de base qu’elle est autorisée à modifier.

Modif groupes

Permet de modifier les paquets de groupe sur la Console WAPT.

Modif self-service

Permet de modifier les règles de self-service sur la Console WAPT.

Modif WUA

Permet de modifier les règles WUA / WSUS sur la Console WAPT.

Modif groupes AD

Permet de modifier les packages profile sur la Console WAPT.

Modif Org Units

Permet de modifier les paquets unit sur la Console WAPT.

Modifier paquets configuration

Permet de créer, modifier ou supprimer des paquets de configuration sur la console WAPT.

Modifier requêtes

Permet de créer ou modifier des requêtes de rapport.

Lancer requête

Permet de exécuter des rapports SQL existants.

Voir les données d’audit

Permet de lire le contenu des données d’audit de l’onglet sur la console WAPT.

Admin WADS

Permet à un utilisateur de disposer des droits d’administrateur pour WADS sur la console WAPT.

Déploiement de machine WADS

Permet à un utilisateur d’activer le bouton de déploiement sur la console WAPT.

Vue WADS

Permet de lire le contenu de l’onglet OS Deploy.

MAJ données audit

Permet de créer, modifier ou supprimer les données de l’onglet Audit Data sur les hôtes.

Modifier depôt

Permet à un utilisateur de créer, modifier et supprimer des règles de dépôts secondaires.

Accounts Manage

Allows creating user accounts. You cannot assign permissions higher than those of your own account.

Managed by

Allows viewing the manager associated with certain user accounts.

Ajouter une ressource

Permet de mettre à jour l’hôte avec des données personnalisées.

11.3.5. Gestion des droits

Par défaut, le SuperAdmin est l’utilisateur du Certificat CA.

Pour les autres utilisateurs, il est possible d’associer un certificat généré à partir du WAPT PKI ou d’une autre CA.

Ces certificats peuvent ou non être des enfants de l’autorité de certification WAPT.

Important

Si les certificats ne sont pas émis par l’autorité de certification :

  • Les paquets WAPT mis à jour ne sont disponibles que sur les ordinateurs sur lesquels des certificats sont déployés. Utilisez cette section pour créer et déployer facilement des certificats utilisateur.

  • Les ACL sont valides uniquement sur le périmètre des hôtes où le certificat de l’administrateur est déployé.

  1. Sélectionner un utilisateur.

  2. Choisissez une ou plusieurs ACLs à assigner.

  3. Définissez l’autorisation ( souvent interdire ou autoriser).

  4. Sauvegarder vos changements.

Attribuer des ACL en mode classique

Exemple : attribuer l’autorisation « enregistrer les hôtes » à l’utilisateur user1.

  1. Ouvrir la console WAPT.

  2. Accédez à ServeurGestion des utilisateurs et les droits WaptNouveau role.

  3. Saisissez le nom du rôle.

  4. Une fois le rôle créé, vous pouvez y ajouter des listes ACL.

  5. Attribuez le rôle aux utilisateurs concernés.

  6. Enregistrez les modifications.

Créer un rôle local et l'attribuer

Exemple : attribuer le rôle local « waptpackages » à l’utilisateur user1.

Action AD (RSAT ou OpenRSAT)

  1. Créer un groupe d’utilisateurs (par exemple, waptpackage).

  2. Ajoutez les utilisateurs concernés à ce groupe.

Dans la console WAPT.

  1. Accédez à ServeurGestion des utilisateurs et les droits WaptNouveau role.

  2. Entrez le nom du rôle, suivi de @votre_domaine.lan (par exemple, waptpackage@your_domain.lan).

  3. Une fois le rôle créé, vous pouvez y ajouter des listes ACL.

  4. Automatiquement, tous les utilisateurs du groupe AD hériteront des listes ACL attribuées au rôle.

  5. Enregistrez les modifications.

Créer un rôle AD et l'attribuer

Exemple : attribuer le rôle publicitaire « waptpackage@domain.lan » aux utilisateurs AD.

11.3.5.1. Associer un certificat à un utilisateur

Indication

Par défaut, aucun certificat n’est défini pour aucun utilisateur (y compris SuperAdmin).

Le compte dans la Console WAPT apparaît en italic si aucun certificat n’est associé à l’utilisateur.

Il existe deux méthodes classiques pour associer un certificat à un utilisateur.

Sélectionnez un utilisateur et effectuez un clic droitEnregistrer le certificat utilisateur

Attribution du certificat utilisateur : 1ère méthode

Ensuite, choisissez le certificat à associer à l’utilisateur.

Sélectionnez un utilisateur et cliquez sur Enregistrer le certificat utilisateur dans le bandeau supérieur.

Attribution du certificat utilisateur : 2ème méthode

Ensuite, choisissez le certificat à associer à l’utilisateur.

11.3.5.2. Ajouter / Supprimer des droits

Pour ajouter ou supprimer des droits :

1 - Sélectionner un ou plusieurs utilisateurs.

2 - Choose an ACL from the board.

3 - Enable or disable the desired right by clicking or use « Enter » keyboard.

Vérifier les droits ACL

11.3.5.3. Restreindre le périmètre des droits accordés à l’utilisateur

Il est possible d’associer un périmètre à un droit donné à un utilisateur.

11.3.5.3.1. Vue
Définition du périmètre autorisé

Périmètre

Description

Tout refuser

Refuse tout droit de consultation (case non cochée).

Autoriser sur tout le périmètre

Accorde un droit de consultation à tous les agents WAPT.

Autoriser des périmètres spécifiques

Permet de consulter directement le périmètre sélectionné, défini sous la forme d’une liste de certificats.

Autoriser lorsque le certificat utilisateur est déployé

Permet l’accès en lecture seule sur le périmètre où le certificat de l’administrateur WAPT est déployé.

Lorsque l’option Afficher avec le certificat est activée. L’utilisateur ne pourra voir que les hôtes sur lesquels le certificat est déployé.

N’oubliez pas d’attribuer au préalable un certificat à l’utilisateur.

11.3.5.3.2. Modifier les paquets de groupe

Indication

Tous les paquets de groupe fonctionnent sur le même principe, décrit ci-dessous.

Définition du périmètre autorisé

Périmètre

Description

Interdire tous les paquets

Aucune édition n’est autorisée pour aucun paquet (non coché).

Autoriser tous les paquets

Le droit de modification est autorisé pour tous les paquets WAPT.

Autoriser des noms de paquets spécifiques

Permet le droit d’édition pour les paquets WAPT sélectionnés dans la liste.

11.4. Re-signer les paquets sur le serveur WAPT en utilisant la console WAPT

Il est possible qu’un paquet ait été créé par un utilisateur WAPT dont le certificat n’est pas reconnu sur certaines machines. Toutefois, le paquet peut encore convenir à ces machines. Dans ce cas, vous pouvez re-signer le paquet en utilisant le certificat d’un autre utilisateur WAPT qui a des privilèges plus élevés au sein du réseau.

Allez dans Dépôt privé, identifiez votre paquet et cliquez avec le bouton droit sur Resigner les paquets.

Re-signer avec la console WAPT

Re-signer avec la console WAPT

Ensuite, cliquez sur Resign packages, et attendez la OK, vous pouvez close.

Fenêtres de re-signature avec la console WAPT

Fenêtres de re-signature avec la console WAPT

Toutefois, si cela ne fonctionne pas, la seule façon d’effectuer l’opération est de résigner sur la ligne de commande.

11.5. Différentes façons de se connecter à la console WAPT

Starting from version 2.7, multiple methods are available to connect to the WAPT console.

You can still log in using local accounts on the WAPT server or Active Directory (AD) accounts.

However, additional authentication methods have been introduced:

  • Log in via Kerberos using either your current Windows session (no password required) or by specifying a different username and password.

  • Secure authentication methods such as OAuth2/OpenID Connect and Bearer Token.

11.5.1. Available Authentication Methods

At the opening of the waptconsole you can choose different authetification method

Utilisateur et mot de passe

This method allows authentication using a username and password combination.

Enter a user and is password . See the user creation documentation for details.

Utiliser la session courante (Kerberos)

This method allows you to authenticate without entering a password by leveraging your active Kerberos session.

To use this feature:

  • Ensure the user is registered in waptconsole in the format user@domain.lan.

  • Configure Kerberos authentication as described in Kerberos configuration.

Kerberos avec utilisateur et mot de passe

This method allows you to authenticate by leveraging your active Kerberos session.

To use this feature:

  • Ensure the user is registered in waptconsole in the format user@domain.lan.

  • Configure Kerberos authentication as described in Kerberos configuration.

OAuth2 / OpenID Connect

This method enables authentication via OAuth2/OpenID Connect, using an identity provider (such as Microsoft Entra ID) for secure, passwordless login.

Prerequisites for Microsoft Entra ID:

  • A Microsoft Entra ID tenant (formerly Azure AD) with admin rights.

  • A web browser to validate authentication.

  • A proxy (if required in your environment) to access Microsoft Entra ID.

  • Access to the WAPT server and admin rights in the WAPT console.

Configuration Process:

1. Register the Application in Microsoft Entra ID:

  • Navigate to entra.microsoft.com.

  • Go to Identity > Applications > App registrations.

  • Click New registration and fill in the details:

    • Name: Your application name (e.g., WAPT OpenID).

    • Redirect URI: http://localhost:8095/callback.

  • Go to Certificates & secrets and create a new client secret. Save the secret securely.

2. Configure the WAPT Server:

  • Open the configuration file: /opt/wapt/conf/waptserver.ini.

  • Add the [openid] section with the following details:

    [openid]
    issuer=https://login.microsoftonline.com/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/v2.0
    client_id=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
    client_secret=mysecretcode
    redirect_uri=http://localhost:8095/callback
    username_key=upn
    
  • If using a proxy, add the following line:

    http_proxy=http://srvproxy.mydomain.lan:8080
    

3. Update Global Authentication Methods:

  • Modify the [global] section in waptserver.ini to include oidc in the login_auth_methods parameter:

    registration_auth_methods = oidc,kerb,admin,passwd
    login_auth_methods = oidc,kerb,admin,passwd
    

4. Restart WAPT Services:

  • Apply the changes by restarting the WAPT services:

    systemctl restart waptserver wapttasks
    

5. Local Testing:

  • Run the following command in a command prompt to test the configuration:

    C:\Users\htouvet>wapt-get openid-auth -c "c:\Program Files (x86)\wapt\wapt-get.ini"
    
  • A browser window will open, prompting you to grant access to the application. Check the consent box for your organization.

  • Expected Output:

    Code: 1.AR8AbB103-z_eEidXlooPaYJLuvHmHHwvztCsV7nQNvj_yhMAbwfAA.AgABBAIAAABVrSpeuWamRam2jAF1XRQEAwDs_wUA9P9CWi14DUUxhFdifAJG6aygRZwO_bcwGzCXOSlkGUD_YmYsWHGIiBHLiUX5lWnYU0qk847CCOmJxnKZyDepL6-d40yYYhHq
    ...
    ClientSecret is known, using it to exchange code for a token...
    Token: {"aud":"00000003-0000-0000-c000-000000000000","iss":"https://sts.windows.net/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/","iat":1758812637,"nbf":1758812637,"exp":1758817061,"acct":0,"acr":"1","acrs":
    [...0","b79fbf4d-3ef9-4689-8143-76b194e85509"],"xms_ftd":"4Bv2ZusNHcpIBqPAClu5jRjnL-ldhsTz0S54w-3nbrABZXVyb3Bld2VzdC1kc21z","xms_idrel":"1 10","xms_st":{"sub":"xRnlPpQ8mrb2xYcinckhWxAIaaoeiUfLoX3sFoKidK8"},"xms_tcdt":1517
    233874,"xms_tdbr":"EU"}
    ID Token: {"aud":"7198c7eb-bff0-423b-b15e-e740dbe3ff28","iss":"https://login.microsoftonline.com/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/v2.0","iat":1758812637,"nbf":1758812637,"exp":1758816537,"rh":"1.A
    R8AbB103-z_eEidXlooPaYJLuvHmHHwvztCsV7nQNvj_yhMAbwfAA.","sub":"xRnlPpQ8mrb2xYcinckhWxAIaaoeiUfLoX3sFoKidK8","tid":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx","uti":"cABi3a7vQECEsCD_EAVUAA","ver":"2.0"}
    User authenticated: XXXX XXXXXXX
    End session: 1
    

6. Assign Application Roles:

  • In Microsoft Entra ID, navigate to Enterprise Applications.

  • Select your newly registered application.

  • Go to Users and groups > Add user/group.

  • Select the users who will have the waptadmins role.

7. Verify Role Assignment in Token:

  • Test the authentication again with the following command:

    wapt-get openid-auth -c "c:\Program Files (x86)\wapt\wapt-get.ini"
    
  • Ensure the token contains the role assignment: "roles":["waptadmins"].

8. Configure Roles in the WAPT Console:

  • Log in to the WAPT console with an admin account.

  • Navigate to User and Rights Management.

  • Check Roles > New Role.

  • Rename the default role (e.g., role1) to waptadmins.

  • Assign the desired permissions, then close the window and log out.

  • Reopen the console and log in using the OAuth2/OpenID Connect option.

Bearer Token

A Bearer Token can be generated using various authentication methods to verify the user’s identity, such as Kerberos or username/password credentials.

To enable this feature, add token to the login_auth_methods parameter in the waptserver.ini file. After making this change, restart the WAPT services to apply the modifications:

systemctl restart waptserver wapttasks

How to create a token examples:

  • Open a command prompt on the machine

  • Run wapt-get server-login and enter your credentials (local account or user@mydomain.lan)

  • A token will be generated, which you can use to access the console

  • Run wapt-get server-login --login_method=sessionkerberos

  • A token will be generated, which you can use to access the console

Note

For this moment token have a lifetime to 12h, to change it you can modify the value of the token_lifetime in the file /opt/wapt/waptserver/config.py .

x509 certificate

It is possible to connect to the WAPT Console using an X.509 certificate. This method provides a secure and passwordless authentication option.

How to configure it

In the WAPT Console:

  • Create a User Certificate: Generate a certificate with the same name as the user (example: certificate john for user john@domain.lan ).

  • Associate the Certificate with the User: In the WAPT Console, go to User Rights Management and link the certificate to the user.

    • In the WAPT Console, navigate to Server > Manage WAPT Users and Rights (ACLs).

    • Select the desired user.

    • Click Register User Certificate and upload the user’s X.509 certificate.

In the WAPT Server:

  • Update waptserver.ini: Add ssl to the authentication methods parameter login_auth_methods.

  • Create a Client Certificates File: Create a file (e.g., /opt/wapt/conf/ca-clients.crt) and append the public parts of user certificates to it.

  • Configure Nginx: Edit /etc/nginx/sites-enabled/wapt.conf and modify the line : ssl_client_certificate « /opt/wapt/conf/ca-clients.crt ».

  • Reload Nginx:

    nginx -s reload
    
  • Restart WAPT Services

    systemctl restart waptserver wapttasks waptserver-uwsgi
    

In the WAPT Console:

  • Choose the right certificate in the parameter tools > preferencies > path to personnal certificate.

  • Close and relaunch the waptconsole

  • The user can now connect to the WAPT Console with the option X.509 certificate.

Indication

You can test any authentication method by entering the required credentials in the login fields (e.g., username/password or token).

The successfully chosen method will be saved for the next session.