Question : Obtention de l'adhésion de groupe de LDAP


J'emploie le code ci-dessous pour découvrir qu'un utilisateur est une partie du groupe d'admin. Je dois authentifier deux types d'utilisateurs un est membre et revendeur. Cela fonctionne avec le domaine de membre et ne fonctionne pas avec le domaine de revendeur et ne renvoie pas une valeur.  Peut quelqu'un aider en ce code.


Y a il une manière de faire ceci de la manière alternative d'authentifier des utilisateurs en trouvant un certain groupe de memberof.
1 :
2 :
3 :
4 :
5 :
6 :
7 :
8 :
9 :
10 :
11 :
12 :
13 :
14 :
15 :
16 :
17 :
18 :
19 :
20 :
21 :
22 :
23 :
24 :
25 :
26 :
27 :
28 :
29 :
30 :
31 :
32 :
33 :
corde publique GetGroups ()
        {
            Recherche de DirectorySearcher = nouveau DirectorySearcher (_path) ;
            recherche. Filtre = « (cn= » + _filterAttribute + ") « ;
            search.PropertiesToLoad.Add (« memberOf ») ;
            groupNames de StringBuilder = nouveau StringBuilder () ;

            essai
            {
                Résultat de SearchResult = search.FindOne () ;
                propertyCount = résultat d'international. Propriétés [« memberOf »]. Compte ;
                corde DN ;
                equalsIndex d'international, commaIndex ;

                pour (propertyCounter d'international = 0 ; propertyCounter  < propertyCount="">
           

Réponse : Obtention de l'adhésion de groupe de LDAP


Ok d'Ahh que je vois.

Ainsi vous êtes auth de l'essai LDAP ici :

            Entrée de DirectoryEntry = nouveau DirectoryEntry (_path, domainAndUsername, pwd) ;

Et c'est très bien, vous établissent le raccordement authentifié. Mais d'autre part vous jugez et construisez le chercheur pour des groupes comme ceci :

            Recherche de DirectorySearcher = nouveau DirectorySearcher (_path) ;

Vous avez laissé tomber le raccordement authentifié et maintenant vous essayez de passer dans le _path, créant un deuxième raccordement unauthenticated, au lieu de cela un DirectoryEntry authentifié.

Dans le meilleur des cas vous stockeriez la « entrée » et emploieriez cela.

par exemple.

namespace FormsAuth
{
    classe publique LdapAuthentication
    {
        DirectoryEntry public _entry ;

       

        bool public IsAuthenticated (domaine de corde, username de corde, pwd de corde)
        {
               
 
                //Update le nouveau chemin à l'utilisateur dans l'annuaire.
                _filterAttribute = résultat (de corde). Propriétés [« NC »] [0] ;
                _entry = result.GetDirectoryEntry () ;
         }


Alors si vous êtes authentifié vous pouvez tirer l'attribut de memberOf du DirectoryEntry plutôt que recherchant encore dans GetGroups :

// I pensent… non examiné
Ficeler [] le memberOf = _entry. Propriétés [« memberof »]

Chris
Autres solutions  
  •  MS Excel 2007 et pdf - l'exportation vers le pdf prend de longues heures !
  •  Dans le Perl, comment j'ajoute une valeur à la liste, puis le contrôle pour voir si la valeur existent avant d'ajouter une nouvelle valeur
  •  Comment fais j'initialiser de la HP BL460c G6 de san et de la HP XP 240000
  •  Comment fais j'employer une clef de permis de volume sur un ordinateur de HP avec du CD de restauration
  •  Emplacement primaire de deux SCCM dans l'annuaire actif
  •  L'initiateur et la HP D2D de l'iSCSI R2 du serveur 2008 de Windows GERCENT l'issue
  •  Stocker le dossier dans le mysql using connector.net et le champ de goutte
  •  Carte vidéo d'USB - bit 32 sur le matériel travaillant au niveau du bit 64 ?
  •  asp.net que j'essaye de convertir une forme de HTML en forme d'aspx ou ? ce qui jamais. Aide du besoin sur la façon dont à à elle.
  •  Winzip 12 issues de secours du travail ?
  •  
    programming4us programming4us