¿Cómo mantener seguras las contraseñas de los sitios web entre los empleados? [duplicar]

2

Somos una agencia de desarrollo de sitios web, y la mayoría de nuestros sitios web se realizan utilizando Wordpress, Joomla o Drupal como CMS.

Tengo problemas para decidir cómo debemos administrar nuestras contraseñas, y estoy abierto a sugerencias.

Podríamos:

  • Use una contraseña predeterminada para cada sitio web (gran no)
  • Genere una contraseña única para cada sitio web y manténgala en una base de datos (hacer que la base de datos sea accesible solo desde la IP de nuestra oficina sería una gran ventaja, pero en caso de emergencia, podría empeorar las cosas si no hay nadie en la oficina.)

Mi principal preocupación no es solo mantener las contraseñas seguras entre los empleados, sino lo más importante es mantener las contraseñas seguras contra los ex empleados.

He tenido un caso en el que un empleado renunció y al día siguiente ingresó a uno de nuestros sitios web y desfiguró todo el sitio web.

A diferencia de los servidores, no puedo usar claves privadas en este caso, como lo hacemos para acceder a nuestros servidores.

¿Alguna sugerencia?

    
pregunta vmunich 27.08.2013 - 20:17
fuente

6 respuestas

2

No puedes imponer el olvido; si un empleado podría, en algún momento, aprender una contraseña y, de hecho, escribirla en el curso de su trabajo, entonces aún puede recordarla incluso cuando ya no es un empleado, y no puede obligarlo a "olvidar".

Por lo tanto, la única forma de "destruir" un acceso de contraseña es invalidar esa contraseña específica. La "buena" manera es hacer que cada empleado tenga su propia contraseña administrativa. El día que el empleado se retire, invalide esta contraseña en todos los sitios donde esté activa. Si el empleado se retira bajo ciertas condiciones de desconfianza, invalide su contraseña cinco minutos antes y le dice que fue despedido.

Si debe compartir las contraseñas debido a alguna limitación técnica (por ejemplo, algún software del sitio que reconozca solo una "contraseña de administrador" único ), entonces la única manera de invalidar la contraseña es cambiarla, y dar la nueva contraseña a todos los empleados restantes.

Dado que cada empleado puede terminar con una gran cantidad de contraseñas para recordar, necesitarán algún tipo de sistema de almacenamiento. He visto a personas usar este producto y estar contentos con él, pero no creo que este sea el único de sus productos. amable.

    
respondido por el Thomas Pornin 27.08.2013 - 20:25
fuente
2

La respuesta principal sería utilizar las funciones del CMS que está desarrollando dentro de ese sitio web en particular y crear una cuenta, con una contraseña única, para cada persona autorizada para estar dentro de ese sitio web como desarrollador. Luego, los usuarios pueden colocar estas contraseñas en un sistema centralizado como DICEware o KeePass, e ir a cualquier lugar que necesiten con una contraseña maestra. La ventaja es que usas lo que te dan. El inconveniente sería tener que navegar por varios CMS por separado incluso para la administración básica de usuarios, así como tener que soportar los diferentes niveles de funcionalidad que cada CMS proporciona en términos de auditoría y protección de contenido. También puede haber un aumento en los costos del suscriptor por tener tantos usuarios, tanto de su parte como de los clientes.

La segunda respuesta sería desarrollar un sistema centralizado para controlar el acceso a cada uno de sus CMS; los usuarios iniciarían sesión en este sistema, que luego actuaría como un proxy de paso para las capacidades de edición de todos los sitios web que controlan sus equipos mediante el uso de una sola cuenta para cada CMS. El lado positivo es una puerta de enlace y, por lo tanto, un controlador de acceso, y en teoría este sistema puede permitir, restringir y registrar lo que quiera con respecto a las acciones del usuario. El inconveniente es una mayor complejidad, y el requisito de que todos los portales tengan la capacidad de autenticar a los usuarios de tal manera que incluso el actor que usa el sistema no pueda conocer las credenciales.

Un enfoque híbrido es la autenticación mediante un proveedor de OpenID. Solicite a todos los usuarios que creen una cuenta de Gmail o un ID de Google similar para el trabajo, que utilizarán para iniciar sesión en una sesión. Sus sitios web pueden iniciar sesión en Google, identificando al usuario de CMS como el usuario de Google. El lado positivo es un inicio de sesión, una vez. El inconveniente es que aún tiene que ingresar a cada CMS y habilitar o deshabilitar cuentas, porque no controla el acceso a la ID de Google creada por el usuario. Puede mitigar esto implementando su propio proveedor de OpenID que verán los sitios web, según el inicio de sesión de Active Directory del usuario o algún otro sistema de autenticación centralizado.

    
respondido por el KeithS 27.08.2013 - 20:32
fuente
1

¿Supongo que está utilizando el mismo nombre de usuario y contraseña para todos los empleados que necesitan acceder al administrador? Si este es el caso, recomendaría crear y administrar una cuenta para cada empleado que necesite acceso. Entonces, diga que administra mysite.com, cree las siguientes cuentas de administrador:

Abe
Chuck
Employee to be terminated

En lugar de tener una sola cuenta de "administrador".

Luego, cuando un empleado es despedido, deberá ir a todos los sitios a los que tenga acceso y eliminar la cuenta.

De lo contrario, cuando un empleado sea despedido, deberá cambiar todas las contraseñas de los sitios web que administra.

    
respondido por el Abe Miessler 27.08.2013 - 20:27
fuente
1

Realmente desea que los distintos sitios confíen en su servidor de autenticación y que cada desarrollador use sus propias credenciales. La forma más fácil podría ser usar OAuth. De esta manera, la cuenta de cada desarrollador en varios sitios se controlará desde un único punto de cierre. Pueden usar sus propias credenciales para iniciar sesión en cualquier sitio que necesiten, pero luego cerrarlas es solo cuestión de desactivar su cuenta OAuth.     

respondido por el AJ Henderson 27.08.2013 - 20:27
fuente
1

Dé a cada desarrollador su propia cuenta de administrador en cada servidor y revoque según sea necesario.

    
respondido por el schroeder 27.08.2013 - 20:27
fuente
1

Podría considerar una herramienta comercial como Random Password Manager de Liebsoft, o PasswordVault de Cyber-Ark. Proporcionan una lista audible de quiénes han accedido a las contraseñas y las cambian según se utilizan. Usted controla el acceso a la bóveda con su sistema de seguridad existente como Active Directory.

    
respondido por el John Deters 27.08.2013 - 20:53
fuente

Lea otras preguntas en las etiquetas