2012-06-22 31 views
9

Estoy usando ASP.Net 4.0 MVC para consultar el directorio activo. Estoy tratando de obtener una lista de membresías de un grupo de usuarios y que iterar a través de ellos. Estoy teniendo un problema extraño. Para obtener los grupos que estaba usando:UserPrincipal.GetGroups vs. UserPrincipal.GetAuthorizationGroups?

PrincipalSearchResult<Principal> groups = up.GetGroups(); 

que funcionó muy bien en localhost pero devuelve un conjunto vacío cuando se mueve a IIS6. Así que traté de usar esto:

PrincipalSearchResult<Principal> groups = up.GetAuthorizationGroups(); 

Lo que funcionó muy bien en IIS6 pero devuelve un conjunto vacío en localhost. ¿Cuál es la diferencia entre estos 2 métodos? ¿Por qué puedo usar uno en IIS6 y no en localhost? ¿Por qué puedo usar el otro en localhost y no en IIS6?

Respuesta

6

Supongo que GetAuthorizationGroups() llama a tokenGroups en AD. Para leer eso, su cuenta de servicio (o cuenta de máquina de IIS si el servicio de red) debe estar en el grupo de acceso de autorización de Windows en AD.

Cuestiones relacionadas