2009-05-14 18 views
33

Mi servicio web ASP.Net no se puede ejecutar porque el grupo de aplicaciones no puede iniciarse debido a la crisis de identidad que está experimentando.Error de ASP.Net: "La identidad del grupo de aplicaciones no es válida"

El usuario que estoy usando en el grupo de aplicaciones es un usuario de dominio, es un administrador local, está en IIS_WPG, le he dado "actuar como parte de los permisos del sistema operativo" - nada. Nada. No puede iniciar el grupo de aplicaciones cada vez.

Generalmente, lo que falta es agregar el usuario a IIS_WPG, pero creo que hay algo más.

cosas que he intentado:

  • Adición de usuarios a IIS_WPG
  • Adición de usuarios al grupo de administración local y la adición de la "Actuar como parte del sistema operativo" correctas.
  • aspnet_regiis -ga
  • reinicio ...
  • contraseña cuadros
  • recreado el grupo de aplicación y asignar solamente mi solicitud para que

P. S. Si utilizo el usuario del servicio de red, todo funciona, solo falla mi usuario "personalizado". Iniciar sesión (interactivamente) con este usuario funciona.

Editar:

La solución es como se describe en the accepted answer (añadiendo el "Iniciar sesión como servicio" derecho al usuario la identidad del grupo de aplicaciones).

acabo añadiremos, para futura referencia, para aquellos encontrarse con el siguiente mensaje al intentar añadir el "Iniciar sesión como un servicio" derecho a un usuario de dominio:

"This setting is not compatible with computers running Windows 2000 Service Pack 1 or earlier...."

saber que esto tiene nada que ver con Windows 2000 y es solo la política de grupo del dominio lo que le impide asignar este derecho al usuario.

+0

¿qué informa exactamente el registro de eventos? – AviD

+1

Assaf: si está creando cuentas personalizadas para usar como identidades de grupos de aplicaciones, debe usar aspnet_regiis -ga . – Kev

+0

Kev - Lo intenté y no ayudó –

Respuesta

45

¿Ha activado "Iniciar sesión como servicio" para la cuenta?

Inicio -> Panel de control -> Herramientas administrativas -> Directiva de seguridad local -> Directivas locales -> Asignación de derechos de usuario -> Iniciar sesión como un servicio

(asegúrese de que su cuenta está en esta lista, directa o indirectamente ; También se sugirió que debe establecer: Acceda a esta computadora desde la red; Denegar el inicio de sesión local; Inicie sesión como un trabajo por lotes)

Además, asegúrese de que la cuenta tenga "Leer & Ejecutar", "Mostrar contenido de la carpeta "y" Leer "el acceso al sistema de archivos que respalda el sitio web/aplicación.

+0

Intenté configurar Log On as Service, pero no puedo. El complemento de MMC dice: "esta configuración no es compatible con computadoras que ejecutan Windows 2000 Service Pack 1 o anterior ..." Por supuesto, estoy ejecutando XP64 con SP3. Esto es muy sospechoso. ¿Podría ser un mensaje de error incorrecto que en realidad se deba a una política de grupo que me impide cambiar este derecho? –

+0

No he visto ese mensaje; Honestamente, no lo sé –

+0

http://community.spiceworks.com/topic/29356 –

0

Lo que está sucediendo es que probablemente ejecute su aplicación dentro de un grupo que ejecuta aplicaciones utilizando una versión diferente de .NET framework. Asegúrese de que todas sus aplicaciones dentro de ese grupo estén ejecutando la misma versión. Si esas aplicaciones deben ejecutarse en una versión diferente a esta, cree un nuevo conjunto y agréguele su aplicación.

+0

buena idea. Verifico ... –

+0

No, no es así. Y realmente es poco probable que sea la causa porque la advertencia en el Registro de sucesos sobre el problema de identidad ocurre mucho antes de intentar siquiera ver la página web (cargando así la DLL ...) –

0

Sé que esto es simple, pero ¿has marcado que la contraseña es correcta?

+2

sí, y la reinicié y la reintenté. incluso intentó ejecutar calc con runas con él ... (que funciona) –

21

Intente ejecutar el siguiente comando en la carpeta C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727:

aspnet_regiis -ga <your_app_pool_user> 

Para obtener más información sobre la configuración de una cuenta de usuario para su uso como una identidad de grupo de aplicaciones consulte el siguiente artículo:

How To: Create a Service Account for an ASP.NET 2.0 Application (MSDN)

+0

la línea de comandos no ayudó. –

+1

Si está creando cuentas personalizadas para usar como identidades de grupo de aplicaciones, siempre debe ejecutar ese comando de todos modos. Configura todas las asignaciones correctas de derechos de usuario, permisos de registro, NTFS permanentes, etc. – Kev

+1

Esto funcionó para mí. Probablemente debería tener en cuenta para ejecutar eso fuera de la carpeta de la versión de marco apropiado ... – CodeRedick

0

Habiendo tenido este problema antes y no ser capaz de rastrear el motivo, simpatizo!Algunos consejos que pueden ayudar:

  • comprobar la contraseña es correcta (lo siento que decir)
  • uso de un nuevo grupo de aplicación en el que ningún otro sitio web está funcionando
  • Asegúrese de que ha ejecutado aspnet_regiis -ga para establecer los permisos necesarios

Si todo lo demás falla: - Detener la aplicación y eliminar el grupo de aplicación - eliminar el usuario - Vuelva a crear el usuario - Ejecutar aspnet_regiis -ga - Configurar un nuevo grupo de aplicaciones que se ejecuta bajo este usuario - Ejecutar el sitio bajo este grupo ¡Eso junto con copiar y pegar la contraseña compleja que estaba usando funcionó para mí!

+1

He hecho todo esto, excepto eliminar al usuario (que es un usuario de dominio y funciona bien en muchas otras máquinas, por lo que no voy a eliminarlo). –

1

Asegúrate de que haya una carpeta llamada c: \ inetpub \ temp \ apppools. Si no, créelo.

+0

No tenía esa carpeta. Creado uno. Todavía no funciona (identidad inválida). ¿Hay un paso extra? –

0

¿Tiene una política de grupo alguna que está sacando la cuenta del grupo iis_wpg? Tenemos este problema (o uno similar) con frecuencia cuando, por cualquier razón, un proceso de trabajo o un servicio necesita ejecutarse bajo una cuenta personalizada.

+0

No, la cuenta está en WPG. –

1

Asegúrese de que la cuenta de usuario que intenta acceder al grupo de aplicaciones es miembro del grupo IIS_USRS en AD.

0

La cuenta de usuario del grupo de aplicaciones podría estar bloqueada.

0

Otra forma en que esto puede suceder es si tiene scripts CGI. De forma predeterminada, los scripts CGI se ejecutan como el usuario de Windows que accede al sitio web. Con el fin de ejecutar las secuencias de comandos CGI en una cuenta específica, la cuenta que necesita un paso adicional:

IIS 7+

Ir a la sección de CGI en la configuración de su sitio web en inetmgr.exe. Establezca la suplantación en falso.

IIS 6

ejecutar estos comandos como administrador:

cd \inetpub\adminscripts 
cscript.exe Adsutil.vbs SET W3Svc/CreateProcessAsUser false 

Siguiente paso: obtener su departamento de TI para actualizar todas las máquinas WS2003 ...

0

Después de seguir todas las otras sugerencias:

  1. verificación "Iniciar sesión como servicio" y "Iniciar sesión como proceso por lotes" permisos
  2. Compruebe los permisos de la carpeta C: \ Windows \ system32 \ inetsrv, etc.
  3. En compruebe los permisos de la metabase del explorador para el grupo IIS_WPG

Recuerde que debe reiniciar el servicio de administración de IIS!

0

Otra cosa menor que vale la pena mencionar es que, si se trata de una nueva cuenta de usuario creada por un administrador, una política predeterminada podría aplicarse como 'cambiar su contraseña en el primer inicio de sesión'. Si ese es el caso y ese inicio de sesión aún no ha sucedido, esto también bloqueará efectivamente la cuenta de usuario para que no ejecute su servicio.

Esto no se aplica al caso del OP ya que menciona que puede iniciar sesión de forma interactiva con la cuenta, pero me encontré con esto hoy y alguien más podría hacerlo.

0

En mi caso, el problema era que estaba tratando de usar una cuenta de dominio mientras el controlador de dominio tenía un problema con mi máquina. Acababa de crear una nueva VM con una versión más nueva de Windows (Windows 10) y le había pedido al administrador del dominio que la agregara al dominio, pero mantuve el mismo nombre de host que en mi otra máquina.

Además, en el Visor de eventos encontré mensajes de error relacionados con el controlador de dominio y eso me dio una pista.

Tuve que quitar la máquina del dominio y volver a agregarla, y se solucionó el problema.

0

Publicar una respuesta simple para completar porque recibía el mismo error, pero lo que lo solucionó fue incluir el dominio con el nombre de usuario al establecer la identidad. El usuario era un usuario de dominio válido y un usuario para el servidor y lo agregué al grupo IIS_ manualmente pero no a los dados hasta que intenté agregar el dominio como un prefijo, p. "us \ svc-myAccount".

Cuestiones relacionadas