Escribir patrones regex para el controlador de la política de contraseña

ADSelfService Plus' El controlador de la política de contraseña de ADSelfService Plus proporciona varios ajustes detallados para garantizar que sus usuarios elijan contraseñas seguras que cumplan con la política de contraseñas de su organización y logren el cumplimiento de las normas reglamentarias. También le permite aplicar formatos de contraseña personalizados mediante patrones regex.

Esta página web le ayuda a entender qué son los patrones regex y cómo puede utilizarlos para aplicar formatos de contraseña personalizados en su organización.

¿Qué es una regex?

Una expresión regular (o regex) es un patrón utilizado para referirse a un conjunto de hilos que coinciden con los criterios que define, al tiempo que rechaza las que no coinciden.

Una regex está compuesta por una secuencia de caracteres y metacaracteres (como ., \d, \D, \s, \S, \w, \W), y operadores (como +, *, ?, |, ^). Estos elementos se combinan para crear expresiones que pueden integrarse para formar patrones complejos.

Elementos de una regex

Literales de regex: Los literales de una regex son caracteres o secuencias que representan exactamente los caracteres o secuencias de caracteres que desea garantizar en la contraseña. Por ejemplo, si desea garantizar que una contraseña contenga el hilo literal "J0m95", podría utilizar la regex J0m95. Este patrón solo permitirá contraseñas que incluyan "J0m95" exactamente como está escrito.

Metacaracteres de regex: Los metacaracteres son secuencias regex que tienen significados especiales definidos en las regex. Sus definiciones y significados figuran en las tablas siguientes.

Puede utilizar cualquier carácter en un literal excepto los metacaracteres. Para utilizar metacaracteres en un literal regex, deberá incluir una barra invertida antes. Por ejemplo, si desea garantizar que una contraseña contenga el hilo literal "J0m95$", podría utilizar la regex J0m95\$. Incluir la barra invertida antes de "$" hará que el carácter se interprete literalmente, garantizando que este patrón solo permita contraseñas que incluyan "J0m95$" exactamente como está escrito.

Nota: Los elementos regex distinguen entre mayúsculas y minúsculas.

Combinando literales con otros metacaracteres regex, puede crear una amplia variedad de patrones precisos con los que deben coincidir las contraseñas de los usuarios. Los metacaracteres más utilizados con sus significados se enumeran en la tabla siguiente.

Carácter especialMetacarácterSignificadoEjemplos
Caret (símbolo de intercalación)^Especifica que la contraseña debe comenzar con el carácter que le sigueEl regex ^d obliga a que la contraseña empiece por el alfabeto d, como data o deer
Signo del dólar$Especifica que la contraseña debe terminar con el carácter que la precedeLa regex a$ obliga a que la contraseña termine con el alfabeto a, como alfa o beta
Punto.Permite cualquier carácter en su lugar excepto un carácter de nueva líneaLa regex a.b permite que la contraseña contenga a1b, acb, o a b pero no ab
Asterisco*Permite 0 o más apariciones del elemento precedenteLa regex ab*c permite que la contraseña contenga ac, abc, abbc, etc.
Más+Requiere 1 o más apariciones del elemento precedenteLa regex ab+c requiere que la contraseña contenga al menos una instancia del alfabeto b entre a y c, como abc o abbc, pero no ac
Signo de interrogación?Permite 0 ó 1 aparición del elemento precedenteLa regex ab?c permite que la contraseña contenga ac o abc, pero no abbc, abbbc, etc.
Llaves{n}Requiere que el carácter precedente aparezca exactamente n veces (sin prohibición de más veces)La regex Data{3} obliga que la contraseña debe contener Dataaa
{n,}Requiere que el carácter precedente aparezca al menos n veces (es decir, sin límite superior)La regex Data{1,} indica que la contraseña puede contener Data, Dataa, Dataaa, etc.
{n,m}Establece el número mínimo y máximo de veces que debe aparecer el elemento precedente.La regex Data{1,2} indica que la contraseña puede contener Data y Dataa, pero no Dataaa
Paréntesis()Agrupa varios tokensLa regex (abc)+ permite múltiples instancias de abc como abc, abcabc, abcabcabc, etc.
Barra horizontal|Especifica alternativas (OR lógico)La regex dat(a|e|o) permitirá data, date y dato
Barra invertida\Escapa un carácter especial que tiene un significado regex contrarioLa regex \. obliga un punto literal en lugar del uso regex para un punto, que es un marcador de posición
Dígito\dRequiere cualquier dígitoLa regex \d obliga a que la contraseña contenga un número entre 0-9
No-dígito\DRequiere cualquier no-dígitoLa regex \D requiere que la contraseña contenga cualquier carácter distinto de 0-9
Espacio en blanco\sRequiere cualquier carácter de espacio en blancoLa regex \s requiere que la contraseña contenga un espacio, un tabulador o un carácter de nueva línea
No espacio en blanco\SRequiere cualquier carácter que no sea un espacio en blancoLa regex \S obliga a que la contraseña tenga un carácter distinto de un espacio, un tabulador o un carácter de nueva línea
Carácter de palabra\wRequiere cualquier carácter de palabra (alfanumérico + guion bajo)La regex \w obliga un hilo que contenga cualquier combinación de a-z, A-Z, 0-9 y _
Carácter que no sea palabra\WRequiere cualquier carácter que no sea una palabraLa regex \W obliga cualquier hilo sin ninguna combinación de a-z, A-Z, 0-9, y _
Clase de carácter[a-m]Representa cualquier carácter dentro del rango especificadoLa regex Dat[a-f] permitirá tanto Data como Date pero no Dato
[^a]Si se utiliza ^ junto con corchetes, representa cualquier carácter menos el mencionadoLa regex Dat[^e] permitirá tanto Data como Dato pero no Date
[abc]Permite cualquiera de los caracteres a, b o cLa regex [abc] permite a , b , o c
[^abc]Coincide con cualquier carácter excepto a, b o cIndica que la contraseña no debe contener los caracteres a, b, o c
Guion[a-z]Coincide con cualquier carácter de la a hasta la zIndica que la contraseña puede contener cualquiera de los alfabetos de la a hasta la z

Si solo utiliza los elementos de la tabla anterior, la contraseña deberá tener el formato exacto de la regex. Sin embargo, si desea que se cumplan ciertas condiciones con cierto grado de flexibilidad (por ejemplo, si desea que la contraseña contenga un asterisco sin especificar si debe estar al principio, en medio o al final), puede utilizar los elementos de aserción (condición) de la tabla siguiente para garantizar que se cumpla la condición especificada en la contraseña.

SCarácter especialMetacarácterSignificadoEjemplos
Grupo de no captura(?: ... )Agrupa varios tokens sin ponerlos a disposición de la captura regexLa regex (?:[A-Za-z]\d){2} obliga a que la contraseña contenga dos secuencias de una letra seguida de un dígito, como A1b2
Búsqueda hacia adelante positiva(?= ... )Garantiza que lo que sigue a la posición satisface la condiciónLa regex (?=.*[A-Z]) obliga a que la contraseña contenga al menos una letra mayúscula
Búsqueda hacia adelante negativa(?! ... )Garantiza que lo que sigue a la posición no satisface la condiciónLa expresión regular (?!.*\s) obliga a que la contraseña no contenga ningún carácter de espacio en blanco
Búsqueda hacia atrás positiva(?<= ... )Garantiza que lo que precede a la posición satisface la condiciónLa regex (?<=@)\w+ obliga a que la contraseña contenga una secuencia de caracteres de palabras a continuación de una @
Búsqueda hacia atrás negativa(?<! ... )Garantiza que lo que precede a la posición no satisface la condiciónLa regex (?

Combinar elementos regex para escribir regexes

Ahora, combinemos los elementos de las tablas anteriores para aprender a escribir regexes.

Ejemplo 1

Para garantizar que la contraseña tenga al menos ocho caracteres, el código regex es

^.{8,}$

Explicación

  • ^: Inicio del hilo.
  • .{8,}: Al menos ocho caracteres (cualquier carácter excepto caracteres de nueva línea).
  • $: Fin del hilo.

Ejemplo 2

Para garantizar que la contraseña tenga al menos tres caracteres asterisco, el código regex es

^(.*\*.*){3}$

Explicación

  • ^: Inicio del hilo.
  • (.*\*.*): Al menos un asterisco
  • {3}: Se repite tres veces
  • $: Fin del hilo.

Ejemplo 3

Para garantizar que la contraseña tenga al menos un carácter especial (como !@#$%^&*), el código regex es

^(?=.*[!@#$%^&*]).*$

Explicación

  • ^: Inicio del hilo.
  • (?=.*[!@#$%^&*]): Al menos uno de los caracteres especiales mencionados
  • .*: Más caracteres si fuera necesario
  • $: Fin del hilo.

Ejemplo 4 (Combinación de múltiples regexes)

Veamos ahora cómo combinar los ejemplos 1 y 3 para formar un patrón regex que garantice que las contraseñas tengan al menos ocho caracteres, incluido al menos un carácter especial.

^(?=.*[!@#$%^&*]).*.{8,})$

Explicación

  • ^: Inicio del hilo.
  • (?=.*[!@#$%^&*]): Al menos uno de los caracteres especiales mencionados
  • .*:Más caracteres si fuera necesario
  • .{8,}): Al menos ocho caracteres (cualquier carácter excepto caracteres de nueva línea).
  • $: Fin del hilo.

Ahora puede utilizar la información de esta página para escribir regexes que deben cumplir las contraseñas de los usuarios. Para obtener instrucciones detalladas sobre cómo configurar esto en ADSelfService Plus, haga clic aquí .

Recursos adicionales:
  • Regexr es una herramienta en línea para aprender, construir y probar expresiones regulares. Ofrece una base de datos consultable de patrones enviados por su comunidad de pares en línea.
  • Regexlib es una biblioteca de las regexes más utilizadas.
  • Regular-expressions.info proporciona una amplia gama de información detallada para construir una regex.
  • Regex101 es un comprobador y depurador de regex en línea para evaluar sus regex.

Solicitud de asistencia

¿Necesita asistencia adicional? Llene este formulario y nos pondremos en contacto con usted enseguida.

  • Nombre
  •  
  • Correo electrónico empresarial *
  •  
  • Teléfono *
  •  
  • Descripción del problema *
  •  
  • País
  •  
  • Al hacer clic en "Enviar", usted acepta que sus datos personales sean tratados de acuerdo con la Política de Privacidad.
Características destacadas

Autoservicio de contraseñas

Libere a los usuarios del Active Directory de largas llamadas a la mesa de ayuda permitiéndoles realizar sus tareas de restablecimiento de contraseñas/desbloqueo de cuentas de autoservicio. ¡Haga cambios de clave para empleados sin complicaciones con la consola "Cambiar contraseña" de ADSelfService Plus!

Una identidad con inicio de sesión único

Acceda con un solo clic a más de 100 aplicaciones en la nube. Con el inicio de sesión único empresarial, los usuarios pueden acceder a todas sus aplicaciones en la nube con sus credenciales de Active Directory.

Notificación de caducidad de contraseña/cuenta

Avise a los usuarios del Active Directory de la inminente caducidad de sus contraseñas/cuentas notificándolos por correo electrónico.

Sincronizador de contraseñas

Sincronice los cambios de contraseña/cuenta de usuario de Windows Active Directory en varios sistemas y de forma automática. Estos sistemas incluyen Office 365, G Suite, IBM iSeries y más.

Aplicación de la política de contraseñas

Asegúrese de que las contraseñas de usuario sean seguras y resistan varias amenazas de piratería con ADSelfService Plus haciendo que los usuarios de Active Directory se adhieran a las contraseñas compatibles al visualizar los requisitos de complejidad de la contraseña.

Autoactualización del directorio y búsqueda dentro de la empresa

La primera es un portal que permite a los usuarios de Active Directory actualizar su información más reciente. La segunda es una función de búsqueda rápida para localizar información sobre compañeros utilizando claves de búsqueda, tales como el número de contacto.

Grandes compañías de latinoamérica confían en ADSelfService Plus

ArusBanistmoIndra
BantrapCanal De PanamaSwiss Medical
CarloCNDTeleperformance
EDUK GroupEntelUmiversity of Peurto Rico
GapmxDPWorld

Para una gestión de activos fácil y efectiva en la que confían las siguientes empresas

Emprenda un viaje hacia la seguridad de identidad y Zero Trust