Acerca de las cuentas de inicio de sesión de servicio

Cuando se inicia un servicio basado en Win32, inicia sesión en el equipo local. Puede iniciar sesión como:

  • Una cuenta de usuario local o de dominio.
  • La cuenta LocalSystem.

La cuenta de inicio de sesión determina la identidad de seguridad del servicio en tiempo de ejecución, es decir, el contexto de seguridad principal del servicio. El contexto de seguridad determina la capacidad del servicio para acceder a los recursos locales y de red. Por ejemplo, un servicio que se ejecuta en el contexto de seguridad de una cuenta de usuario local no puede acceder a los recursos de red. Por el contrario, un servicio que se ejecuta en el contexto de seguridad de la cuenta LocalSystem en un controlador de dominio (DC) de Windows 2000, tendría acceso sin restricciones al controlador de dominio. Para más información y una explicación de las ventajas y limitaciones entre las cuentas de usuario y LocalSystem, consulte Contextos de seguridad y Servicios de dominio de Active Directory.

En última instancia, los administradores del sistema donde se instala el servicio tienen control sobre la cuenta de inicio de sesión del servicio. Por motivos de seguridad, es posible que algunos administradores no le permitan instalar el servicio en la cuenta localSystem. El servicio debe poder ejecutarse en una cuenta de usuario de dominio. Como programador, puede ejercer cierto control sobre la cuenta de inicio de sesión del servicio. El instalador de servicio especifica la cuenta de inicio de sesión del servicio cuando llama a la función CreateService para instalar el servicio en un equipo host. El instalador puede sugerir una cuenta de inicio de sesión predeterminada, pero debe permitir que un administrador especifique la cuenta real.

El instalador también puede realizar las siguientes tareas relacionadas con la cuenta de inicio de sesión de su servicio:

  • Instalación. Si instala el servicio para que se ejecute en una cuenta de usuario, la cuenta debe existir antes de llamar a CreateService. Puede usar una cuenta existente o crear una como parte del instalador del equipo host. Para obtener más información, consulte Configuración de la cuenta de usuario de un servicio.
  • Autenticación. Si desea que los clientes usen la autenticación mutua kerberos, registre los SPN en la cuenta de inicio de sesión del servicio. Si el servicio se ejecuta en la cuenta LocalSystem, la cuenta de inicio de sesión del servicio es la cuenta de equipo del equipo host. Para obtener más información, consulte Service Principal Names (Nombres de entidad de seguridad de servicio).
  • Conceder acceso. Asegúrese de que el servicio en tiempo de ejecución tenga los derechos de acceso y los privilegios que requiere para realizar sus tareas. Esto puede requerir establecer entradas de control de acceso (ACE) en los descriptores de seguridad de varios recursos, que son objetos de directorio, recursos compartidos de archivos, etc., para permitir los derechos de acceso necesarios a la cuenta de usuario o equipo. Para obtener más información, vea Conceder derechos de acceso a la cuenta de inicio de sesión de servicio.
  • Establezca privilegios. Asigne privilegios a la cuenta de inicio de sesión especificada, como el derecho a iniciar sesión como servicio en el equipo host. Para obtener más información, vea Conceder inicio de sesión como servicio directamente en el equipo host.

Una vez instalado un servicio, hay tareas de mantenimiento relacionadas con la cuenta de inicio de sesión de servicio. Para obtener más información, vea Tareas de mantenimiento de cuentas de inicio de sesión.

  • Mantenimiento de contraseñas. Para un servicio que se ejecuta en una cuenta de usuario, debe cambiar periódicamente la contraseña y mantener la contraseña sincronizada con la contraseña usada por uno o varios administradores de control de servicios locales para iniciar el servicio.
  • Mantenimiento de SPN. Si cambia una cuenta de inicio de sesión de servicio, quite los SPN registrados en la cuenta anterior y regístrelos en la nueva cuenta. Tenga en cuenta que cuando se instala un servicio, un administrador de dominio puede cambiar la cuenta en la que se ejecuta el servicio; use funciones Win32 o la interfaz de usuario de la herramienta administrativa Administración de equipos.
  • Mantenimiento ace. Si cambia una cuenta de inicio de sesión de servicio, debe actualizar los ASE y las pertenencias a grupos para asegurarse de que el servicio todavía puede acceder a los recursos necesarios.