Kontivo: user guide

for Active Directory

User accounts in Active Directory, from a spreadsheet or a CSV file from any source (HR software, ERP, another directory…), or from a school export (SIECLE, ONDE, Pronote, EcoleDirecte).

Version 3.0.0 · October 2026 · for the directory administrator.

1. What the tool does

Kontivo reads the list of users exported by your organization (from HR software, an ERP, another directory, a spreadsheet or school software) and keeps their accounts up to date in Active Directory (the network directory). At each import:

Nothing is done without your approval

Before each import, the tool shows a preview of all the changes. You can uncheck a line, correct a username, answer the questions. Nothing is written to the directory until you click “Apply the changes”.

What the tool does not do:

The tool opens in its own window, Kontivo, like an ordinary Windows program: no browser, no PowerShell window. Everything happens on your computer. To stop it, click Quit, at the top right, or close the window.

The window is in French, English, German, Spanish, Portuguese or Italian, depending on the Windows language or the one you choose (see § 5, “Interface language”). This guide exists in the same languages.

2. Before you start

You need:

  1. A Windows computer in the domain: preferably an administration computer running Windows 10 or 11. A domain controller also works, but Windows limits rights there (User Account Control). RSAT is no longer needed: V2 reaches the directory over LDAP, without the Active Directory module or PowerShell.
  2. .NET Framework 4.8, and nothing else: it is already present on Windows 10 (since version 1903), Windows 11 and Windows Server 2019 to 2025. On Windows Server 2016, it is installed once (Windows Update, or Microsoft's “.NET Framework 4.8” installer); the tool reports it at startup if it is missing. No browser is needed: Kontivo opens in its own window (only the help, this guide, opens in the program that reads web pages on the computer).
  3. A Windows account with the right permissions on the user folders in the directory. The best choice is a delegated account, which only has rights on these folders: see Delegating rights. The rights to delegate are exactly those of V1: no additional right is ever requested.
  4. The organization's license: the licence.json file sent by email (tied to the organization's ID and domain), one license per Active Directory domain, under an annual subscription. Without a valid license, the tool starts in read-only mode (preview available, no changes) and says so; see § 3.2 and § 6.
  5. The list of users: a spreadsheet or a CSV file from any source, with at least each person's last name, first name and group (see § 7.1); for a SIECLE, ONDE, Pronote or EcoleDirecte export, see Recognized school formats.
  6. The approval of the head of the organization, and the record of processing activities filled in with your data protection officer: see GDPR record sheet (in French).

SmartScreen at first start

The tool is a single file, ComptesAD.exe. The first time a downloaded exe is started, Windows may display Windows protected your PC (SmartScreen). Click More info, then Run anyway. If the exe is signed with a certificate known to your organization, this warning disappears once the reputation is established. In all cases, check the SHA-256 hash of the exe before running it (see § 3.1): it is what guarantees that the file has not been modified.

Antivirus and endpoint security

The exe is obfuscated (its code is scrambled to hinder reverse engineering): some antivirus or EDR products may find it “suspicious” even when it is signed. If the tool is blocked, notify your chief information security officer (CISO) and have an exception added for the published SHA-256 hash. A signed but non-obfuscated exe can be provided on a case-by-case basis for a stubborn EDR (same behavior, with its own published hash for that variant).

3. Installation

The tool is not installed: it is a file that you copy, with its docs\ folder. The only thing it writes to the registry is the language chosen in the Settings, for your Windows account (§ 5, “Interface language”).

3.1 Check the hash, unblock, then extract

  1. First check the hash of the archive: the ComptesAD-3.0.0.zip.sha256 file delivered with it contains the expected value. In PowerShell, in the folder that contains both files:
    (Get-FileHash .\ComptesAD-3.0.0.zip).Hash -eq (Get-Content .\ComptesAD-3.0.0.zip.sha256).Split(' ')[0]
    The answer must be True (uppercase and lowercase do not matter). The download page also publishes the hash of the signed exe itself, to check again after extraction: (Get-FileHash .\ComptesAD\ComptesAD.exe).Hash.
  2. Before extracting: right-click ComptesAD-3.0.0.zip, Properties, check Unblock at the bottom of the General tab, then OK. Otherwise, Windows marks each extracted file as “from the Internet” and SmartScreen warns at first start (see § 2).
  3. Extract the archive: you get a ComptesAD-3.0.0 folder containing ComptesAD.exe, LISEZMOI.txt (in French), README.txt (in English), LICENCE.txt, docs\ (the guides, one folder per language, see below) and exemples\ (files of made-up users, for demo mode, § 4). Rename it and place it directly under C:\, on the local disk, to get C:\ComptesAD\. Not on a share or a network drive: the tool then refuses to start (“Kontivo is running from a network drive (Z:\ComptesAD). Copy ComptesAD.exe to the computer's local disk, for example to C:\ComptesAD, then start it again.”). Keep docs\ next to the exe: the Help (F1) button of the window opens the guide in the interface language, for example docs\en\Notice.html.

The docs\ folder contains one folder per language: fr (French), en (English), de (German), es (Spanish), pt (Portuguese) and it (Italian). Each one contains Notice.html (this guide), Deleguer-les-droits.html, LISEZMOI.txt and the screenshots (img\). The pages that only exist in French, Exporter-les-eleves.html and Fiche-registre-RGPD.html, are in docs\fr\.

3.2 Install and update the license

Place the licence.json file received by email in C:\ComptesAD\, next to the exe. You can also choose it from the Kontivo window, with the Choose a license file… button on the License screen (below): the tool then copies it to the data folder and checks it again. Without a valid license, the tool starts in read-only mode and says so (blue banner, “No license – preview available, no changes will be made.”); demo mode does not require one.

The subscription. A license covers one Active Directory domain; the subscription renews automatically every year. The license is valid until the end of the paid period, plus a 14-day grace period. After that, the tool switches to read-only mode: the preview remains available, but no change is made to the directory. Payment is by card, online, or by invoice (bank transfer, for public bodies); in that case, a provisional 60-day license is sent to you while the payment is pending.

The License screen. On the home screen, the License link is always visible. The screen it opens shows the license status, the organization, the license number, the end date (“Valid until”, with the number of days remaining), the domain of this directory, and the full message of the check. In demo mode, it only says that no license is needed. Two buttons:

The license installed with either button is copied to the data folder (C:\ProgramData\ComptesAD\licence.json, § 3.9). A licence.json placed next to the exe is still recognized.

The screen also shows the address of your customer area, https://licences.scolatools.com/espace: your licenses, your invoices, the domain change (once per subscription period) and the billing portal. It opens in a browser, from any computer.

The only Internet connection

The Update the license button is Kontivo's only Internet connection, and it happens only when you click it: never at startup, never in the background. On a computer without Internet access, use Choose a license file…: everything else works the same way.

3.3 Protect the tool's folder

At first start, the tool checks who can modify its folder and its exe. If an account that is not an administrator can write to it (which is the case for a folder created directly under C:\, where “Authenticated Users” can modify files), it refuses to start: someone could replace the exe with code that would run with your rights.

The window then displays: “The folder C:\ComptesAD can be modified by ‘Authenticated Users’. Someone could place code there that would run with your rights. Fix it in a command prompt or PowerShell window opened as administrator, with the command below, then start again.”, then, alone on its line, the exact command to type, with the correct security identifier (SID) of your account. It looks like this:

icacls "C:\ComptesAD" /inheritance:r /grant:r "*S-1-5-32-544:(OI)(CI)F" "*S-1-5-18:(OI)(CI)F" "*S-1-5-21-…:(OI)(CI)RX"

Copy the command displayed by the tool, paste it into a command prompt or PowerShell window opened as administrator, then start the tool again. Each permission is in quotation marks: the command works as is in both. It gives full control to administrators and to the system, and only read access to the account that started the tool. The check covers the folder, the ComptesAD.exe exe, its ComptesAD.exe.config configuration file if present, and the docs\ folder.

The same check covers the data folder C:\ProgramData\ComptesAD when it was created manually with permissions that are too broad. The command proposed for this folder ends with (OI)(CI)F": your account must be able to write to it. If this folder belongs to an account that is neither an administrator nor yours, the tool proposes icacls "C:\ProgramData\ComptesAD" /setowner "*S-1-5-32-544" /T. This folder must be on a fixed local disk: otherwise, “The folder C:\… is on a network drive: it would contain the organization secret and user data (DONNEES_SUR_PARTAGE). Specify a folder on the computer's fixed local disk, for example ComptesAD.exe -DossierDonnees "C:\ComptesAD-donnees", then start again.” (or “a network share”, “removable media (USB drive, external disk)”, “a CD or DVD”).

Do this first start with the account that will use the tool (the delegated account, see below): the command displayed then contains its SID. If an administrator types it for their own account, the delegated account will no longer be able to read the folder.

One account per data folder

The data folder belongs to the Windows account that created it: the organization secret is encrypted there for that account only (Windows DPAPI protection). If another account starts the tool with the same folder, it does not start: “The data folder C:\ProgramData\ComptesAD was created for another Windows account (owner: DEMO\adm-a): your account cannot access it. Kontivo reserves each data folder for a single operator, because the organization secret is encrypted there for that operator. Either start the tool again with that account, or have an administrator transfer the folder to you in a command prompt or PowerShell window opened as administrator, with the command below (the former operator will lose access, and the secret, encrypted for them, will have to be imported again from a configuration export), or delete this folder if it contains nothing useful. Then start again.”, followed by the command icacls "C:\ProgramData\ComptesAD" /inheritance:r /grant:r "*S-1-5-32-544:(OI)(CI)F" "*S-1-5-18:(OI)(CI)F" "*S-1-5-21-…:(OI)(CI)F" /T. Before transferring the folder, export the configuration with the secret from the owner account (§ 12), then import it with the new account. If it is the tool's folder that was reserved for another account, the message is “Your account cannot read the tool's folder C:\ComptesAD (owner: …): its permissions were set for another Windows account. An administrator can give you read access in a command prompt or PowerShell window opened as administrator, with the command below; then start again.”, with a command using RX and /T.

3.4 Which account to use

The tool acts in the directory with the Windows account that starts it. It never asks for a password to act in the directory; only unlocking its window after a period of inactivity asks for the password of the account that started it (§ 3.5).

To start the tool with the delegated account while you are signed in with another account:

runas /user:DEMO\adm-comptes "C:\ComptesAD\ComptesAD.exe"

Options go inside the quotation marks, after the path of the exe: runas takes only one program argument (for example runas /user:DEMO\adm-comptes "C:\ComptesAD\ComptesAD.exe -LectureSeule", see § 6). The Kontivo window stays open and displays the message if the tool refuses to start: you can read the reason and copy the command it proposes.

Started with another account, the tool only sees that account's files. Kontivo then runs under the delegated account: your Downloads folder, your Desktop and your documents are off limits to it, in the “Open” dialog box as well as by drag and drop. Copy the list of users to a folder that the delegated account can read (for example C:\Temp\import), and delete it after the import. The files that the tool exports (configuration, CSV preview) are saved where you choose in the “Save As” dialog box, which opens on the folders of the delegated account. On the Logs screen, the path is displayed next to the Open the logs folder button (“Logs folder: C:\ProgramData\ComptesAD\journaux”): copy it if the File Explorer window that opens is not the right account's.

The account sheets (temporary passwords) are encrypted for the Windows account that ran the import: always use the same account to import and to reprint the account sheets.

3.5 Start the tool

Double-click ComptesAD.exe (or start it with the delegated account, see above). The Kontivo window opens directly, at a size of 1,280 × 800 (or the size of the screen if it is smaller); you can move, maximize or minimize it like any window. There is no browser, no link to copy and no second window to keep open.

The top banner always reminds you where you are: “Domain DEMO · domain controller DC1 · account DEMO\adm-comptes” (orange “DEMO MODE” in demo mode, blue “READ-ONLY” in read-only mode). On the right, Help (F1) opens this guide, in the interface language, and Quit stops the tool. Everything can also be done with the keyboard: Tab moves from one control to the next, Enter runs the main action of the screen, Space checks a box; the screens can be read with Windows Narrator.

To stop, click Quit, at the top right, or close the window (close button, Alt+F4): the tool asks “Quit Kontivo?”. During a run, closing first offers to pause the run: it stops cleanly and can resume at the next start (see § 13). If you sign out of Windows or shut down the computer during a run, Windows displays “Kontivo is applying a plan: pause the run in Kontivo before signing out (it can resume later).”: the tool holds back the sign-out long enough to pause the run; then sign out again.

If you start ComptesAD.exe again while it is already open, no second window opens: the window that is already open comes back to the foreground.

Lock after inactivity. After 30 minutes without keyboard or mouse activity, the window locks: “Kontivo is locked after 30 minutes of inactivity.” User data is hidden and the print preview is closed; a run in progress continues. Click Unlock and enter the password of the Windows account that started Kontivo, in the Windows credentials dialog box. After three refused passwords, the window stays locked: quit Kontivo and start it again. The delay is changed at startup: ComptesAD.exe -InactiviteMinutes 15 (from 1 to 1,440).

Startup options. They are typed after the path of the exe (inside the quotation marks of runas, § 3.4), or at the end of the Target of a shortcut:

For example: runas /user:DEMO\adm-comptes "C:\ComptesAD\ComptesAD.exe -LectureSeule -Langue en".

The window follows the Windows light or dark theme, and high contrast; the screenshots in this guide are in the light theme, or in the dark theme if your page reader is set that way. They were taken in demo mode (orange banner, see § 4).

At startup, the Kontivo window may also report:

3.6 Read-only mode for the first pass

For a first pass on your directory without changing anything, start the tool with the -LectureSeule option: C:\ComptesAD\ComptesAD.exe -LectureSeule (or, with the delegated account, inside the quotation marks of the runas command). The tool calculates the preview and shows it, but writes nothing to the directory. See § 6.

3.7 Migrating from V1 (PowerShell)

No data migration: V2 reads the same files and the same directory as V1. To move from V1 to V2:

  1. Quit V1 (Quit button).
  2. Copy ComptesAD.exe and the docs\ folder to C:\ComptesAD.
  3. Delete the old V1 files: the .ps1, .psm1 and .cmd files, and the modules\, simulation\ and web\ folders.
  4. Install licence.json (see § 3.2).
  5. Start the exe with the same account as before.

The C:\ProgramData\ComptesAD folder and its permissions are reused as is; your configuration, your secret, your marked accounts, your logs and your account sheets are kept. A plan interrupted by V1 can be resumed by V2 (same format, same 12-hour rule). An existing configuration (V1, V2) keeps its OU names, group templates and descriptions: the neutral V3 values (People, People-{classe}, “{classe} (managed by Kontivo)”…) only apply to a new installation. On first opening, V3 writes to configuration.json the description that the tool applied implicitly (“Élève {classe} (géré par ComptesAD)”), so no existing account changes.

3.8 Uninstalling

Delete the C:\ComptesAD folder. The organization's data (C:\ProgramData\ComptesAD) and the account sheets in %LOCALAPPDATA%\ComptesAD must be deleted separately, after exporting the configuration with the secret if you want to keep it (see § 12).

3.9 Where the tool stores its files

FolderContents
C:\ProgramData\ComptesAD\Settings (configuration.json), organization secret, register of retired usernames, logs, plans in progress, and the copy of licence.json installed from the License screen (file chosen or license updated, § 3.2). Created by the tool with permissions reserved for administrators, the system and your account. It must be on a fixed local disk: a share or a network drive is refused.
%LOCALAPPDATA%\ComptesAD\Fiches\Account sheets (temporary passwords), encrypted for your Windows account.
%LOCALAPPDATA%\ComptesAD\essai\All of demo mode (§ 4): settings, simulated directory, logs, account sheets (fiches\) and simulated home folders (dossiers\) of the demo, specific to your Windows account.
The Windows registry (HKCU\Software\ComptesAD)Only the Langue value: the interface language chosen in the Settings, for your Windows account on this computer (§ 5, “Interface language”). Nothing else is written to the registry.
The tool's folder (C:\ComptesAD)Nothing is ever written there, neither in real mode nor in demo mode (except the copy of licence.json if you place it there yourself). Printing the account sheets writes no file anywhere (§ 10).

3.10 Prepare the home folder share

For the tool to create each user's home folder (§ 5.4), the share that holds them must exist on the file server. Kontivo prepares it in one go: an administrator of the file server copies ComptesAD.exe to it (for example to C:\ComptesAD) and types, on that server, in a command prompt or PowerShell window opened as administrator:

C:\ComptesAD\ComptesAD.exe -PreparerPartage -Dossier D:\People -Partage people$ -GroupeDelegue DEMO\GG-ComptesAD

Without parameters, a small window asks for these values, with the Check (nothing is changed) and Prepare buttons. The tool creates the folder if it is missing, disables permission inheritance and sets the permissions needed (the delegated group can create and archive the users' folders; each user reaches their own folder without seeing the others'), creates the share with access-based enumeration, then displays the path template to paste into the settings, for example \\srv-fichiers.demo.local\people$\{sam}. It reports, line by line, what it did ([DONE]) and what was already in place ([OK]): you can run it again safely. Add -LectureSeule to check only, -Langue en (or another language) for the messages, and -GroupeEleves DEMO\People-All if the users have their own group (otherwise: “Authenticated Users”). Nothing is written to the directory and no license is required for this step. The details of the permissions set are in Delegating rights, § 6.

4. First start in demo mode

Before touching your directory, try the tool on a simulated directory: the “Demo Organization”, with fictitious sample files (up to about 400 made-up users). Nothing is changed in your real directory, and no domain controller is contacted.

  1. Start ComptesAD.exe in demo mode: in a command prompt, C:\ComptesAD\ComptesAD.exe -Mode Essai; or create a shortcut to ComptesAD.exe (right-click, Create shortcut), then, in its Properties, add -Mode Essai at the end of the Target, after the closing quotation mark. On a computer that cannot reach any domain, the Kontivo window also offers the demo on its own. The top banner is orange: “DEMO MODE: simulated directory, nothing is changed in your real directory”.
  2. Click Start the settings (2 minutes) and follow the four steps (see § 5). In the tree of the simulated directory, the People, Leavers and Groups folders already exist, under Organization (these are the names of the demo directory: yours can be entirely different).
  3. First import the fictitious file exemples\rh-fictif.csv, delivered with the tool in C:\ComptesAD\exemples\: an HR-style export of 49 made-up people, with the columns Matricule (employee number), Nom (last name), Prénom (first name) and Service (department). The department becomes each user's group, and the employee number their external ID.
  4. The same folder also contains samples of school formats: SIECLE, ONDE and Pronote exports, and spreadsheets (.xlsx, .xls, .ods, with or without an ID, or one sheet per group). They are listed in Recognized school formats. All the names are made up.
  5. Apply the changes, print a few account sheets, look at the log.
  6. To simulate a periodic update, start from the import of exemples\rh-fictif.csv (if needed, Reset the demo directory, then redo the settings and this import). Quit Kontivo, then start it again at a later simulated date, for example a few months later: C:\ComptesAD\ComptesAD.exe -Mode Essai -AujourdhuiSimule 2027-07-06 (date in YYYY-MM-DD format; the option only exists in demo mode). Then import exemples\rh-fictif-2.csv: the same fictitious organization later on, 41 people, with the same columns Matricule, Nom, Prénom and Service. 13 people have left, 3 have changed department and 5 have arrived: the preview proposes 13 leavers, 3 group changes and 5 new accounts (see § 8). The leavers exceed 25% of the accounts: the tool asks you to type DISABLE 13 before applying; this is intended. The screenshots in this guide were taken this way. After another sample file, this simulation makes no sense (other users, other organization).
Kontivo window at first start in demo mode: orange DEMO MODE banner with Help (F1) and Quit, Start the settings (2 minutes) button, Help and Reset the demo directory links.
First start in demo mode: a single button, “Start the settings”.

In demo mode, the settings, the logs, the account sheets and the simulated directory are stored in %LOCALAPPDATA%\ComptesAD\essai\, in your Windows account's profile, and the home folders are simulated in its dossiers\ subfolder. Nothing from the demo is therefore mixed with the account sheets of real mode, and nothing is written to the tool's folder: ComptesAD.exe -Mode Essai is enough, with any account, without “Run as administrator” and without a license. To store the demo elsewhere: ComptesAD.exe -Mode Essai -DossierDonnees "C:\ComptesAD-essai" (always on a fixed local disk: this is the example the tool gives if it refuses a network drive or a USB drive). The Reset the demo directory link erases all of this and starts again from the sample. The settings made in the demo are not used for the real directory: you will redo them in real mode.

5. The settings

At first start, the settings are done in four steps (about two minutes). After that, they are presented on a single page with tabs (Settings from the home screen). They are kept from one import to the next and contain no user data. The screen says so at the top: “First start: four steps, about two minutes. Nothing is written to the directory before your first import, unless you click ‘Create this folder here’.”

Interface language

At the top of the Settings screen, the Interface language list offers “Windows language (…)”, Français, English, Deutsch, Español, Português and Italiano. The screen points out: “Saved for your Windows account on this computer, not in the shared configuration. It takes effect the next time Kontivo starts.” The choice is stored in the registry (HKCU\Software\ComptesAD, value Langue), not in configuration.json: it does not follow the settings export, and each Windows account keeps its own. After a change, the screen displays “The chosen language will take effect the next time Kontivo starts.”

At startup, the tool takes, in this order: the -Langue fr|en|de|es|pt|it option (§ 3.5), then the language chosen in the Settings, then the Windows display language. If that language is not supplied, it uses English.

5.1 Where are the users?

Enter the name of the organization (it appears on the account sheets) and, if you have it, its ID (optional): it is used to refuse a file that comes from another organization (see Recognized school formats).

Accounts are stored in directory folders, called OUs (organizational units). The tool uses three separate ones:

At first start, the tool automatically fills in the three folders with OUs of your directory whose names resemble the proposed names (People, Leavers, Groups, or the V2 names, such as Eleves, Departs, Groupes…), and says so under each field: “Proposed from the names found in the directory: check it.” They may not be the right ones. Look at the full path displayed under each field (“Organization › People” in the demo directory) and change it if needed.

To choose a folder: in the directory tree on the left, click the name of a folder: it is selected and expanded (the ▸ arrow in front of the name only collapses or expands it), then click Use the selected folder. If it does not exist yet, select the parent folder in the tree, type the name and click Create this folder here: the OU is created immediately, protected from accidental deletion.

Settings step 1: organization name, optional ID, directory tree on the left, choice of the users folder on the right with the Use the selected folder and Create this folder here buttons.
Step 1: the directory tree on the left; on the right, the first of the three folders, proposed from the names found in the directory.

The Automatically create missing group subfolders (OU) check box is checked by default: at import, the tool creates the OU of a new group. If you clear it, the preview asks you, for each missing group OU, whether to create it. Directory groups, on the other hand, are always created when they are missing.

At the bottom of the step, the check tells you, for each folder, identified by its full path (“✓ Your account can create accounts in ‘Organization › People’”), whether your account can create accounts or groups there, and how many accounts it already contains. An administrative account stored by mistake in the users folder is reported: it will never be changed.

Bottom of step 1: account placement (One subfolder per group (recommended)), automatic creation check box, and check with green check marks and the full path of each folder.
Account placement and the check of your account's rights.

If a synchronization tool to Microsoft 365 (Entra Connect) is detected, an orange box warns you: if the “Leavers” folder is outside the synchronized scope, the Microsoft 365 account of a user who has left (OneDrive, Teams) will be deleted. Check this point with the person who manages the synchronization.

5.2 Usernames and names

The username is the user's sign-in name. Choose a template; the example next to each choice is calculated live, and the table on the right shows the result for twelve fictitious users with difficult names (accents, particles, compound names, same names).

The 9 templates offered (examples: Jean-Pierre LE GLAUNEC and Lou BRIZARD)
Label on screenTemplateExamples
firstname.lastname (recommended){prenom}.{nom}jean-pierr.leglaunec (shortened to 20), lou.brizard
lastname.firstname{nom}.{prenom}leglaunec.jean-pierr (shortened), brizard.lou
first initial.lastname{p}.{nom}j.leglaunec, l.brizard
first initial + last name{p}{nom}jleglaunec, lbrizard
last name + first initial{nom}{p}leglaunecj, brizardl
lastname.first initial{nom}.{p}leglaunec.j, brizard.l
last name (7 letters) + first initial{nom:7}{p}leglaunj, brizardl
first name + last initial{prenom}{n}jean-pierrel, loub
firstname.last initial{prenom}.{n}jean-pierre.l, lou.b

Custom template: choose “Custom template…” and type your template with these tokens:

The template must contain the last name ({nom}, {nom:N} or {n}) and start with a letter or with a last-name or first-name token. {classe} and {niveau} are refused: the username would change at each change of group. A very short template is accepted with a warning: “Many users with the same name: frequent suffixes.”

Settings step 2: list of the nine templates with one example each, options for compound first and last names, same names, maximum length, and on the right the table of fictitious examples.
Step 2: the template chosen here is “lastname.firstname”; the table on the right shows the usernames obtained for fictitious users.

The other choices:

A “People-All” group already exists elsewhere in the directory?

If your Group Policies, your shares or your user password policy already target a group (for example People-All or People-Ventes), move this group to the directory groups folder before the first import, and give it exactly the expected name: the tool then takes it over (“and 1 group” next to the “Accounts taken over” card) instead of creating a parallel group. A group left elsewhere is never used: the new group gets a short name with a suffix (People-All-2), and new users will not be in the old one. The preview reports it in orange (“Users will not be in this old group…”).

Existing usernames never change, even if you change the template: only new accounts follow the new template.

Group names can be read by all accounts in the domain, users included. Avoid a group name that reveals a personal situation (support, care or special assistance program…): choose a neutral template.

5.3 Passwords

Temporary passwords are generated on the computer and printed on account sheets, group by group. They only appear on the account sheets, when printed (§ 10), and are not written to any log.

“Bits” measure the password strength (the number of possible combinations). The screen says so next to the format: “Short: BoduKife47 (≈ 29 bits, temporary; password strength: the higher, the better)”, and in the reading of the policy: “… ✓ compatible (passwords of 10 characters, ≈ 29 bits: password strength, the higher, the better).”

These passwords avoid the letters that change place between AZERTY and QWERTY keyboards (a, q, z, w, m, y), characters that are easy to confuse (l, 0, 1) and the hyphen. The account sheet tells the user to type the digits on the numeric keypad. The length is increased if your domain's password policy requires it: the screen displays the policy read and what it gives (“Your domain requires 8 characters minimum, complexity enabled, lockout after 5 failed attempts: ✓ compatible…”).

Passwords derived from the date of birth

The Source of temporary passwords choice offers Random (recommended), as above, or Derived from the date of birth, using a template, which are easier to remember. The proposed template, {P}{n}{jj}{mm}{aaaa}, gives for a fictitious user, Lou BRIZARD, born on March 7, 2013: Lb07032013.

A guessable password

A password derived from the date of birth is easy to guess: someone who knows the date and the initial can sign in instead of the user. This is why, with this source, changing the password at first sign-in is always mandatory (the check box below is checked and grayed out). Have the first sign-in done right after the account sheets are handed out, with a supervisor present.

Settings step 3: format of temporary passwords (automatic, short, strong), domain policy read, and two checked boxes.
Step 3: the password format and the policy read in your domain.

5.4 Leavers and home folders

Leavers. A user missing from the file is disabled and moved to the departed accounts folder. Their account is permanently deleted once it left at least the chosen period ago: 90 days by default, 7 days at least. The field is called “Permanently delete departed accounts after (days, to be set with your data protection officer, the DPO)”: set this period with your DPO.

The Advanced: safety thresholds and retention panel sets the safeguards (see § 7.3): alert, confirmation and refusal thresholds for leavers, maximum share of incomplete lines, and two bulk confirmation thresholds, group changes (30% of the accounts found, by default) and renames (20%); it also sets the retention period of account sheets (7 days) and logs (12 months), what happens to users without a group, and the “Remove protection from accidental deletion on accounts to be moved or deleted” option (it requires an additional right, see Delegating rights). The default values suit most organizations.

Domain controller. The tool chooses a writable domain controller by itself. To force one, start ComptesAD.exe -Serveur dc1.demo.local, or fill in annuaire.serveur in the configuration file: the full name of a domain controller, or the domain name (the tool then discovers a domain controller and keeps it). Any other name is refused: “‘…’ is not a domain controller of demo.local: enter the full name of a domain controller…”.

Home folder. If you specify a path template, for example \\srv\people$\{sam} ({sam} is replaced by the user's username):

The folder of a user who has left is not touched during the quarantine: if they come back, they find their files again. A path set manually on an account, different from the template, is never archived. Archives are not erased by the tool: plan to delete them yourself, at the end of the period set with your data protection officer. The roaming profile template and the logon script are optional: the tool only fills in these attributes, it does not create the profile folder.

Settings step 4, Home folder part: path template \\srv\people$\{sam}, Create the folder on the share check box checked, Modify permission, archiving on deletion, drive letter H:.
Step 4: as soon as a path template is filled in, folder creation is checked by default.

To create the folders, the account that starts the tool must have the Modify permission on the root of the share: see Delegating rights.

Accounts never to touch: a list of usernames (one per line), for example a demonstration account stored with the users. These accounts are never changed.

5.5 Save, then export

Click Save settings. The first time, the tool creates the organization secret (a key that lets it recognize users from one import to the next) and immediately offers to export the settings:

Export your settings now dialog box, with the Later and Export buttons.
Export right away: see § 12.

Click Export and store the file with your backups, like a password. Without it, on another computer, the tool will no longer recognize users by their fingerprint.

6. First pass on your directory: read-only

Before the first real import, start the tool in read-only mode. It reads your real directory, calculates the real preview and checks your account's rights, but no writing is possible: in the preview, the “Continue” button stays disabled (reason: “Read-only mode: no changes can be made to the directory.”), and folder creation is disabled.

In a command prompt:

C:\ComptesAD\ComptesAD.exe -LectureSeule

With the delegated account (cmd /k keeps the window open if the tool refuses to start):

runas /user:DEMO\adm-comptes "C:\ComptesAD\ComptesAD.exe -LectureSeule"

The top banner is blue: “READ-ONLY: no changes will be made to the directory”. Do the settings, import your list, and read the whole preview: number of accounts created, accounts taken over, questions asked, safeguards. Settings saved in read-only mode remain valid afterward.

For a first deployment, then run the first real import on a test OU, with a few fictitious accounts, before applying it to your real users.

7. An import, step by step

From the home screen, click Import the user list. The import takes six steps, numbered at the top of the screen: File, Columns, Preview, Confirmation, Apply, Done.

7.1 File

On the User file screen, drop the list in the “Drop the user list here, or choose it” area, or click inside it to choose it.

Spreadsheet or CSV (any source)

This is the general case: a spreadsheet or a CSV file, from any source (HR software, ERP, another directory…), with one line per user and at least the last name, the first name and the group (department, team, unit…). Accepted formats: CSV, TXT and TSV, Excel (.xlsx, .xls) and LibreOffice (.ods). An employee number or an internal number, if there is one, becomes the user's external ID: it makes recognition from one import to the next more reliable. A date of birth, which is optional, plays the same role. Fictitious sample delivered with the tool: exemples\rh-fictif.csv (columns Matricule, Nom, Prénom, Service), and exemples\rh-fictif-2.csv for an update (§ 4).

The collapsible help How do I get this file? recalls what is needed; school exports are described in the next subsection.

The file must contain all the users of the organization. A user missing from the file is considered to have left. For only a few users, choose “Only the groups present” or “New users and changes only” at the next step.

If the tool was started with an account other than the one of your session (§ 3.3), the file must be in a folder that this account can read. A CSV file in ISO-8859-15 (the accents of some exports) is recognized like the others.

File step: drop area, collapsible help How do I get this file?, and reminder that the file must contain all the users.
Step 1: drop the file. The collapsible help explains how to get it.

Recognized school formats

This subsection groups what is specific to the exports of French schools: the software of the French Ministry of Education and school management software. The names of their menus are left in French below. The File screen lists them under the same title: “Recognized school formats: SIECLE (‘Élèves sans adresse’, .zip or .xml), ONDE, Pronote, EcoleDirecte”. For these files, the “group” is the class (the division), the “organization” is the school, and the organization ID is its UAI. The step-by-step guide for each export is in Exporting students (in French).

Columns step for a SIECLE export (ElevesSansAdresses-fictif.zip): SIECLE file recognized, one-sentence summary of the file, choice of what the file contains, View the changes button.
With a SIECLE export, the Columns step comes down to one sentence and one button.

7.2 Columns

The tool recognizes the columns on its own (last name, first name, group, date of birth, external ID…). What it displays depends on the file:

Columns step for the rh-fictif.csv file: Matricule, Nom, Prénom and Service columns recognized, first five lines as the tool understands them, choice of what the file contains, button to view the changes.
With the sample file rh-fictif.csv: the employee number becomes the external ID, the department the group; the first five lines show what the tool understood. For a SIECLE export, see Recognized school formats.

Other choices on this screen:

File without an external ID and without a date of birth (a simple table with last name, first name and group): it is accepted, but the tool then recognizes users by their full name (last name, full first name) and their previous group. This is less reliable: you are asked about same names, and leavers are unchecked (check the ones you confirm). Two lines with the same name in the same group are two users, each with their own account (the tool reports it: “Two lines have the same name in the same group…”): if one of them is a duplicate, remove it from the file. Prefer an export with an external ID (employee number, staff number, INE…) or the date of birth.

7.3 Preview of the changes

The tool reads the directory (up to half a minute), compares it with the file, and shows all the planned changes. Nothing has been changed in the directory yet.

The cards at the top count the lines of each kind; click a card to see its lines:

CardWhat the tool will do
To checkNothing, as long as you have not answered the question asked for the user (see below).
NewCreate the account, with the username displayed (editable), a temporary password and, if configured, the home folder.
Change groupChange the directory group and the OU (“5B → 4B”).
Change nameUpdate the display name; the username is kept.
ReturningRe-enable the account of a user who left and comes back: new password and account sheet, unless they left 7 days ago or less (they keep their password). An account set to “password never expires” loses this setting, and the log records it.
Accounts taken overTake over an account created manually, recognized by the user's name or by their external ID (username and password kept). The card only counts accounts; existing groups that bear exactly the expected name, stored in the groups folder, are taken over too and counted next to it (“and 2 groups”). A doubtful account (disabled, or with no sign-in since the previous period) is proposed unchecked, with the “name only” badge and the note “Same name, different group: is this the same user? Check the line to take over this account; otherwise, nothing is done for this user.”
RepairsRestore a group or an attribute changed manually.
No groupLeave the account in place; a new user without a group gets an account “waiting for a group”.
LeaversDisable the account and move it to “Leavers”. Nothing is deleted today.
To delete permanentlyDelete the accounts that left at least the chosen period ago (with 7 days, from the 7th day).
Leaving scheduledNothing: the leaving date given by the file (SIECLE) is in the future; the account will leave during an import after that date.
No changeNothing: the account is already up to date.
Ignored linesNothing: the line cannot be used (empty name, empty group…). If the tool can still recognize the user (by their external ID or their name), their account does not leave.
(line without a check box)Nothing: an account managed by the tool but that has become untouchable is only reported, never duplicated. “This user's account is protected (it is in the exclusions in the settings): it is not changed, and no other account is created.” (other possible reasons: “adminCount is 1, often left over from a former administrative group…”, “it is a member of an administrative group”), or “This user's account was moved out of the users OU (…): it is not changed, and no other account is created. Move it back into the users OU so that the tool keeps track of it.”
Preview of the changes for the first import of rh-fictif.csv: messages at the top, cards that count the lines of each kind, including New, then the list of lines of the chosen card.
The preview of the first import of rh-fictif.csv. When there are “To check” lines, they are questions: answer them, or leave them unanswered (nothing is then done for these users).

The questions (“To check” card): several accounts may match a user, a user appears in two groups, an existing account has a value set by another tool, a username cannot be calculated (name in another alphabet)… Choose the right answer. An unanswered question does not block anything: nothing is done for this user, and their account does not leave.

What you can change:

New card for the first import of rh-fictif.csv: table of people with a check box, the department (the group) and the proposed username, editable.
The new accounts of the HR sample: each line can be unchecked, each proposed username can be corrected (a username that is already taken is refused).

The safeguards. At the top of the preview, messages alert you. Some require a confirmation, others block the run:

The thresholds for leavers, incomplete lines, group changes and renames are set in Settings, “Advanced” panel. The Continue button stays disabled as long as a blocking condition remains; the reason is written next to it. If the preview plans nothing, the tool displays “Everything is already up to date.”

7.4 Confirmation

The screen summarizes in sentences what will be done: “100 accounts will be created…”, “102 accounts will be disabled and moved to ‘Leavers’ (can be restored, deletion in 90 days)”… It recalls the domain controller used and the alerts. If a phrase is requested, type it (uppercase and accents do not matter); it can combine several confirmations: DISABLE 102 AND MOVE 294 AND RENAME 12. The words of the phrase are those of the interface language (§ 5, “Interface language”). The “I have read the warnings” check box only appears if there is at least one warning and no phrase to type covers the requested confirmation; it says how many: “(1 warning above)”, “(3 warnings above)”; check it, the button stays disabled without it (reason: “Check ‘I have read the warnings’.”). With no warning and no phrase, the button is enabled right away. A snapshot of the directory is saved before starting. Click Apply the changes.

Confirmation screen for the update with rh-fictif-2.csv: list of what will be done (leavers, department changes, new users), domain controller used, alerts, To confirm, type: DISABLE 13 field, filled in in lowercase, Apply the changes button.
The confirmation of the fictitious update with rh-fictif-2.csv (see § 4): the phrase “DISABLE 13” is typed in lowercase, and it is accepted.

7.5 Apply

A progress bar and a scrolling log show each operation (“✓ Creation…”, “= Already done…”, “✗ …: insufficient rights”). Do not close the window during the run: if it closes anyway, the home screen offers to resume where it stopped. The Pause button stops cleanly after the current operation; you can then resume or stop there.

The tool also pauses on its own after 5 errors in a row, or if more than 10% of the operations fail, or if the domain controller no longer responds. Fix the cause (often a missing right), then Resume.

Run in progress screen: Do not close Kontivo during the run banner, progress bar, Pause button, operations log.
During the run of the update with rh-fictif-2.csv: the progress and the operations log.

If the window is closed or the computer restarts in the middle of a run, nothing is lost: see § 13, “The run was interrupted”.

7.6 Done

The “Done” screen summarizes the result (“386 accounts created, 21 changed, 1 error”). Click (view) to read the errors. Then:

Done screen after the import of rh-fictif.csv: summary of the accounts created, Password sheets block with the Print the account sheets of the new accounts button and one button per department, links and reminders.
The end of the first import of rh-fictif.csv: the accounts are created, the account sheets are ready to print, department by department.

An operation in error is not lost: the next preview will propose it again.

7.7 Add a user manually

For a new user arriving during the year, without waiting for a new export: home screen, Add a user manually. Enter the last name, the first name, the group and, if you have them, the external ID and the date of birth (they will make it possible to recognize the user at the next complete import). + another line adds a user. Click View the proposed account: the preview follows, and no other account will be changed (no leavers).

Add a user screen: line filled in with the last name Nouvelarrivant, the first name Alix and the group Ventes, optional External ID and Date of birth fields, + another line and View the proposed account buttons.
Manually adding a person who arrived during the year: “Nouvelarrivant Alix”, in the “Ventes” (Sales) department.

8. The next update (new period)

At each new period (new year, new season, reorganization), simply import the new complete list. The tool recognizes each user by a fingerprint of their external ID or their date of birth (see § 15): users who stay change group, new ones are created, those who have left are disabled.

Preview of the update with rh-fictif-2.csv: alert about leavers at the top; New 5, Change group 3 and Leavers 12 cards; list of lines.
A fictitious periodic update, rh-fictif-2.csv imported at the simulated date of 7/6/2027 (§ 4): 5 new users, 3 department changes, 13 leavers. The leavers exceed 10% of the accounts: the preview reports it.

To try an update without risk, demo mode simulates it with the samples rh-fictif.csv then rh-fictif-2.csv, at a later simulated date (§ 4).

Before the new period, also remember to check that the deletion period suits you: the accounts that left during the previous period will be proposed for permanent deletion.

9. Leavers, returns, undo

9.1 What happens to the account of a user who has left

A user missing from the file has not always left: export error, late enrollment, return after a move. Their account is therefore not deleted right away. When the user leaves, in a single operation, the tool:

  1. disables the account;
  2. removes it from the groups created by the tool (never from other groups);
  3. replaces its description with “Parti le jj/mm/aaaa (absent de l'import)”, keeping its group (this description is written in French, dd/mm/yyyy, whatever the interface language: it means “Left on …, missing from the import”);
  4. moves it to the departed accounts folder.

The home folder is not touched. An account that you had disabled yourself also leaves, but it will never be re-enabled automatically.

9.2 Permanent deletion

When an account left at least the chosen period ago (90 days by default: from the 90th day), the next preview puts it in “To delete permanently” (“n accounts that left at least 90 days ago will be deleted.”). You must type DELETE n to confirm. The Do not delete this time button sets aside all the deletions of this import. If archiving is configured, the home folder is then renamed into _archives.

Deletion is permanent. Without the Active Directory Recycle Bin, a deleted account cannot be restored (the home screen reports it: “The Active Directory Recycle Bin is not enabled.”). The tool never enables the Recycle Bin: this is an irreversible decision for the domain administrator. A snapshot of the directory is saved before each run (see § 11).

A deleted username stays reserved for two years: it is not given to another user. If the user themselves comes back, they get their username back.

9.3 A user comes back

If they appear again in an export, or if you add them manually, their departed account is re-enabled. A manual addition finds the account of a departed person by their external ID (INE or employee number), entered in the “External ID” field of the form, or, without an ID, by their name and date of birth when the original file provided one. Otherwise, a manual entry creates a new account. On return, they go back to their group and their directory groups and, if the “New password for a returning user” check box is checked, they get a new password (and an account sheet). Exception: if they left 7 days ago or less (leaver by mistake, partial list), they keep their password, and the preview says so (“Left on … (3 days ago): the account is re-enabled, and the user keeps their password.”). If the account was set to “password never expires”, this setting is removed on return, and the log records it. The account stays disabled if it had been disabled manually before leaving (“disabled manually” badge).

Preview, not applied, of the first file rh-fictif.csv imported again on the same day after the update with rh-fictif-2.csv: Returning 13 card, the 13 people who left come back, recognized by their employee number, each in their department, remark Left on 7/6/2027: the account is re-enabled, and the user keeps their password.
The first file imported again on the same day, after the update: the 13 people who left come back, recognized by their employee number, each in their department and, since they left 7 days ago or less, they keep their password.

9.4 Undo the leavers from an import

If an import wrongly made users leave (wrong file, partial export), you can undo its leavers in one click, as long as the accounts have not been deleted:

  1. On the home screen, click Undo the leavers from an import: the last ten runs with leavers are listed.
  2. Click Undo these leavers next to the import you want.
  3. The “Undoing leavers” preview shows the accounts that will be re-enabled in their group (“Returning” card). Continue, then apply: with no warning, there is neither an “I have read the warnings” check box nor a phrase to type; the Apply the changes button is enabled right away.

The accounts return to their group and their directory groups, with their former password (no new account sheet).

Home screen with the Undo the leavers from an import panel: Import of 7/6/2027: 13 leavers (the update with rh-fictif-2.csv), Undo these leavers button.
The home screen, “Undo the leavers from an import” panel: the update with rh-fictif-2.csv and its 13 leavers.
Undoing leavers preview for the update with rh-fictif-2.csv: Returning card, list of the people who left with the remark the account is re-enabled in its group.
The preview of the undo: each person who left with the update gets their account back, re-enabled in their department.

Rolling back a whole import: import the previous file again. Users get their group back, and the departed accounts are re-enabled. The accounts created by the undone import, however, will go into quarantine like leavers.

10. Account sheets (temporary passwords)

Each new account (and each user who comes back with a new password) has an account sheet: a slip to cut out, with the name of the organization, the user's name and group, their username and their temporary password. One page per group.

  1. On the “Done” screen, click Print the account sheets of the new accounts (all groups), or the button of a single group.
  2. The Account sheets preview window opens on top of the Kontivo window, with the reminder “These pages contain passwords. Print them, then close this preview: nothing is saved on this computer.” Browse the pages, then click Print…: this is the Windows print dialog box, where you choose the printer and its preferences.
  3. When the printer has finished, the tool asks “Were the account sheets printed correctly?”. Answer Yes, it's done: the preview closes. Answer Not yet if pages are missing: the preview stays open so that you can print them again. Close closes the preview without printing.

Printing writes no file: no HTML page, no PDF, no temporary file. The account sheets stay encrypted in their folder and are only decrypted in memory, for the duration of the preview; the passwords are drawn there, not written as text. The preview also closes when the window locks (§ 3.5).

Account sheets preview window: red banner about the passwords, slips of fictitious people from a department of the HR sample with the organization, the name and the group, the username, the temporary password in large type, the instructions; Close and Print… buttons.
The account sheets preview: the slips of a fictitious group, as they are printed.

Later, the Password sheets screen of the home screen lets you reprint them (Print…, or a single group) or delete them.

Password sheets screen: Printing frame (slips or label sheets), batch of the run of 10/19/2026 with the Print… button, or a single group, Delete these account sheets.
The account sheets screen: one batch per run.
Precautions

Slips or label sheets

On the Password sheets screen, the Printing frame chooses the form of the pages, before Print…:

For the labels to line up exactly, in the print window: scale 100% (actual size, without “Fit to page”), margins None. First do a test on a blank sheet, held against a label sheet, up to the light. Labels follow the same rules as slips: no file written, never printing to a file (PDF, XPS), labels not handed out destroyed.

Label calibration page

Before the first label sheet, and each time you change printers, check that the labels line up exactly with the calibration page. It contains no user data: you can print it and throw it away freely.

  1. On the Password sheets screen, Printing frame: choose Sheets of self-adhesive labels, then the label sheet model.
  2. Click Print a calibration page. The preview shows a frame in place of each label, two 100 mm graduated rulers and the instructions. Click Print…, at 100% scale (actual size), margins “None”, A4 format.
  3. Measure the two printed rulers (at the top and on the left): each must be 100 mm long. Otherwise, the printer is scaling the page: correct its preferences and start again.
  4. Place the sheet on a blank label sheet, edges aligned, up to the light: each frame must fall on a label, within 0.5 mm at the four corners of the sheet.

If all the frames are offset by the same amount, the printer has a physical margin or shifts the page: try the “borderless” option or another tray. If the offset grows toward the bottom or the right, the page is enlarged or reduced: check the scale again. Slips, on the other hand, do not need calibration: they are cut out with scissors.

11. Logs

Each run leaves a log: a CSV file (semicolon separator, readable in Excel or LibreOffice) in C:\ProgramData\ComptesAD\journaux\, named after the date, the time and the plan number, for example 2026-10-19_1440_p20261019-1440-7f3a9c.csv. For each operation, it contains: the time, the operator, the computer, the domain controller, the action, the username, the display name, the group before and after, the location before and after, the directory groups removed, the result (OK, Already done, Ignoré for skipped, Erreur for error) and the message. The column headers are the same whatever the language; the messages are written in the interface language (§ 5, “Interface language”).

Next to it, the before snapshot (photo-avant_…csv) lists all the accounts concerned as they were just before the run: username, name, location, enabled or not, group, directory groups. It lets you find the state of an account before an import.

The logs never contain passwords, external IDs or dates of birth. The technique.log file (the tool's internal errors) contains no user data.

From the home screen, the Logs screen lists the logs, opens their folder with the Open the logs folder button, next to which the path is displayed (“Logs folder: C:\ProgramData\ComptesAD\journaux”, to copy if the tool was started with an account other than the one of your session), and deletes those more than 12 months old (with their before snapshots).

Logs screen: logs folder, Open the logs folder button followed by the folder path, Delete logs older than 12 months button, list with the date, the file and the size.
The Logs screen (screenshot taken in demo mode: the folder displayed is the demo's).

12. Backing up the configuration and the secret

To recognize each user from one import to the next without writing their external ID to the directory, the tool uses a secret specific to the organization. This secret is on the computer, in C:\ProgramData\ComptesAD\. If it is lost, the tool no longer recognizes users by their fingerprint.

12.1 Export

In Settings, click Export settings and choose “The settings and the secret (recommended for a backup)”. The Windows “Save As” dialog box proposes the name ComptesAD-configuration-AAAA-MM-JJ.json (with the date as YYYY-MM-DD): choose where to store it.

This file contains the secret that links users to their accounts. Store it with your backups, like a password, and never on a share that users can access. Export again after each change of settings.

12.2 Changing computers

On the new computer, the tool sees that the directory is already managed by Kontivo (a ComptesAD-Etat group is stored in the groups folder; do not delete it). The home screen displays in red: “This directory is already managed by Kontivo from another computer or another installation…”.

  1. Click Import the configuration and choose the exported file.
  2. Review the imported settings, then click Save settings.
Home screen on a new computer: red banner This directory is already managed by Kontivo, Import the configuration and I lost this file buttons.
On a new computer: import the exported configuration.

12.3 If the file is lost

Click I lost this file, type REPLACE SECRET (the phrase is in the interface language; the French phrase “REMPLACER LE SECRET” is also accepted), then Replace the secret. The tool creates a new secret and has you import the list of users: it then recognizes the users once by their name and group, and rewrites their fingerprint. During this import, no account leaves. The accounts that were not found are listed; they will be processed at the next normal import.

Configuration file lost screen: explanation, To confirm, type: REPLACE SECRET field, Replace the secret button.
If you find the exported file again, import it instead: it is safer.

13. What to do if…

The tool does not start

The Kontivo window displays the reason and stays open, with the command to copy when there is one (Copy button). See the table of messages below.

“This data folder belongs to another account”

Message “The data folder C:\ProgramData\ComptesAD was created for another Windows account (owner: …): your account cannot access it. …”: one account per data folder (§ 3.3, where the message is quoted in full). Three ways out, in the order of the message: start the tool again with that account; have an administrator transfer the folder with the proposed icacls … /T command (after exporting the configuration with the secret from the owner account, to import again afterward); delete the folder if it contains nothing useful.

“No domain controller … responded” at startup

The tool looks for a domain controller that responds over LDAP (TCP port 389). The message says: “No domain controller responded over LDAP (TCP port 389). Check that the computer is in the domain and signed in with a domain account, or specify a domain controller: ComptesAD.exe -Serveur dc1.demo.local”. The usual causes: port 389 filtered between the administration network and the domain controllers, computer outside the domain, session opened with a local account.

The Kontivo window does not appear

If Kontivo is already open, a second start brings its window back to the foreground; if it stays hidden, look for it in the taskbar. If Kontivo is open under another account on the same server, the start says so (“Kontivo is already open by another user on this machine.”): wait until that user has quit it.

“Kontivo is locked”

The window locked after 30 minutes of inactivity (§ 3.5). Click Unlock and enter the password of the Windows account that started Kontivo (the one the message names, for example the delegated account, not the one of your session). A run in progress continued during the lock. After three refused passwords, quit Kontivo (Quit button of the overlay) and start it again: an interrupted run can be resumed from the home screen.

The run was interrupted

Window closed, power outage, restart: at the next start, the home screen displays “A run was interrupted on … (140 of 612).”

Resume without delay. After 12 hours, or if another run has taken place in the meantime, resuming is refused: the home screen only offers Abandon, with the explanation (“It is more than 12 hours old: resuming it would redo changes calculated from an outdated file and directory.”). Nothing is lost: the new preview proposes what remains to be done.

Home screen with the A run was interrupted banner, followed by its date and progress (the update with rh-fictif-2.csv, closed partway through), Resume and Abandon buttons.
After an interruption of the fictitious update: Resume or Abandon.

An account is not recognized, a duplicate is created

The existing account may not be in the users folder, or the file has neither an external ID nor a date of birth. In the preview, look at the “To check” card: the tool asks a question there when several accounts may match, and it never takes over a doubtful account by name alone (another date of birth, departed account): it then proposes a new account and the question “Same user?”. Answer it before applying, otherwise the new account is created (see § 7.3). An account managed by the tool but moved out of the users folder is not duplicated either: its line says “This user's account was moved out of the users OU (…): it is not changed, and no other account is created. Move it back into the users OU so that the tool keeps track of it.”

An account created manually is never changed

This is intended: an account that the tool neither created nor took over is never changed, and never leaves. The preview reports them (“Unmanaged accounts in the users OU: 3 (never changed)”). The tool takes over such an account when it recognizes the user (“Accounts taken over” card): username and password kept.

An account is “protected from accidental deletion”

It cannot be moved (change of group, leaving) or deleted; the tool checks this before touching it, so the account is neither renamed nor half-changed. The message says what to do: “This account is protected from accidental deletion: in ‘Active Directory Users and Computers’, View menu > Advanced Features, account properties, Object tab, clear the check box; or use ‘Remove protection from these accounts’ in the preview. Then run a new preview.” (the preview button requires the right to modify permissions). A managed account protected in another way (exclusion in the settings, adminCount) is not touched either: the preview says so on its line (§ 7.3).

A directory group has a short name ending in “-2”

The tool limits the short name (pre-Windows 2000 name) of a group, which must be unique in the domain, to 20 characters. If it is already taken by another object, the tool adds -2, -3… The settings (step 2) show these short names. You can rename a group created by the tool: it recognizes it by an internal marker, not by its name.

Another person is using the tool at the same time

Only one run at a time is possible: “A run is in progress from PC-ADM1 by DEMO\adm2 (since 2:40 PM).”. Wait for it to finish. The lock expires 30 minutes after the last sign of life from the other computer; a button then lets you force it (by typing FORCE, in the interface language), if you are sure that no run is still in progress there.

Microsoft 365, ENT and other services

The tool only manages the local directory. If synchronization to Microsoft 365 is in place, check that the “Leavers” folder is within its scope if you want to keep the Microsoft 365 data of users in quarantine.

The antivirus or endpoint security blocks the tool

Kontivo is a single exe, ComptesAD.exe, with no script to allow. Three cases:

The tool is started from a share or a network drive

It refuses to start, and the window says so. From a share (path \\server\…): “Kontivo is running from a network share (\\srv\outils$\ComptesAD). Copy ComptesAD.exe to the computer's local disk, for example to C:\ComptesAD, then start it again.” From a network drive (Z:): “Kontivo is running from a network drive (Z:\ComptesAD). Copy ComptesAD.exe to the computer's local disk, for example to C:\ComptesAD, then start it again.” The data folder must also be on a fixed local disk (§ 3.3).

Windows opened a temporary profile

If Windows displays “You've been signed in with a temporary profile”, the tool warns you at startup (“Warning: Windows signed you in with a TEMPORARY profile (…)”, full text in § 3.5): everything in your profile (password sheets, the key that encrypts them) will be lost when you sign out. Print the account sheets before signing out, and do not run any import until the profile is repaired.

14. Main error messages

Message (beginning)What to do
The folder … can be modified by … Someone could place code there that would run with your rights. Fix it …, with the command below, then start again.An administrator types the icacls command displayed under the message (Copy button) in a command prompt opened as administrator, then start again (see § 3.3).
The folder … belongs to an account that is neither an administrator nor yours (…). Delete it, or fix it …, with the command below, then start again.Command icacls … /setowner "*S-1-5-32-544" /T displayed under the message, to be typed by an administrator (see § 3.3).
Kontivo is running from … (…). Copy ComptesAD.exe to the computer's local disk, for example to C:\ComptesAD, then start it again.The first “…” says where the exe is: a network share, a network drive, removable media (USB drive, external disk), a CD or DVD. Copy ComptesAD.exe and docs\ to C:\ComptesAD\, on the local disk (see § 3.1).
The data folder … was created for another Windows account…: your account cannot access it. Kontivo reserves each data folder for a single operator, because the organization secret is encrypted there for that operator. …One account per data folder: start again with that account, or transfer by an administrator with the icacls … /T command displayed, or deletion of the folder (see § 3.3).
Your account cannot read the tool's folder …: its permissions were set for another Windows account. An administrator can give you read access …, with the command below; then start again.Command icacls … RX" /T displayed under the message, to be typed by an administrator (see § 3.3).
The folder … is on …: it would contain the organization secret and user data (DONNEES_SUR_PARTAGE). Specify a folder on the computer's fixed local disk, for example …, then start again.Data folder on a share, a network drive, a USB drive, a CD or a RAM disk: specify a folder on the local disk (the example in the message is ComptesAD.exe -DossierDonnees "C:\ComptesAD-donnees"), or keep the default folder. For a \\server\… path given to -DossierDonnees, the message is “The data folder cannot be on a network share (…): it would contain the secret and user data.”
Information: Kontivo is running as administrator (elevated token). Elevation is never needed…Information. Start again without elevation (double-click ComptesAD.exe), except on a domain controller.
The parameter -… was removed along with the web interface: Kontivo opens in its own window.The parameters of the former web interface (-InterfaceWeb, -SansNavigateur, -FichierUrl, -Port, -Web, -Docs) no longer exist: remove it from the command or the shortcut.
Unknown language: “…”. Available languages: fr, en, de, es, pt, it.Correct the -Langue option of the command or the shortcut (§ 3.5).
Kontivo is locked after … of inactivity.Click Unlock and enter the password of the account that started Kontivo (§ 3.5).
Warning: Windows signed you in with a TEMPORARY profile (…)…Print the account sheets before signing out; have the profile repaired before any import.
Kontivo could not start (incident …, details in …): …Read the end of the message; the technical details (without user data) are in the technique.log file named. Without an incident number, the message is “Kontivo could not start: …”: its end gives the cause.
Kontivo is already open by another user on this machine.Only one user at a time on the same server: wait until that user has quit the tool.
No domain controller responded over LDAP (TCP port 389). Check that the computer is in the domain and signed in with a domain account, or specify a domain controller: ComptesAD.exe -Serveur dc1.demo.localComputer in the domain, session with a domain account, TCP port 389 open to the domain controllers; otherwise specify a domain controller with -Serveur (see § 13).
“…” is not a domain controller of …: enter the full name of a domain controller (for example dc1.…), or leave the field empty to let the tool choose one.Correct -Serveur or annuaire.serveur: the full name of a domain controller, or nothing (see § 5.4).
This directory is already managed by Kontivo from another computer…Import the exported configuration, with the secret (§ 12).
The secret on this computer does not match the directory's secret.Import the configuration exported from the computer that manages the directory.
Your users match … by name, but almost none by fingerprint: the secret on this computer is probably not the right one. Import the exported configuration.Import the exported configuration, with the secret (§ 12).
This STS-Web file describes staff…This is not the right SIECLE export: see Recognized school formats.
File format not recognized. Try saving the file as CSV or XLSX.Open the file in your spreadsheet program and save it as CSV or XLSX.
The ZIP file is password-protected…Save the export without a password.
File too large: 60 sheets, 20,000 lines and 200 columns at most.Remove the unneeded sheets or columns.
This file comes from another organization (ID …).Check the export, or the organization ID entered in the settings (step 1).
…% of the lines have no …: is the chosen column correct?Go back to the Columns step and correct the last name, first name or group column.
The column “…” gives the level (6EME, 2NDE GT…), …Message specific to school exports: at the Columns step, choose the Division column for “Group”, not the level column (see Recognized school formats).
The sheet … does not have the columns of the sheet …: it is not read, and its users will not get an account.Give all the sheets of the workbook the same column headers, or import this sheet separately.
Two lines have the same name in the same group, with no external ID or date of birth to tell them apart…They are two accounts. If a line is a duplicate, remove it from the file.
The file contains … users for … accounts. If you are only importing new users, choose “New users and changes only (no leavers)”…The file seems partial: choose “New users and changes only” or “Only the groups present”, or use a complete export.
All users are in the same group…Check the Group column, or choose “Only the groups present”.
… (…%) …: this is almost certainly an incomplete file or a file from another organization.For example “412 users (38%) would be disabled: …”. Check the file; if needed, raise the refusal threshold in the settings (“Advanced” panel).
Partial import: … out of … A user missing from their group's list may only have changed group: only confirm the leavers you are sure of.Only check the leavers you are sure of, then type the requested phrase.
… out of … (…%) … group. This is normal during a reorganization; otherwise, check the column chosen for the group (a level, option or subgroup column is not the group).For example “140 users out of 612 (23%) change group…”. During a reorganization: type MOVE n (combined with the other phrases). Otherwise, check the Group column.
… out of … (…%) … (first name, last name or display name): check that the Last name and First name columns are not swapped, and that the preferred last name is intended.For example “52 accounts out of 612 (8%) will be renamed…”. Check the Last name and First name columns and the preferred last name, then type RENAME n.
The group … is a member of an administrative group (or has adminCount = 1)…Blocking: remove the group from that administrative group (and reset adminCount to 0), then run the preview again.
… out of the users OU (…): … into the users OU so that the tool can track ….Information, for example “3 accounts managed by the tool have been moved out of the users OU (…): they are no longer changed (neither group nor leaving). Move them back into the users OU so that the tool can track them.”: move these accounts back into the users folder.
The group … will have the short name (sAM) …: … is already taken in the directory… Users will not be in this old group.If the old group is in use (Group Policies, shares, password policy), move it to the groups folder, with exactly this name, before applying (§ 5.2).
This file is for the year …: check that it is the intended export (year chosen in SIECLE).Confirm if this is intended; otherwise, run the export again for the right year.
Your account cannot create … in “…”: delegate the rights (see the user guide) or use another account.Delegate the rights (Delegating rights) or use another account.
The file is no longer in memory (more than an hour, or a new analysis)…Drop the file again.
The preview is more than an hour old.The tool reads the directory again on its own and highlights the lines that have changed: review them, then confirm again.
Insufficient rightsYour account lacks one of the necessary rights: compare with Delegating rights. On a domain controller, start the tool from an administration computer instead.
This account is protected from accidental deletion: in “Active Directory Users and Computers”, View menu > Advanced Features…Follow the message, then run a new preview (see § 13).
This run was interrupted more than 12 hours ago: resuming it would redo changes calculated from an outdated file and directory. Abandon it, then run a new preview with an up-to-date file.Resuming is refused: Abandon, then run a new preview with an up-to-date file (see § 13).
Another run has taken place since this interruption: resuming it would redo changes calculated from an outdated file and directory. Abandon it, then run a new preview with an up-to-date file.Same as above.
OU created, but protection from accidental deletion was not set (missing the “modify permissions” right on the parent OU): an administrator can set it in Active Directory Users and Computers (Object tab of the OU).Log note, operation successful: the group OU exists, without protection. See Delegating rights, § 3.
Password refused by the domain policyA stricter password policy applies to the users: choose the “Strong” format, or check the users' fine-grained policy.
Username already usedLikewise “Name already used in this folder” and “Sign-in username (UPN) already used in the forest”: an object was created between the preview and the run. Run a new preview; the tool will choose another username.
The domain controller … does not respond.Check the network and the domain controller, then Try again, or abandon and run a new preview.
Paused: … errors in a row (“…”). Fix the problem, then resume, or stop here.Fix the cause indicated, then Resume, or Stop here.
Unable to create the home folder (permissions on the share?).Give the account the Modify permission on the root of the share (Delegating rights).
Folder created, but the user's permission could not be granted (…).The account must be able to modify the permissions of the folder it created: see Delegating rights. Then grant the permission manually.
Unable to archive the home folder (permissions on the share, or file open?): it stays in place.Nothing is lost: move the folder manually into _archives, or leave it.
The folder … already exists and does not belong to this user (former user?): it was not assigned to them and could not be archived…Nothing is lost: archive or rename this folder manually, then run a new import; the tool will then create the user's folder.
These account sheets were created by another Windows account: only that account can open them.Start the tool again with the account that ran the import.
Internal Kontivo error (incident …).Note the incident number: the technical details, without user data, are in C:\ProgramData\ComptesAD\journaux\technique.log.

15. What the tool writes to the directory

Last name, first name, display name, group, username and sign-in name, description (according to the template in the nommage.description key of configuration.json: for a new installation, “{classe} (managed by Kontivo)”, and “Awaiting group (managed by Kontivo)” for a user without a group; a configuration from V1 or V2 keeps its description, see § 3.7), and, if configured, the home folder, the drive letter, the profile and the logon script. Plus two technical attributes:

The tool never writes the date of birth or the external ID to the directory: all accounts in the domain, users included, can read this information. It does not touch the users' info and employeeID attributes (unless you ask it to clear an external ID found in plain text in employeeID). Nor does it write the external ID, the SIECLE number or the date of birth to its own files (logs, plans, account sheets).

The groups created by the tool are global security groups, in the groups folder, recognized by a marker in their adminDescription attribute. The ComptesAD-Etat distribution group, with no members, keeps the state of the tool: do not delete it.

Nothing that the tool writes to the directory depends on the interface language: descriptions, OU names, markers. Two computers set to two different languages therefore manage the same directory in the same way. Only the values proposed to a new installation (OU and group names, descriptions) follow the language of the first settings; once written to configuration.json, they no longer change with the language.

Never changed: administrative accounts (even if stored by mistake with the users), the accounts in your “never to touch” list, the accounts in the users folder that the tool neither created nor took over, and everything outside the three chosen folders.

16. Other documents

Kontivo 3.0.0, for Active Directory · © 2026 · proprietary software (see LICENCE.txt) · the names in the screenshots are made up · Active Directory is a trademark of Microsoft.