none
bloquer compte pour une durée de temps avec .NET RRS feed

  • Question

  • Bonjour,

    Je ne sais pas si c'est le bon forum. Il n'y a aucun qui m'aille donc j'essaie celui-ci. C'est de l'administration système après tout.

    J'ai développé une application Web .net 4.0 qui permet aux enseignants de mon institut de choisir leur salle de cours sur une liste déroulante puis d'inactiver les sessions + éteindre les ordinateurs de toute la salle en cliquant sur un bouton; ils voulaient comme cela obliger les étudiants un peu dissipés de faire attention à leur cours au lieu de surfer sur internet ou jouer entretemps.

    Mon appli fonctionne très bien. Je ne fais qu'utiliser l'attribut AD userAccountControl que je mets à 514 pour inactiver le compte de chaque étudiant.

    Le problème c'est que l'enseignant doit, à la fin du cours, aller encore sur l'appli pour cliquer sur un bouton et ainsi réactiver les comptes de ses étudiants (userAccountControl=512), autrement ils ne pourront plus ouvrir de session après le cours.

    Evidemment, ils oublient systématiquement de le faire et je me retrouve avec des comptes étudiants bloqués que je dois débloquer moi-même....

    Je cherche un moyen de pouvoir inactiver les comptes de ces étudiants mais que pendant une période de temps, disons 2h. Il y a un attribut tentant, lockoutTime, qui stocke la date où un compte à été bloqué. Mais alors il faut aussi utiliser un autre attribut, lockout-Duration, pour établir pendant combien de temps le compte doit rester bloqué avant de se débloquer tout seul.

    Mes problèmes :

    1, je ne trouve pas l'attribut lockout-Duration ni rien de semblable dans mon active directory (?);

    2, je ne vois pas du tout comment me servir de cet attribut (s'il existe) via .net.

    Je suis prête à utiliser PowerShell 3 dans mon code mais je ne suis pas très à l'aise avec et je n'ai pas trouvé non plus d'exemple de script.

    Est-ce que quelqu'un pourrait :

    1, me dire comment voir cet attribut sur mon AD ou alors s'il a changé de nom, comment il s'appelle;

    2, me dire si lockout-Duration est utilisable par programme et comment;

    3, me donner d'autres idées pour réussir de bloquer un compte utilisateur de façon temporaire sans avoir rien à faire pour le débloquer.

    Merci beaucoup....

    Cordialement,

    Susana


    susana

    jeudi 14 novembre 2013 11:15

Toutes les réponses

  • Bonjour,

    Il ne faut pas confondre désactivation d'un compte et verrouillage de compte.

    Vous pourriez envisager un script PowerShell qui tourne sous forme d'une tâche planifiée pour réactiver les comptes, non ?

    Cordialement

    --
    Thierry MILLE


    Thierry [MVP Windows Expert - IT Pro]

    vendredi 29 novembre 2013 10:43
  • Exemple de début de script (Exchange) que nous utilisons pour recherche les comptes AD désactivés :

    Get-User -OrganizationalUnit "ou=utilisateurs,dc=domaine-exemple,dc=com" | Where-Object {$_.UserAccountControl -eq "AccountDisabled, NormalAccount"}

    => Au niveau des attributs AD, vous pourrez trouver la date de dernière modification


    Thierry [MVP Windows Expert - IT Pro]

    vendredi 29 novembre 2013 10:48