{"meta":{"title":"Referencia de patrones personalizados","intro":"Use una sintaxis de expresión regular específica para definir patrones personalizados precisos para el secret scanning.","product":"Seguridad y calidad del código","breadcrumbs":[{"href":"/es/code-security","title":"Seguridad y calidad del código"},{"href":"/es/code-security/reference","title":"Referencia"},{"href":"/es/code-security/reference/secret-security","title":"Seguridad secreta"},{"href":"/es/code-security/reference/secret-security/custom-patterns","title":"Patrones personalizados"}],"documentType":"article"},"body":"# Referencia de patrones personalizados\n\nUse una sintaxis de expresión regular específica para definir patrones personalizados precisos para el secret scanning.\n\n## Biblioteca de expresiones regulares para patrones personalizados\n\nLos patrones personalizados de Secret scanning se definen con la [biblioteca Hyperscan](https://github.com/intel/hyperscan) y solo admiten construcciones de expresión regular de Hyperscan, que son un subconjunto de la sintaxis de PCRE. Los modificadores de opción de Hyperscan no son compatibles. Para obtener más información sobre las construcciones de patrones de Hyperscan, consulte [Compatibilidad con patrones](https://intel.github.io/hyperscan/dev-reference/compilation.html#pattern-support) en la documentación de Hyperscan.\n\n## Sintaxis para definir manualmente patrones personalizados\n\nLa sección **More options <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-chevron-down\" aria-label=\"chevron-down\" role=\"img\"><path d=\"M12.78 5.22a.749.749 0 0 1 0 1.06l-4.25 4.25a.749.749 0 0 1-1.06 0L3.22 6.28a.749.749 0 1 1 1.06-1.06L8 8.939l3.72-3.719a.749.749 0 0 1 1.06 0Z\"></path></svg>** de la interfaz de usuario te ayuda a escribir expresiones regulares de forma manual.\n\n* **Formato del secreto:** expresión que describe el formato del propio secreto.\n* **Antes del secreto:** expresión que describe los caracteres que aparecen antes del secreto. De manera predeterminada, esto se establece en `\\A|[^0-9A-Za-z]`, lo que significa que el secreto debe estar al inicio de una línea, o bien que debe estar precedido de un carácter alfanumérico.\n* **Después del secreto:** expresión que describe los caracteres que aparecen después del secreto. De manera predeterminada, esto se establece en `\\z|[^0-9A-Za-z]`, lo que significa que al secreto le debe seguir una nueva línea o un carácter que no sea alfanumérico.\n* **Requisitos de coincidencia adicionales:** una o más expresiones opcionales con las que el propio secreto debe o no coincidir.\n\nPara los tokens simples, a menudo solo necesitas especificar un formato de secreto. Los otros campos proporcionan flexibilidad para que puedas especificar secretos más complejos sin crear expresiones regulares complejas.\n\n### Ejemplo de patrón personalizado\n\nUna compañía tiene un token interno con cinco características. Utilizan campos diferentes para especificar cómo identificar los tokens de acuerdo con lo siguiente:\n\n| **Característica** | \n              **Campo y expresión regular** |\n|----------------|------------------------------|\n| Longitud entre 5 y 10 carácteres | Formato del secreto: `[$#%@AA-Za-z0-9]{5,10}` |\n| No termina por `.` | Después del secreto: `[^\\.]` |\n| Contiene números y mayúsculas | Requisitos adicionales: el secreto debe coincidir con `[A-Z]` y `[0-9]` |\n| No incluye más de una minúscula seguida | Requisitos adicionales: el secreto no debe coincidir con `[a-z]{2,}` |\n| Contiene uno de `$%@!` | Requisitos adicionales: el secreto debe coincidir con `[$%@!]` |\n\nEstos tokens empataron con el patrón personalizado que se describe anteriormente:\n\n```shell\na9@AAfT!         # Secret string match: a9@AAfT\nee95GG@ZA942@aa  # Secret string match: @ZA942@a\na9@AA!ee9        # Secret string match: a9@AA\n```\n\nEstas secuencias no empataron con el patrón personalizado que se describe anteriormente:\n\n```shell\na9@AA.!\na@AAAAA\naa9@AA!ee9\naAAAe9\n```\n\n## Limits\n\nSecret scanning admite hasta 500 patrones personalizados por cada cuenta de la organización o empresarial, y hasta 100 por repositorio."}