Table des matières
Comment fonctionne Active Directory en C# ?
Exemples d'Active Directory avec C#
Conclusion

Active Directory avec C#

Sep 03, 2024 pm 03:33 PM
c# c# tutorial

Active Directory avec C# sert avant tout à organiser les ordinateurs, les utilisateurs de l'entreprise, etc. L'essentiel est un système de gestion des utilisateurs qui est généralement utilisé par les réseaux d'entreprise et à des fins commerciales. Un administrateur d’entreprise l’utilisera pour organiser l’historique complet de l’entreprise à partir des ordinateurs appartenant au réseau, du profil et des autorisations d’accès, etc. Active Directory est un type de base de données comme Oracle et SQL, il possède son propre langage de type de requête et un ensemble de règles basées sur LDAP.

Syntaxe :

Pour accéder à l'objet DirectoryEntry, nous avions besoin du nom d'utilisateur, du mot de passe et de l'adresse du serveur Active Directory. L'adresse du serveur contient l'adresse IP ou le chemin de LDAP ressemble à la syntaxe suivante,

LDAP://domain_name.com/DC=domain_name,DC=com
Copier après la connexion

Comment fonctionne Active Directory en C# ?

Active Directory aide vraiment les administrateurs informatiques, car il les aide à organiser les utilisateurs, les ordinateurs de bureau et plus encore de leur entreprise. Il possède une structure hiérarchique complète à quel réseau et ce que montre la photo de profil et qui accède aux stockages, etc. La plupart des entreprises font évoluer leurs applications depuis les applications de bureau vers les applications Web détenant l'authentification LDAP basée sur un formulaire. Parfois, les applications .NET interagissent avec Microsoft Active Directory (AD) pour récupérer la liste des utilisateurs, rechercher des groupes, authentifier les utilisateurs et également vérifier quels utilisateurs appartiennent à quel groupe Active Directory. En utilisant certaines approches, nous pouvons récupérer les informations de la base de données AD au sein de notre domaine.

Il existe différentes approches, l'une consiste à utiliser le LDAP (Lightweight Directory Access Protocol), il contient les classes DirectoryEntry et DirectorySearch qui appartiennent à l'espace de noms System.DirectoryServices. Une autre approche consiste à utiliser l'ensemble des wrappers de classe dans Active Directory (AD) sous l'espace de noms System.DirectoryServices.AccountManagement. En utilisant les requêtes LDAP, nous pouvons obtenir les informations de la base de données AD. Cette classe permet d'accéder à l'intégralité d'AD mais la classe wrapper permet de récupérer les utilisateurs, les objets informatiques, les groupes dans AD. Les objets classes DirectoryEntry et DirectorySearch sont plus rapides que l'objet System.DirectoryServices.AccountManagement.

L'élément de base d'Active Directory avec C# inclut la bibliothèque System.DirectoryService, cela permet d'interroger avec les routines de la bibliothèque AD. Active Directory communique via les objets de DirectoryEntry. Ces objets constituent les connexions les plus importantes à la base de données LDAP que nous pouvons interroger pour des objets et des dossiers supplémentaires. Pour accéder à l'objet DirectoryEntry, nous avions besoin du nom d'utilisateur, du mot de passe et de l'adresse du serveur Active Directory. L'adresse du serveur contient l'adresse IP ou le chemin de LDAP ressemble à ceci,

LDAP://domain_name.com/DC=domain_name,DC=com

Exemples d'Active Directory avec C#

Pour se connecter à Active Directory pour les objets de DirectoryEntry, car nous devons créer l'utilisateur de type d'authentification sécurisée qui indique la connexion authentifiée sécurisée à Active Directory. Lors de la connexion avec un compte de l'administrateur, nous pouvons exécuter les fonctions Active Directory de l'administrateur telles que la création de nouveaux utilisateurs, la mise à jour des utilisateurs, la suppression des utilisateurs, etc.

Obtenir l'objet DirectoryEntry de l'objet Directory

private DirectoryEntry Reterieve_DirectoryObject( )
{
DirectoryEntry Obj_de;
Obj_de=new DirectoryEntry("LDAP://IP_Address", "admin","password", AuthenticationTypes Secure);
return _de;
}
Copier après la connexion

Récupérer l'utilisateur depuis Active Directory en C#

Une fois connecté à Active Directory, nous devons rechercher un objet comme obtenir un utilisateur comme suit ci-dessous,

private DirectoryEntry Reterieve_User(string User_Name)
{
DirectoryEntry obj_de = Reterieve_DirectoryObject( );
DirectorySearcher obj_deSearch = new DirectorySearcher();
obj_deSearch.SearchRoot = obj_de;
obj_deSearch.Filter = "(&(objectClass=user)(JOHNAccountName=" + User_Name + "))";
obj_deSearch.SearchScope = SearchScope.Subtree;
SearchResult getPath = obj_deSearch.FindOne();
if (!(getPath == null))
{
obj_de = new DirectoryEntry(getPath.Path, "administrator", "password", AuthenticationTypes.Secure);
return obj_de;
}
else
{
return null;
}
}
Copier après la connexion

Le code ci-dessus explique comment récupérer l'utilisateur depuis Active Directory en fonction de ses informations de connexion. Nous devons utiliser un langage de requête Active Directory particulier inclus entre parenthèses, il contient le nom comme « JohnAccountName » et le nom d'utilisateur comme dans Active Directory. Une fois trouvé le DirectoryEntry à côté, codez le nouvel objet DirectoryEntry qui renvoie au résultat et utilisez les informations de connexion de l'administrateur dans la connexion.

Créer un utilisateur authentifié

Pour créer un utilisateur authentifié pour Active Directory, nous devons transmettre la chaîne de chemin LDAP valide au constructeur de la classe DirectoryEntry, elle suit le format LDAP://Doamin_name. Voyons la méthode suivante,

private bool AuthenticateUser(string domain_name, string user_name, string password)
{
bool result = false;
try
{
DirectoryEntry obj_de = new DirectoryEntry("LDAP://" + domainName, userName, password);
DirectorySearcher obj_dsearch = new DirectorySearcher(obj_de);
SearchResult _sResult = null;
sResult = obj_dsearch.FindOne();
result = true;
}
catch
{
result = false;
}
return result;
}
Copier après la connexion

Modifier les détails de l'utilisateur dans Active Directory en C#

Modifier les propriétés d'un objet Active Directory en C# est tout simplement simple en C#, d'abord accéder aux champs de propriété DirectoryEntry et modifier les valeurs si nécessaire avant cela pour vérifier s'il est nul ou non, puis enfin appeler la fonction ComminChanges pour exécuter et enregistrer les modifications effectuées. Voyons le code ci-dessous qui montre qu'il modifie la propriété du nom de l'utilisateur,

DirectoryEntry obj_de = Reterieve_User ("smith.rio");
if (obj_de!= null)
{
if (obj_de.Properties["displayName"] != null && obj_de.Properties["displayName"].Value != null)
{
de.Properties["displayName"].Value = "Smith, Rio (Welcome)";
de.CommitChanges();
}
}
Copier après la connexion

The above code describes the CommitChanges(), which will save the changes made in the Active Directory. The most important thing is that whatever changes are made will not be immediately visible in the applications of Active Directory like users of Active Directory and computers in the control panel it takes around 5-30 minutes to visible during changes because it needs to synchronize over the servers all through the network.

Querying Multiple Users in Active Directory with C# ASP .NET

The code above explained was to query the single DirectoryEntry object, whereas if we required for the list of objects we need to use the type SearchResultCollection joined with obj_deSearch, to search out all the things instead of finding one,

SearchResultCollection findUsers = retrieve_allUsers();
if (findUsers!= null && findUsers.Count > 0)
{
foreach (SearchResult getUser in findUsers)
{
DirectoryEntry obj_de = getUser.GetDirectoryEntry();
}
}
Copier après la connexion

Conclusion

In this article, I have explained about the Active Directory and how to retrieve details of users, system usage, groups, and also to authenticate the user. By using some classes, we can easily retrieve the details from the active directory (AD) database. Active Directory with C# is a foremost tool for enterprise networks and for businesses. When designing with web applications which suit for desktop applications to the web to make powerful organizations.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Active Directory avec C# Active Directory avec C# Sep 03, 2024 pm 03:33 PM

Guide d'Active Directory avec C#. Nous discutons ici de l'introduction et du fonctionnement d'Active Directory en C# ainsi que de la syntaxe et de l'exemple.

Générateur de nombres aléatoires en C# Générateur de nombres aléatoires en C# Sep 03, 2024 pm 03:34 PM

Guide du générateur de nombres aléatoires en C#. Nous discutons ici du fonctionnement du générateur de nombres aléatoires, du concept de nombres pseudo-aléatoires et sécurisés.

Sérialisation C# Sérialisation C# Sep 03, 2024 pm 03:30 PM

Guide de sérialisation C#. Nous discutons ici de l'introduction, des étapes de l'objet de sérialisation C#, du fonctionnement et de l'exemple respectivement.

Vue Grille de données C# Vue Grille de données C# Sep 03, 2024 pm 03:32 PM

Guide de la vue Grille de données C#. Nous discutons ici des exemples de la façon dont une vue de grille de données peut être chargée et exportée à partir de la base de données SQL ou d'un fichier Excel.

Nombres premiers en C# Nombres premiers en C# Sep 03, 2024 pm 03:35 PM

Guide des nombres premiers en C#. Nous discutons ici de l'introduction et des exemples de nombres premiers en c# ainsi que de l'implémentation du code.

Modèles en C# Modèles en C# Sep 03, 2024 pm 03:33 PM

Guide des modèles en C#. Nous discutons ici de l'introduction et des 3 principaux types de modèles en C# ainsi que de ses exemples et de l'implémentation du code.

Factorielle en C# Factorielle en C# Sep 03, 2024 pm 03:34 PM

Guide de Factorial en C#. Nous discutons ici de l'introduction de factorial en c# ainsi que de différents exemples et de l'implémentation du code.

La différence entre le multithreading et le C # asynchrone La différence entre le multithreading et le C # asynchrone Apr 03, 2025 pm 02:57 PM

La différence entre le multithreading et l'asynchrone est que le multithreading exécute plusieurs threads en même temps, tandis que les opérations effectuent de manière asynchrone sans bloquer le thread actuel. Le multithreading est utilisé pour les tâches à forte intensité de calcul, tandis que de manière asynchrone est utilisée pour l'interaction utilisateur. L'avantage du multi-threading est d'améliorer les performances informatiques, tandis que l'avantage des asynchrones est de ne pas bloquer les threads d'interface utilisateur. Le choix du multithreading ou asynchrone dépend de la nature de la tâche: les tâches à forte intensité de calcul utilisent le multithreading, les tâches qui interagissent avec les ressources externes et doivent maintenir la réactivité de l'interface utilisateur à utiliser asynchrone.

See all articles