Pregunta Cómo asignar permisos a la cuenta ApplicationPoolIdentity


En IIS 7 en Windows Server 2008, los grupos de aplicaciones se pueden ejecutar como la cuenta "ApplicationPoolIdentity" en lugar de la cuenta de NetworkService.

¿Cómo asigno permisos a esta cuenta "ApplicationPoolIdentity"? No aparece como usuario local en la máquina. No aparece como un grupo en ninguna parte. Nada remotamente parecido aparece en ninguna parte. Cuando busco usuarios locales, grupos y cuentas integradas, no aparece en la lista, ni aparece nada similar en la lista. Que esta pasando?

No soy el único con este problema: ver Problemas con ApplicationPoolIdentity en IIS 7.5 + Windows 7 para un ejemplo.


"Desafortunadamente, esta es una limitación del selector de objetos en Windows Server 2008 / Windows Vista. Como muchas personas ya lo han descubierto, aún puede manipular la ACL para la identidad del grupo de aplicaciones usando herramientas de línea de comandos como icacls. "


252
2017-11-03 21:52


origen




Respuestas:


Actualizar: La pregunta original era para Windows Server 2008, pero la solución es más fácil para Windows Server 2008 R2 y Windows Server 2012 (y Windows 7 y 8). Puede agregar el usuario a través de la interfaz de usuario de NTFS escribiéndolo directamente. El nombre está en el formato de IIS APPPOOL \ {nombre del grupo de aplicaciones}. Por ejemplo: IIS APPPOOL \ DefaultAppPool.

IIS APPPOOL\{app pool name}

Nota: De acuerdo con los comentarios a continuación, hay dos cosas a tener en cuenta:

  • Ingrese la cadena directamente en "Seleccionar usuario o grupo" y no en el campo de búsqueda.
  • En un entorno de dominio Primero debe establecer la ubicación en su computadora local.

Referencia al artículo de Microsoft Docs: Identidades del grupo de aplicaciones> Asegurar recursos

Respuesta original: (para Windows Server 2008) Esta es una gran característica, pero como mencionó, todavía no está completamente implementado. Puede agregar la identidad del grupo de aplicaciones desde el símbolo del sistema con algo como icacls, luego puede administrarlo desde la GUI. Por ejemplo, ejecute algo como esto desde el símbolo del sistema:

icacls c:\inetpub\wwwroot /grant "IIS APPPOOL\DefaultAppPool":(OI)(CI)(RX)

Luego, en el Explorador de Windows, vaya a la carpeta wwwroot y edite los permisos de seguridad. Verá lo que parece un grupo (el icono del grupo) llamado DefaultAppPool. Ahora puede editar los permisos.

Sin embargo, no es necesario utilizar esto en absoluto. Es un bono que puedes usar si quieres. Puede utilizar la forma antigua de crear un usuario personalizado por grupo de aplicaciones y asignar el usuario personalizado al disco. Eso tiene soporte completo de UI.

Este método de inyección SID es bueno porque le permite usar un solo usuario pero aislar completamente cada sitio sin tener que crear usuarios únicos para cada grupo de aplicaciones. Bastante impresionante, y será aún mejor con el soporte de UI.

Nota: Si no puede encontrar el usuario del grupo de aplicaciones, verifique si el servicio de Windows denominado Application Helper Service se está ejecutando. Es el servicio que asigna los usuarios del grupo de aplicaciones a las cuentas de Windows.


281
2017-11-04 03:07



Es una especie de extraña bestia ya que no es como un grupo donde el usuario vive en un grupo, y no es como una cuenta de computadora vs. una cuenta de usuario que son completamente diferentes entre sí. La cuenta del grupo de aplicaciones "se superpone" al usuario de identidad del grupo de aplicaciones. Por ejemplo, puede tener 5 grupos de aplicaciones usando el Servicio de red y otros 5 usando cuentas personalizadas, pero son 10 cuentas diferentes del grupo de aplicaciones administradas por el sistema. Las ventajas se notan con la carpeta c: \ inetpub \ temp \ appPools, donde se administra automáticamente y bloquea el sistema limpiamente. IIS los aprovecha bien. Nuestro uso en carpetas es opcional. - Scott Forsyth - MVP
Tenga en cuenta que si ingresa "IIS APPPOOL \ DefaultAppPool" directamente en "Seleccionar usuario o grupo" (en lugar de buscarlo) al editar permisos, se reconocerá correctamente (se probará en Win7 x64 y Win2k8 R2 x64). - Milan Gardian
Tienes razón para Win7 y Win2k8 R2. No se implementó en Win2k8 RTM, pero está en R2. - Scott Forsyth - MVP
Finalmente obtuve esto: si escribes el nombre del grupo de aplicaciones directamente como @Milan Gardian dice arriba y Cambia el campo de ubicación a la máquina local, entonces funciona. - Ciaran Bruen
Muchas gracias por las 'dos ​​cosas a tener en cuenta'. Estaba tropezando con ambos, y esta era una explicación clara y simple de los problemas y cómo lograr lo que necesitaba. Es una pena que ninguna de la documentación de MSDN haya sido tan clara. - Ian Grainger


Debe asegurarse de que el campo 'Desde esta ubicación' esté configurado en la máquina local y no en el dominio.

Tuve el mismo problema y una vez que lo cambié funcionó bien.


21
2017-08-01 13:29





Realmente deberías estar creando grupos por "rol" y asignando accesos a ese grupo en el sistema de archivos. Luego, agregue el grupo de aplicaciones a los grupos específicos de rol según sea necesario. De esta manera, incluso si elimina el grupo de aplicaciones más tarde (y el usuario virtual se va maricón), no tiene que preocuparse por rehacer todos los permisos, simplemente agrega el grupo de aplicaciones de reemplazo al grupo existente.


4
2018-06-14 17:42





Después de leer @Scott Forsyth - Respuesta MVP, intenté reiniciar el servicio Application Host Helper Service. Eso me solucionó el problema.


3
2017-12-04 11:05





Estaba ejecutando WS8 R2 y no pude agregar IIS APPPOOL\DefaultAppPool a través del Explorador de Windows. La única forma en que funcionó fue a través de la línea de comando:

cacls [FILE PATH] / T / E / G "IIS APPPOOL \ DefaultAppPool": C


0
2018-03-19 14:46



Curiosamente, tuve que hacer "IIS AppPool \ DefaultAppPool" para que se aceptara. Observe el caso mixto: todo en mayúsculas, como hice la primera vez, no fue aceptado desde la GUI. - Jeff McJunkin


Si esta pregunta es acerca de cómo ejecutar _sp_send_dbmail en la base de datos msdb (usando el procedimiento almacenado de correo electrónico de la base de datos de envío SQL en msdb), aquí hay algunos problemas. Agregue el nombre de usuario de la aplicación .net de su base de datos (que se define en su cadena de conexión en su aplicación .net) al usuario msdb con la membresía de rol "DatabaseMailUserRole"


0
2017-07-25 00:50