User Guide

LDAP-Manager — administrator’s guide

LDAP-Manager puts a captive portal in front of your network and ties every session to a named account in your directory. This guide covers the console you work in day to day — creating and importing accounts, managing groups, issuing guest logins, setting device limits, delegating administration, and seeing who is online.

Product
LDAP-Manager
Prepared by
Optimus Secure
Audience
Network & IT administrators
Overview

What it is

One console for your directory and your network access — instead of a directory tool in one place and access control in another.

Users open a browser, are shown a sign-in page, and authenticate with the account they already have in your directory. From that moment the session is tied to a named person: you can see it, report on it, limit how many devices it covers, and end it. For your team, the same console is where accounts are created, imported in bulk, grouped, expired and delegated.

Captive portal Directory sign-in Users & groups Bulk upload Bulk update Guest accounts Device limits Delegated admin roles Session monitor Reports Self-service password reset
✅
Nothing is installed on your users’ devices. Any phone, laptop or desktop with a browser works, including the built-in captive-portal assistants on Android, iOS, Windows and macOS.
Getting Started

Signing in to the console

The admin console is deliberately harder to reach than the user portal.

1

Open the admin address

Your admin console lives at /admin on your portal address — for example https://portal.your-domain/admin. Your deployment team will have given you the exact address.

2

Sign in with your admin account

Admin accounts are separate from directory user accounts. They are created by a superadmin on the Admin Accounts page, not by self-registration.

3

You land on the dashboard

What you can see and do from here depends entirely on the role your account was given. Two administrators can see two different consoles.

🔒
Access to the console can be restricted by address, but note how it behaves: while the allow-list is empty, every address can reach the console. Restriction begins the moment the first entry is added — after that only listed addresses, and the server itself, get in. See Security Controls.
Getting Started

The dashboard

A live picture of the network before you change anything.

The dashboard shows how many users are online right now, recent authentication activity, and the health of the system itself. The online counter in the header updates as you work, so you can see the effect of a change without reloading.

On the dashboardWhat it tells you
Online nowLive count of users currently holding an active session
Recent activitySign-ins as they happen, with the account and address
System healthProcessor, memory and storage utilisation, kept as a rolling trend so an overnight spike is still visible the next morning

The left-hand navigation is grouped into five sections. Menu items you do not have permission for are not shown at all, so your menu may be shorter than a colleague’s — that is the role working, not a fault.

Menu sectionPages
MainDashboard
LDAP ManagementUsers, Groups, Bulk Upload, Bulk Update
NetworkSessions, Network Monitor
ReportReports Dashboard, Inactive Report
SystemAdmins, Roles & Permissions, Settings, Monitoring, High Availability, Backup & Restore
The dashboard — active sessions, today’s logins, directory totals, and login activity over 24 hours and 7 days.

The dashboard — active sessions, today’s logins, directory totals, and login activity over 24 hours and 7 days.

Managing Accounts

Users

Create, edit, expire, disable and reset — all from the Users page.

LDAP Management → Users lists the accounts you are allowed to see. Search by username or name, then use the action buttons on a row, or open the account to edit it in full.

FieldWhat it is for
Username (uid)The login name. Set when the account is created and not editable afterwards — it is the account’s identity.
Full Name (cn)The display name shown in reports and session lists. Required.
EmailUsed for the welcome message and for self-service password-reset codes. Without it the user cannot reset their own password.
Valid UntilThe date the account stops working. Required for guest accounts; optional for permanent staff and students.
Group MembershipWhich directory groups the account belongs to. Group membership drives the policy the user receives — see Groups.

Other actions on a user: reset the password, disable the account immediately, set or clear an expiry date, change group membership, and — if your role allows it — delete the account. Each of these is a separate permission, so your role may allow some and not others.

⚠️
Disable and delete are not the same. Disabling stops the account working but keeps it and its history. Deleting removes it. For someone who has left, disabling or setting an expiry date is almost always the right choice.
Managing Accounts

Groups

Groups are how policy is applied to more than one person at a time.

Rather than configuring each account, you put accounts into groups and let the group carry the policy. Changing a user’s group changes what they get — there is no second place to update.

What groups controlHow
Device allowanceEach group carries a default number of devices a member may use at once. A per-user override beats the group default.
Administrative visibilityAn admin role can be scoped to a single group, so that administrator only ever sees those accounts.
ReportingUsage reports break activity down per group.
💡
Managing groups themselves — creating them, renaming them — is a separate permission from changing a user’s group. A delegated administrator can usually move users between existing groups without being able to alter the group structure.
Group management — every directory group with its live member count, and its full directory path.

Group management — every directory group with its live member count, and its full directory path.

Managing Accounts

Guest accounts

Time-bound logins that switch themselves off, issued by staff who can do nothing else.

A guest account is an ordinary account with a mandatory Valid Until date. When that date passes the account stops working — nobody has to remember to turn it off.

1

Create the account

Fill in the name and e-mail, set Valid Until to the last day the visitor needs access, and put the account in your guest group.

2

Hand over the credentials

The welcome e-mail carries the sign-in details, so reception does not have to write a password on paper.

3

Extend or end it

Need another two days? Edit the account and move the date. Leaving early? Set the date to today, or disable the account outright.

🏨
Guest issuing is usually delegated. A reception or guest-house role can be given exactly the permissions to create guests and set expiry dates, scoped so it sees only the guest group — and nothing else in the directory. See Admin Accounts & Roles.
Managing Accounts

Device limits

How many devices one account may use at the same time — and how to make exceptions.

Every account has a device allowance. It comes from the account’s group by default, and a per-user value overrides it where someone genuinely needs more.

Where the limit comes fromBehaviour
Group defaultApplies to every member of the group unless overridden. Typical deployments use a small number for general users and a larger one for staff.
Per-user overrideSet on the individual account. Use it for a shared teaching credential that must cover a full laboratory, or for a user with a genuine need for more devices.
Re-signing in on the same deviceDoes not consume a second slot. Signing in again from a device you are already using simply continues.
Available valuesThe per-user allowance is chosen from a list: 1, 2, 3, 4, 5, 10, 15, 20, 50, 100, 200, 300, 400 and 500.

When a user reaches the limit and tries to sign in on a new device, they are not simply refused. They are shown their own active sessions and may end one of them, then sign in — without having to call you and without re-entering their password.

📌
Set the override generously for shared credentials. A lab instructor signing a single account in on a hundred machines needs an allowance of at least a hundred, or the hundred-and-first machine will be turned away.
Working in Bulk

Bulk upload, update and edit

For the start of a term or an intake, when accounts arrive by the thousand.

There are three separate bulk tools, and it is worth knowing which one you want before you start.

ToolWhat it is for
Bulk UploadCreates new accounts from a CSV file.
Bulk UpdateCorrects existing accounts from a CSV file.
Bulk actions on a selectionTick users in the list and change them together — no file involved.

Bulk Upload — preparing the file

The importer is deliberately forgiving, so in most cases the sheet you already have will work as it is.

RequirementBehaviour
File typeCSV only. If you upload an Excel file it is detected and refused with instructions — open it in Excel and use File → Save As → CSV (Comma delimited) first.
SeparatorComma or semicolon — detected automatically from the header row, so European-locale exports work without editing.
EncodingDetected automatically. Accented and non-English characters survive.
Column namesNot case-sensitive, and each field accepts many spellings.

Only the username column is required. These are the column headings the importer recognises — any one of them will do:

FieldColumn headings accepted
Username (required)uid, username, user_name, userid, roll_no, rollno, roll number, enrollment_no, enrollment, enrolment, student_id, employee_id, emp_id, id, login, login_id, reg_no, registration_no, scholar_no
Full namecn, full_name, fullname, name, student_name, employee_name
Surnamesn, last_name, lastname, surname
First namegiven_name, givenname, first_name, firstname
E-mailmail, email, e-mail, email_id, email address
Phonetelephone, phone, mobile, mobile_no, contact, contact_no
Notesdescription, desc, remarks, note, notes
💡
A roll-number or enrolment column straight out of your student system is already a valid username column — you do not have to rename it to uid.

Bulk Upload — settings that apply to every row

Three things are set on the upload page rather than in the file, and they are applied to every account in it: the group or groups the new accounts join, a Valid Until date, and a device allowance. This is the quickest way to bring in a batch of guests or contract staff who should all expire on the same day.

✅
Do a trial run with five rows before you upload five thousand. If the username column cannot be found, the error lists the column headings it actually saw — which usually makes the problem obvious at once.

Bulk Update — correcting what already exists

Bulk Update works on accounts that are already there, and it follows the opposite rule to the single-user edit form: a blank or missing value means “leave this field alone”, never “clear it”. A correction file only needs the username column plus the columns you are actually fixing.

⚠️
Bulk Update can also rename an account, using a new_uid column (also accepted as new username or rename_to). A rename changes the account’s identity, so check that column carefully before uploading.

Bulk actions on a selection

For changes that do not need a file, tick users in the Users list and apply one action to all of them:

ActionEffect
Add to group(s)Put every selected user into one or more groups
Remove from group(s)Take them out of one or more groups
Set Valid UntilGive them all the same expiry date
Set device limitGive them all the same device allowance
Clear Valid UntilRemove the expiry date, making the accounts permanent
Clear device limitDrop the per-user override so the group default applies again

Enable, disable and delete on a selection are also available, each behind its own permission.

Administration

Admin accounts and roles

Hand out tasks without handing out the whole directory.

Administrators are not directory users — they are separate console accounts. Each one is assigned a role, and the role is assembled from individual permissions. Grant only what the job needs.

1

Create the role

Give it a name and tick the permissions it should carry. Everything you leave unticked is denied.

2

Scope what it can see

Optionally restrict the role to a single user group. An administrator with that role will see and act on only those accounts — the rest of the directory is invisible to them.

3

Assign it to an account

Create the admin account and give it the role. You can change the role later without recreating the account.

⚠️
Four permissions deserve a second thought before you grant them: Delete Users, Bulk Delete Selected Users, Manage LDAP Groups and System Settings. They are off by default in delegated roles for good reason.

A worked example: a guest-house role that can view the dashboard and users, create and edit users, reset passwords, set expiry dates, change a user’s group and bulk-upload — scoped to the guest group only, with delete, group management, the session monitor, reports and system settings all withheld.

Administration

Permissions reference

The twenty permissions a role is built from.

PermissionWhat it allows
View DashboardSee the dashboard and its live counters
View UsersSee the user list — limited to the role’s scope if one is set
Create UsersAdd new accounts
Edit UsersChange name, e-mail and expiry on an existing account
Delete UsersPermanently remove an account
Reset User PasswordSet a new password for a user
Disable / Set ExpirySwitch an account off, or give it an end date
Change User GroupMove a user between existing groups
Manage LDAP GroupsCreate, rename and remove groups themselves
Bulk Upload UsersImport accounts from a prepared file
Bulk Update UsersApply a change to many existing accounts from a file
Bulk Edit Selected UsersEdit a set ticked in the user list
Bulk Disable Selected UsersDisable a ticked set
Bulk Enable Selected UsersRe-enable a ticked set
Bulk Delete Selected UsersPermanently remove a ticked set
View Session MonitorSee who is online and end sessions
View ReportsOpen and export usage reports
Manage Admin AccountsCreate admin accounts and roles
System SettingsChange system-wide configuration
Manage User Guide PDFReplace the documentation published to end users
Administration

Security controls

What protects the console itself.

ControlWhat it does
Management address allow-listThe admin console answers only approved addresses. Requests from anywhere else are refused before any password is accepted. Keep this list short and current.
Audit trailAdministrative actions are recorded with the account that performed them, the affected user and a timestamp.
Encrypted transportAll console and portal traffic is carried over TLS; the connection to the directory is encrypted as well.
Separation of dutiesDestructive permissions are granted individually, so an operator role can be genuinely useful without being dangerous.
🔑
Review admin accounts periodically. The Admin Accounts page shows the last sign-in for each one — an account that has not been used in months is usually one that should be removed.

How the address allow-list actually behaves. While the list is empty the console is open to every address. Adding the first entry turns restriction on: from then on only the addresses on the list, plus the server itself, can reach it. An entry may optionally also pin a hardware address, in which case both must match — that check only works for clients on the same subnet as the server.

⚠️
Add your own address first. The page shows you the address you are browsing from for exactly this reason. Adding somebody else’s address as the first entry locks you out of the console immediately.
Admin portal access control — the allow-list, what is always permitted, and the address you are currently on.

Admin portal access control — the allow-list, what is always permitted, and the address you are currently on.

Oversight

Sessions and reports

Who is on the network now, and what the pattern has been.

ToolWhat it gives you
Session monitorEvery active session: the account, the address it is on, and when it started. End a session from here when you need to.
Usage reportsSign-in volume, busiest hours, day-of-week pattern and a breakdown per group.
Scheduled summariesReports generated and circulated on a schedule, so nobody has to remember to pull the numbers.
Inactive reportA separate report for accounts that are provisioned but not being used.

The Reports Dashboard opens on a row of counters — total directory users, active sessions right now, disabled accounts, expired accounts, users in no group, accounts expiring in the next 7 and 30 days, and new accounts this week and month. Below those sit login volume over 30 days, peak hours, the day-of-week pattern, the operating-system mix, and a per-group breakdown with headcount, logins, disabled and expired counts. That table has an Export CSV button.

📅
The Expiring in 7 Days counter is the one worth checking on a Monday — it is your warning that a batch of guest or contract accounts is about to stop working.
The reports dashboard — account counters, login volume, peak hours, day-of-week pattern and a per-group breakdown.

The reports dashboard — account counters, login volume, peak hours, day-of-week pattern and a per-group breakdown.

🔎
The session monitor is the fastest way to answer “who was on this address at this time?” Session records keep the account, the address, the device identifier where available, and the sign-in and sign-out times.
System Pages

Settings, availability and backup

The rest of the System menu.

Settings

System-wide configuration, gated behind its own permission so it can be kept away from delegated administrators. It covers the directory connection, portal behaviour, outgoing mail (with a test button so you can prove SMTP works before relying on it), the welcome and password-reset e-mail template, log forwarding targets, your own password, and the administrative address allow-list.

High Availability

The system runs as a redundant pair. This page shows the current state and gives you deliberate control over it rather than leaving failover as something that only ever happens to you.

ControlWhat it does
StatusWhich unit is serving and the health of the pair, with a live view.
Enable / disableTurn redundancy on or off.
PriorityChange which unit is preferred as the serving one.
Force failoverHand service to the other unit on purpose — this is how you take a unit out for maintenance without an outage window.
🔧
Before patching or rebooting a unit, force a failover to the other one first. Users stay connected and you are not working on the unit that is carrying live traffic.

Backup & Restore

A backup is a single ZIP file, named with the date and time it was taken. It contains the directory users and groups, the session database, and the system’s own configuration.

TaskHow it works
Taking a backupOne button. The archive downloads to your machine — store it somewhere off this server.
RestoringUpload the ZIP, then choose which parts to restore. The directory, the database and the configuration are selected independently, so you can recover one without disturbing the others.
Safety checkThe archive is validated before anything is written. A file that is not a backup from this system is refused.
⚠️
Restoring the directory replaces user and group data. Take a fresh backup immediately before you restore an old one — that way the current state is still recoverable if the restore was not what you expected.

Sessions

Under the Network menu: every active session with the account, the address and when it started, and the ability to end one. The session list can be exported.

Inactive Report

Accounts that exist but have not been used. It looks back a configurable number of months — two by default — and lists everyone with no activity in that window, with CSV export for working through the list.

🧹
Run this at the end of a term or year. It is the fastest way to find accounts belonging to people who have already left.
Your End Users

What your users see

Useful to know, because it is what they will describe when they call you.

What they experienceWhat is happening
The sign-in pageA device that has not signed in is sent to the portal automatically. The user enters their directory credentials — the same ones they use elsewhere.
Moving around the campusA device that moves to another part of the network is recognised and its session resumed. The user is not asked to sign in again and their connection is not dropped.
“You are already connected”A user who returns to the portal while still signed in is told so, and can either carry on or end the session.
Managing their own devicesA user at their device limit is shown their own active sessions and can end one to free a slot — without needing you and without re-entering a password.
Forgotten passwordThe user requests a reset and receives a one-time code by e-mail. This only works if the account has a valid e-mail address on it.
📧
Most self-service password-reset complaints come down to a missing or wrong e-mail address on the account. Check that first.

Users also have a status page showing their current session, a page to change their own password, and a short help page. If their session has ended at the network but their browser still shows them as connected, there is a re-login link that clears the stale session and returns them to sign-in — worth knowing, because it resolves a call in one step.

Reference

Troubleshooting

The things that actually come up.

SymptomWhat to check
A user cannot sign in at allCheck the account is not disabled and that Valid Until has not passed. An expired account looks exactly like a wrong password to the user.
“Maximum devices allowed”The account is at its limit. Either the user ends one of their own sessions from the page they are shown, or you raise the per-user allowance on the account.
Self-service password reset never arrivesThe account has no e-mail address, or the wrong one. Check the Email field on the user.
An administrator cannot open the consoleTheir current network address is not on the management allow-list. Add it, or have them work from an approved network.
An administrator cannot see a userTheir role is scoped to a single group and that user is not in it. This is working as intended — widen the scope only if the job really needs it.
A menu item is missingThe role does not carry that permission. Menu items are hidden rather than shown and refused.
Bulk upload rejected rowsRead the per-row result report — it names the reason. Fix those rows in your file and upload just them again.
Support

Getting help

We build and support this ourselves — reach out any time.