Ich hab mal etwas ähnliches gemacht.
Eine Tabelle mit Rollen, was deinen Abteilungen entspricht.
Eine Tabelle mit Usern, die für das Prog. zugelassen sind, mit DomäneNamen und einem Feld "Admin- Ja/Nein."
Eine Tabelle wo Usern Rollen zugeteilt werden.
Der User wird anhand seines Domäne-Namen erkannt, so steht er auch in der Tabelle.
Nur User, die in der User Tabelle stehen können das Prog. überhaupt starten.
Um Mißbrauch eines nicht gesicherten Arbeitsplatzes zu vermeiden kann beim Start zusätzlich nochmal ein Loggin erfolgen. Dies benutzt aber auch den Domäne-Namen und -Passwort und verifiziert das über eine entsprechende
API?-Funktion.
So müssen sich die User nicht so viele Passwörter merken. Umgekehrt heißt das natürlich, dass einem Tür und Tor offen stehen, wenn man das Anmeldepasswort eines Kollegen rausgekriegt hat. Ist halt immer die Abwägung zw. Sicherheit und Bequemlichkeit.