Articles of directoryservices

UserPrincipal.FindByIdentity genera un’eccezione: non esiste tale object sul server

Sto lottando con uno scenario semplice: vorrei recuperare il mio account da Active Directory usando il nome utente e la password che uso per accedere al mio computer. Il mio primo problema è stato che stavo ricevendo un riferimento dal server durante il tentativo di chiamare UserPrincipal.FindByIdentity. Ho pensato che fosse un po ‘strano, dato […]

Errore C # Active Directory PrincipalContext / UserPrincipal.IsMemberOf

Quindi ho una domanda che sinceramente non sono abbastanza sicuro di come chiedere. Essenzialmente ho un po ‘di codice che funziona in modo fantastico sul mio computer locale quando lo eseguo. Una volta che lo pubblico sul nostro web server di sviluppo, fallisce. Non sono sicuro che si tratti di un problema di installazione di […]

Utilizzo di StartTLS con LDAP da System.DirectoryServices

Sto provando a collegarmi a un server LDAP che richiede StartTLS, ma non ho fortuna: ogni volta che utilizzo SessionOptions.StartTransportLayerSecurity (..) o settino SessionOptions.SecureSocketLayer su true, ottengo delle eccezioni. Ecco il codice che sto usando: using (var connection = new LdapConnection(new LdapDirectoryIdentifier(config.LdapServer, config.Port, false, false))) { connection.SessionOptions.ProtocolVersion = 3; connection.Credential = new NetworkCredential(config.BindDN, config.BindPassword); connection.SessionOptions.VerifyServerCertificate […]

Errore nel metodo UserPrincipal.GetAuthorizationGroups ()

Sto riscontrando un problema utilizzando il metodo GetAuthorizationGroups della class UserPrincipal in un’applicazione web. Utilizzando il seguente codice, sto ricevendo “Durante il tentativo di recuperare i gruppi di authorization, si è verificato un errore (5)” PrincipalContext context = new PrincipalContext(ContextType.Domain, null, “DC=MyCompany,DC=COM”, “username”, “password”); UserPrincipal p = UserPrincipal.FindByIdentity(context, IdentityType.SamAccountName, “joe.blogs”); var groups = p.GetAuthorizationGroups(); Credo […]

System.DirectoryServices non è riconosciuto nello spazio dei nomi ‘System’

Sto cercando di utilizzare System.DirectoryServices in un progetto di sito web e sto ricevendo questo errore: Il nome del tipo o spazio dei nomi ‘DirectoryServices’ non esiste nello spazio dei nomi ‘Sistema’ (ti manca un riferimento all’assembly?) Il mio progetto ha un riferimento a System.DirectoryServices in web.config : E ho using System.DirectoryServices nei file in […]

Come ottenere il nome dominio NETBIOS utilizzando il nome FQDN in un ambiente complesso

Ottenere il nome di dominio NETBIOS da un nome di dominio di Active Directory completamente qualificato a volte è un compito noioso. Ho trovato una buona risposta qui . In un ambiente con più foreste questo approccio tuttavia non funzionerà se il PC non si trova nella foresta che si sta interrogando. Questo perché LDAP://RootDSE […]

Creare un pool di applicazioni che utilizza .NET 4.0

Io uso il seguente codice per creare un pool di app: var metabasePath = string.Format(@”IIS://{0}/W3SVC/AppPools”, serverName); DirectoryEntry newpool; DirectoryEntry apppools = new DirectoryEntry(metabasePath); newpool = apppools.Children.Add(appPoolName, “IIsApplicationPool”); newpool.CommitChanges(); Come si specifica che il pool di applicazioni deve utilizzare .NET Framework 4.0?

Differenza tra PrincipalSearcher e DirectorySearcher

Vedo esempi di Active Directory che usano PrincipalSearcher e altri esempi che fanno la stessa cosa ma usano DirectorySearcher . Qual è la differenza tra questi due esempi? Esempio utilizzando PrincipalSearcher PrincipalContext context = new PrincipalContext(ContextType.Domain); PrincipalSearcher search = new PrincipalSearcher(new UserPrincipal(context)); foreach( UserPrincipal user in search.FindAll() ) { if( null != user ) Console.WriteLine(user.DistinguishedName); […]

DirectoryServices UserPrincipal.SetPassword ignora la politica della password (cronologia password)

Come suggerisce il titolo, sto riscontrando un problema riguardante il rispetto della politica della password quando si imposta una password utente, in particolare, la restrizione della cronologia delle password. Lo scenario è una reimpostazione della password utente, quando l’utente non conosce la sua password corrente. Sto usando il seguente per realizzare questo: using (PrincipalContext context […]

Come cercare il catalogo globale (intera foresta) usando PrincipalContext

myUserList AppUsers = new myUserList(); using (PrincipalContext pcxt = new PrincipalContext(ContextType.Domain, domainName)) { UserPrincipal User = new UserPrincipal(pcxt); User.EmailAddress = emailString; PrincipalSearcher srch = new PrincipalSearcher(User); foreach (var principal in srch.FindAll()) { var p = (UserPrincipal)principal; myUserRow User = AppUsers.NewUsersRow(); User.FirstName = p.GivenName; User.LastName = p.Surname; User.Email = p.EmailAddress; AppUsers.AddUsersRow(User); } } Ho un codice […]