Tamaño del mercado de equipos de bloqueo y etiquetado, participación, análisis de demanda global, segmentación de la industria e informe de pronóstico para 2028: Master Lock, Brady, ABUS
Mar 07, 2023Disparo espía: un siguiente
Mar 09, 2023Opinión: El fallo de la Corte Suprema erosiona el derecho de huelga al facultar a los empleadores para demandar a los sindicatos
Mar 11, 2023Notas del parche Valorant 6.11: actualizaciones de agentes, cambios en el mapa de Pearl, armas y más
Mar 13, 2023Edadismo digital
Mar 15, 2023Cómo solucionar los bloqueos de cuentas de Active Directory con PowerShell
kras99 - stock.adobe.com
Pueden ocurrir accidentes, pero cuando se trata de intentos de inicio de sesión fallidos, muchos de ellos pueden congelarlo fuera de su computadora portátil de trabajo hasta que alguien de TI venga al rescate.
Muchas organizaciones bloquean una cuenta de usuario después de un número determinado de intentos fallidos de inicio de sesión. El objetivo es evitar ataques de piratas informáticos que intentan encontrar la contraseña de un usuario por la fuerza bruta. Sin embargo, no todos los bloqueos provienen de fuentes maliciosas o incluso de usuarios que olvidan sus contraseñas.
Las aplicaciones a veces pueden conducir a bloqueos de cuentas. Las aplicaciones a menudo dependen de una cuenta de servicio para obtener los permisos necesarios para funcionar. Sin embargo, si la contraseña de la cuenta de servicio cambia y la aplicación no obtiene la contraseña actualizada, esto puede causar un bloqueo en la cuenta de servicio.
La información de inicio de sesión redundante también es otra causa común de bloqueos de cuentas. Un usuario empresarial puede tener una docena o más de conjuntos de credenciales vinculadas a un nombre de usuario común. Se necesita un poco de esfuerzo para realizar un seguimiento de todas estas cuentas. No es difícil prever que alguien use accidentalmente el conjunto incorrecto de credenciales varias veces y provoque el bloqueo de la cuenta.
Los bloqueos de cuentas también pueden ocurrir cuando los usuarios cambian de lugar de trabajo. Un escenario común es cuando un usuario cambia de trabajar en un escritorio de Windows unido a un dominio en la oficina a una máquina de Windows diferente en el hogar que actualmente no está conectada a una red. Debido a que la computadora portátil está fuera de línea, no ha registrado el cambio de contraseña. El usuario debe iniciar sesión con la contraseña anterior. Si el usuario lleva la computadora portátil a la oficina e intenta acceder a la red, la falta de coincidencia de la contraseña, combinada con la confusión del usuario final, podría provocar el bloqueo de la cuenta.
Una de las razones principales por las que los bloqueos de cuentas tienden a ser tan problemáticos es que tienden a ocurrir en silencio. Como administrador, es posible que nunca sepa que se ha producido un bloqueo de cuenta a menos que un usuario llame o vea un evento de bloqueo de cuenta en los registros de eventos de Windows. Sin embargo, puede usar la automatización de PowerShell para controlar mejor los eventos de bloqueo de cuenta.
Para adelantarse a estas situaciones de bloqueo, una opción es utilizar PowerShell para comprobar si hay bloqueos en los registros de eventos con el siguiente comando:
ElGet-WinEvent el cmdlet consulta los registros de eventos. ElFilterHashTable porción especifica los elementos para buscar dentro de los registros. En este caso, elNombre de registroel parámetro apunta elGet-WinEvent cmdlet para buscar en el registro de seguridad de Windows. Además, el parámetro ID busca instancias del ID de evento 4740, que hace referencia a eventos de bloqueo de cuenta.
Luego, los resultados se canalizan alSeleccionar objeto cmdlet, que muestra la hora de creación del evento y el mensaje del evento. Normalmente, PowerShell trunca el mensaje de bloqueo de cuenta, pero elFormato-Tablacmdlet, junto con elEnvolturaparámetro, obliga a PowerShell a mostrar toda la información pertinente.
En un entorno de producción, esta consulta de bloqueo de cuenta de Active Directory podría devolver una cantidad excesiva de resultados porque verifica el registro de eventos de seguridad para todas las instancias del ID de evento 4740, independientemente de cuándo ocurrió el evento. La mejor manera de abordar este problema es utilizar elHora de inicio filtrar. Por ejemplo, el siguiente comando analiza los eventos que han ocurrido en las últimas 24 horas:
El primer comando crea una variable llamada$Inicioy lo establece en las 24 horas anteriores medianteAñadirDías(-1) . Para verificar el valor de los registros de las semanas anteriores, useAñadirDías(-7).
El segundo comando es idéntico al código anterior exceptoHoraInicio=$Inicio se agrega a la tabla hash de filtro. Esto le indica a PowerShell que ignore los resultados anteriores a la fecha y la marca de tiempo en el$Iniciovariable.
Otra forma en que PowerShell ayuda con los bloqueos de cuentas de Active Directory es mediante elObtener ADUser cmdlet para comprobar el estado de bloqueo de la cuenta. Utilice el siguiente comando para recuperar los atributos relacionados con las cuentas de usuario de Active Directory.
ElIdentidad El parámetro especifica el nombre de cuenta para que el usuario investigue. En este caso, recupere todas las propiedades de la cuenta y luego useSeleccionar objeto cmdlet para mostrar el estado de bloqueo, cuándo se produjo el bloqueo y el número de intentos fallidos de inicio de sesión. Por cierto, elBloqueadoLa propiedad contiene un valor de verdadero o falso: una cuenta bloqueada muestra verdadero, mientras que una desbloqueada muestra falso.
Para desbloquear una cuenta, use el siguiente comando de PowerShell, reemplazando
de PowerShellObtener ADUser cmdlet recupera el estado de bloqueo de la cuenta de un usuario. En este caso, un valor de verdadero indica que la cuenta del usuario está bloqueada. ElDesbloquear cuenta AD cmdlet desbloquea la cuenta. Puedes usar elObtener ADUsercmdlet para verificar que el desbloqueo fue exitoso.
PowerShell le brinda las herramientas básicas para detectar y resolver eventos de bloqueo de cuenta. Puede usar los comandos y las técnicas de este artículo para desarrollar y crear scripts automatizados que ayuden a resolver eventos de bloqueo de cuenta a escala.
Get-WinEvent FilterHashTable LogName Get-WinEvent Select-Object Format-Table Wrap StartTime $Start AddDays(-1) AddDays(-7) StartTime=$Start $Start Get-ADUser Identity Select-Object LockedOut