Création d'Active Directory des noms d'utilisateur pour l'accès LDAP
-
27-10-2019 - |
Question
Je suis un newbie à LDAP et annuaires Active Directory.
Je dois construire un répertoire actif des utilisateurs qui sont autorisés à accéder à un conputer particulier. Lorsque l'utilisateur entre le nom d'utilisateur et mot de passe dans une interface Web (créée en C #), il est envoyé dans le répertoire actif via requête LDAP dans le répertoire actif. AD retourne l'adresse e-mail des utilisateurs si la connexion est réussie.
Est-il possible d'installer un Active Directory pour obtenir le scénario ci-dessus au niveau local? J'utilise Windows 7 Édition Intégrale. J'ai installé ADAM pour l'accès LDAP.
Cordialement,
John.
La solution
Puisque vous êtes sur .NET 3.5 et, vous devriez vérifier l'espace de noms System.DirectoryServices.AccountManagement
(S.DS.AM). À lire ici:
Gestion répertoire directeurs de sécurité dans le .NET Framework 3.5
En gros, vous pouvez définir un contexte de domaine et de trouver facilement les utilisateurs et / ou groupes AD:
// set up domain context
PrincipalContext ctx = new PrincipalContext(ContextType.Domain);
// validate username/password combo
if (ctx.ValidateCredentials(username, password))
{
// if valid - find user
UserPrincipal user = UserPrincipal.FindByIdentity(ctx, username);
if (user != null)
{
return user.EmailAddress;
}
}
Le nouveau S.DS.AM rend vraiment facile de jouer avec les utilisateurs et les groupes AD!
Pour ADAM (ou AD LDS comme on l'appelle aujourd'hui), vous pouvez utiliser
PrincipalContext ctx = new PrincipalContext(ContextType.ApplicationDirectory);
pour établir un contexte avec votre répertoire ADAM - pas sûr, mais vous avez sans doute de fournir une certaine forme d'informations supplémentaires pour savoir ce répertoire d'applications à utiliser (je ne l'ai jamais joué avec ceci sur ADAM). Et aussi: Je ne sais pas si vous pouvez valider les informations d'identification contre un magasin ADAM .... vous aurez juste à voir et à essayer