La solución más sencilla sería refactorizar las aplicaciones cuando sea posible, pero si no puede editar la fuente, existen algunas estrategias:
Soluciones de gestión de cuentas / contraseñas "Middleman".
En esta clase de soluciones, la administración de la contraseña real se delega a otro servicio. Las mejores soluciones podrán iniciar sesión en una aplicación y cambiar la contraseña; luego, la aplicación / servicio cambia la contraseña antes de que cada usuario inicie sesión y se modifique cuando el usuario cierre la sesión o el tiempo expire. De esta manera, se genera una contraseña para cada individuo y no tiene ningún valor después de la sesión porque ha cambiado. Si desea buscar herramientas, busque la clase de " Privileged Identity Management " (PIM) herramientas.
Similar a una solución PIM, es una administración de acceso privilegiado (PAM). A veces, estas herramientas se consideran similares o un producto puede hacer ambas cosas, pero mi definición de PAM es donde la herramienta proporciona el acceso para usted. Este artículo de Thycotic ofrece un breve vistazo a la terminología (advertencia de un vendedor)
La mayoría de estos servicios están diseñados para el nivel de SO y no siempre son fáciles de configurar con algún tipo de servicio de nube / SaaS que tenga un flujo de trabajo o 2FA.
Solución de Jump Box
Es posible que desee restringir el acceso para autenticar el servicio en un host específico. Entonces tiene una autenticación y un inicio de sesión sólidos en ese host (tal vez incluso registre la pantalla). Esto puede ser suficiente para sus necesidades dependiendo de las aplicaciones y si solo necesita hacer correlaciones simples con quién estaba en el cuadro de salto a los registros de la aplicación. Por lo menos puedes grabar toda la actividad. Algunas soluciones de jumpbox + PAM pueden ofrecer esto a través de una interfaz web.
La debilidad aquí es que no está poniendo el control sobre la aplicación, sino a un nivel inferior.
Proxy la autenticación
Si está trabajando con una aplicación de nube popular, puede encontrar un CASB que puede colocar Frente a su aplicación y habilitará el registro. El CASB puede tener la capacidad de realizar algún tipo de PIM, pasar un token, etc.
Es posible que pueda configurar algún tipo de solución de proxy inverso. OpenIAM describe tal configuración para aplicaciones heredadas : he leído sobre esto antes, pero nunca intentamos implementarlo para una aplicación heredada a la que queríamos agregar SSO.
Nota:
En tu publicación original, hablas de formularios de llenado automático. Esto todavía significa que la contraseña podría ser interceptada o que dos usuarios podrían autenticarse al mismo tiempo si la aplicación web no impide las sesiones concurrentes. Evitaría cualquier cosa que sea como un administrador de contraseñas de usuario final que simplemente sincroniza los archivos de contraseñas.
La solución ideal hará que solo un usuario pueda estar encendido a la vez y cuando un usuario individual nunca vea la contraseña de su versión, la contraseña se convertirá en "una sola vez".