ADC

Expresiones para fechas de certificados SSL

Puede determinar el período de validez de los certificados SSL configurando una expresión que contenga el siguiente prefijo:

CLIENT.SSL.CLIENT_CERT

La siguiente expresión de ejemplo hace coincidir una fecha de caducidad determinada con la información del certificado:

client.ssl.client_cert.valid_not_after.eq(GMT 2009)

En la siguiente tabla se describen las operaciones basadas en el tiempo en los certificados SSL. Para obtener la expresión que desea, sustituya el certificado de la expresión de la primera columna por la expresión de prefijo “CLIENT.SSL.CLIENT_CERT”.

  • <certificate>.VALID_NOT_AFTER:

    Devuelve el último día antes de la caducidad del certificado. El formato de retorno es el número de segundos transcurridos desde GMT del 1 de enero de 1970 (0 horas, 0 minutos, 0 segundos).

  • <certificate>.VALID_NOT_AFTER.BETWEEN(<time1>, <time2>):

    Devuelve un valor booleano TRUE si la validez del certificado está entre los argumentos <time1> y <time2>. <time1> y <time2> deben estar completamente especificados. A continuación se presentan algunos ejemplos:

    El horario GMT de enero de 1995 está completamente especificado.

    GMT Jan no está completamente especificado

    El GMT 1995 20 no está completamente especificado.

    GMT Jan Mon_2 no está completamente especificado.

    Los dos argumentos <time1> and <time2> deben ser GMT o LOCAL, y <time2> debe ser mayor que <time1>.

    Por ejemplo, si es GMT del 1 de mayo de 2005 a las 10 h 15 m 30 y el primer domingo del mes, puede especificar lo siguiente (los resultados de la evaluación aparecen entre paréntesis).

    • . .between (GMT 2004, GMT 2006) (VERDADERO)
    • . .between (GMT de enero de 2004, GMT de noviembre de 2006) (VERDADERO)
    • . .between (GMT de enero de 2004, GMT de 2006) (VERDADERO)
    • . .between (GMT: domingo de mayo de 2005_1, GMT: domingo de mayo de 2005_3) (VERDADERO)
    • . .between (GMT 1 de mayo de 2005, GMT 1 de mayo de 2005) (VERDADERO)
    • . .between (LOCAL del 1 de mayo de 2005, LOCAL del 1 de mayo de 2005) (VERDADERO o FALSO, según la zona horaria del sistema NetScaler).
  • <certificate>.VALID_NOT_AFTER.DAY:

    Extrae el último día del mes en que el certificado es válido y devuelve un número del 1 al 31, según corresponda a la fecha.

  • <certificate>.VALID_NOT_AFTER.EQ(<time>):

    Devuelve un valor booleano TRUE si el tiempo es igual al argumento <time>.

    Por ejemplo, si la hora actual es GMT del 1 de mayo de 2005 a las 10h 15m 30s y es el primer domingo del mes, puede especificar lo siguiente (los resultados de la evaluación de este ejemplo aparecen entre paréntesis):

    • . .eq (GMT 2005) (VERDADERO)
    • . .eq (GMT de diciembre de 2005) (FALSO)
    • . .eq (LOCAL de mayo de 2005) (VERDADERO o FALSO, según la zona horaria actual)
    • . .eq (GMT 10h) (VERDADERO)
    • . .eq (GMT 10h 30s) (VERDADERO)
    • . .eq (GMT del 10 de mayo) (VERDADERO)
    • . .eq (GMT del Sol) (VERDADERO)
    • . .eq (GMT del domingo de mayo_1) (VERDADERO)
  • <certificate>.VALID_NOT_AFTER.GE(<time>):

    Devuelve un valor booleano TRUE si el valor de tiempo es mayor o igual que el argumento <time>.

    Por ejemplo, si el valor de hora es GMT del 1 de mayo de 2005 a las 10 h 15 minutos y es el primer domingo del mes de mayo de 2005, puede especificar lo siguiente (los resultados de la evaluación de este ejemplo aparecen entre paréntesis):

    • . .ge (GMT 2004) (VERDADERO)
    • . .ge (GMT de enero de 2005) (VERDADERO)
    • . .ge (LOCAL de mayo de 2005) (VERDADERO o FALSO, según la zona horaria actual).
    • . .ge (GMT 8h) (VERDADERO)
    • . .ge (GMT 30 m) (FALSO)
    • . .ge (GMT del 10 de mayo) (VERDADERO)
    • . .ge (GMT de mayo de 10 h 0 m) (VERDADERO)
    • . .ge (GMT del Sol) (VERDADERO)
    • . .ge (GMT del domingo de mayo_1) (VERDADERO)
  • <certificate>.VALID_NOT_AFTER.GT(<time>):

    Devuelve un valor booleano TRUE si el valor de tiempo es mayor que el argumento <time>.

    Por ejemplo, si el valor de hora es GMT del 1 de mayo de 2005 a las 10 h 15 minutos y es el primer domingo del mes de mayo de 2005, puede especificar lo siguiente (los resultados de la evaluación de este ejemplo aparecen entre paréntesis):

    • . .gt (GMT 2004) (VERDADERO)
    • . .gt (GMT de enero de 2005) (VERDADERO)
    • . .gt (LOCAL de mayo de 2005) (VERDADERO o FALSO, según la zona horaria actual).
    • . .gt (GMT 8h) (VERDADERO)
    • . .gt (GMT 30 m) (FALSO)
    • . .gt (GMT del 10 de mayo) (FALSO)
    • . .gt (GMT Sun) (FALSO)
    • . .gt (GMT del domingo de mayo_1) (FALSO)
  • <certificate>.VALID_NOT_AFTER.HOURS:

    Extrae la última hora en que el certificado es válido y devuelve ese valor como un entero comprendido entre 0 y 23.

  • <certificate>.VALID_NOT_AFTER.LE(<time>):

    Devuelve un valor booleano TRUE si el tiempo precede o es igual al argumento <time>.

    Por ejemplo, si el valor de hora es GMT del 1 de mayo de 2005 a las 10 h 15 minutos y es el primer domingo del mes de mayo de 2005, puede especificar lo siguiente (los resultados de la evaluación de este ejemplo aparecen entre paréntesis):

    • . .le (GMT 2006) (VERDADERO)
    • . .le (GMT de diciembre de 2005) (VERDADERO)
    • . .le (LOCAL de mayo de 2005) (VERDADERO o FALSO, según la zona horaria actual).
    • . .le (GMT 8h) (FALSO)
    • . .le (GMT 30 m) (VERDADERO)
    • . .le (GMT del 10 de mayo) (VERDADERO)
    • . .le (GMT del 11 de junio) (VERDADERO)
    • . .le (GMT miércoles) (VERDADERO)
    • . .le (GMT del domingo de mayo_1) (VERDADERO)
  • <certificate>.VALID_NOT_AFTER.LT(<time>):

    Devuelve un valor booleano TRUE si la hora precede al argumento <time>.

    Por ejemplo, si la hora actual es GMT del 1 de mayo de 2005 a las 10h 15m 30s y es el primer domingo del mes, puede especificar lo siguiente:

    • . .lt (GMT 2006) (VERDADERO)
    • . .lt (GMT de diciembre de 2005) (VERDADERO)
    • . .lt (LOCAL de mayo de 2005) (VERDADERO o FALSO, según la zona horaria actual).
    • . .lt (GMT 8h) (FALSO)
    • . .lt (GMT 30 m) (VERDADERO)
    • . .lt (GMT del 10 de mayo) (FALSO)
    • . .lt (GMT del 11 de junio) (VERDADERO)
    • . .lt (GMT miércoles) (VERDADERO)
    • . .lt (GMT del domingo de mayo_1) (FALSO)
  • <certificate>.VALID_NOT_AFTER.MINUTES:

    Extrae el último minuto en que el certificado es válido y devuelve ese valor como un entero comprendido entre 0 y 59.

  • <certificate>.VALID_NOT_AFTER.MONTH:

    Extrae el último mes en que el certificado es válido y devuelve ese valor como un entero comprendido entre el 1 (enero) y el 12 (diciembre).

  • <certificate>.VALID_NOT_AFTER.RELATIVE_BOOT:

    Calcula el número de segundos hasta el reinicio previo o programado más cercano y devuelve un entero. Si el tiempo de arranque más cercano está en el pasado, el entero es negativo. Si está en el futuro, el entero es positivo.

  • <certificate>.VALID_NOT_AFTER.RELATIVE_NOW;

    Calcula el número de segundos entre la hora actual del sistema y la hora especificada y devuelve un entero. Si el tiempo está en el pasado, el entero es negativo; si está en el futuro, el entero es positivo.

  • <certificate>.VALID_NOT_AFTER.SECONDS:

    Extrae el último segundo en el que el certificado es válido y devuelve ese valor como un entero comprendido entre 0 y 59.

  • <certificate>.VALID_NOT_AFTER.WEEKDAY:

    Extrae el último día de la semana en que el certificado es válido. Devuelve un número comprendido entre 0 (domingo) y 6 (sábado) para indicar el día de la semana en el valor horario.

  • <certificate>.VALID_NOT_AFTER.WITHIN(<time1>, <time2>):

    Devuelve un valor booleano TRUE si la hora se encuentra dentro de todos los rangos definidos por los elementos de <time1> y <time2>.

    Si omite un elemento de tiempo de <time1>, se supone que tiene el valor más bajo de su rango. Si omite un elemento de <time2>, se supone que tiene el valor más alto de su rango. Si especifica un año en <time1>, debe especificarlo en <time2>.

    Los rangos de los elementos de tiempo son los siguientes: mes 1 a 12, día 1 a 31, día de la semana 0 a 6, hora 0 a 23, minutos 0 a 59 y segundos 0 a 59. Para que el resultado sea TRUE, cada elemento de la hora debe existir en el rango correspondiente que especifique en <time1>, <time2>.

    Por ejemplo, si la hora es GMT del 10 de mayo de 2005 a las 10 h 15 m 30 y es el segundo martes del mes, puede especificar lo siguiente (los resultados de la evaluación aparecen entre paréntesis):

    • . .within (GMT 2004, GMT 2006) (VERDADERO)
    • . .within (GMT de enero de 2004, GMT de marzo de 2006) (FALSO, mayo no está comprendido entre enero y marzo).
    • . .within (GMT de febrero, GMT) (CIERTO, mayo está dentro del rango de febrero a diciembre)
    • . .within (GMT Sun_1, GMT Sun_3) (ES CIERTO, el segundo martes se encuentra dentro del intervalo comprendido entre el primer domingo y el tercer domingo)
    • . .within (GMT del 1 de mayo de 2005 a las 10 h, GMT de mayo de 2005 a las 17 h) (VERDADERO)
    • . .within (LOCAL del 1 de mayo de 2005, LOCAL del 1 de mayo de 2005) (VERDADERO o FALSO, según la zona horaria del sistema NetScaler)
  • <certificate>.VALID_NOT_AFTER.YEAR:

    Extrae el último año de validez del certificado y devuelve un entero de cuatro dígitos.

  • <certificate>.VALID_NOT_BEFORE:

    Devuelve la fecha en que el certificado del cliente pasa a ser válido.

    El formato de retorno es el número de segundos transcurridos desde GMT del 1 de enero de 1970 (0 horas, 0 minutos, 0 segundos).

  • <certificate>.VALID_NOT_BEFORE.BETWEEN(<time1>, <time2>):

    Devuelve un valor booleano TRUE si el valor de tiempo está entre los dos argumentos de tiempo. Los argumentos <time1> y <time2> deben estar completamente especificados.

    A continuación se presentan algunos ejemplos:

    El horario GMT de enero de 1995 está completamente especificado. El GMT de enero no está completamente especificado. El GMT 1995 20 no está completamente especificado. GMT Jan Mon_2 no está completamente especificado. Los dos argumentos de tiempo deben ser GMT o LOCAL, y <time2> debe ser mayor que <time1>.

    Por ejemplo, si el valor de hora es GMT del 1 de mayo de 2005 a las 10 h 15 minutos y es el primer domingo del mes de mayo de 2005, puede especificar lo siguiente (los resultados de la evaluación de este ejemplo aparecen entre paréntesis):

    • . .between (GMT 2004, GMT 2006) (VERDADERO)
    • . .between (GMT de enero de 2004, GMT de noviembre de 2006) (VERDADERO)
    • . .between (GMT de enero de 2004, GMT de 2006) (VERDADERO)
    • . .between (GMT: domingo de mayo de 2005_1, GMT: domingo de mayo de 2005_3) (VERDADERO)
    • . .between (GMT 1 de mayo de 2005, GMT 1 de mayo de 2005) (VERDADERO)
    • . .between (LOCAL del 1 de mayo de 2005, LOCAL del 1 de mayo de 2005) (VERDADERO o FALSO, según la zona horaria del sistema NetScaler).
  • <certificate>.VALID_NOT_BEFORE.DAY:

    Extrae el último día del mes en que el certificado es válido y devuelve ese valor como un número del 1 al 31 que representa ese día.

  • <certificate>.VALID_NOT_BEFORE.EQ(<time>):

    Devuelve un valor booleano TRUE si el tiempo es igual al argumento <time>.

    Por ejemplo, si el valor de hora es GMT del 1 de mayo de 2005 a las 10 h 15 minutos y es el primer domingo del mes de mayo de 2005, puede especificar lo siguiente (los resultados de la evaluación de este ejemplo aparecen entre paréntesis):

    • . .eq (GMT 2005) (VERDADERO)
    • . .eq (GMT de diciembre de 2005) (FALSO)
    • . .eq (LOCAL de mayo de 2005) (VERDADERO o FALSO, según la zona horaria actual).
    • . .eq (GMT 10h) (VERDADERO)
    • . .eq (GMT 10h 30s) (VERDADERO)
    • . .eq (GMT del 10 de mayo) (VERDADERO)
    • . .eq (GMT del Sol) (VERDADERO)
    • . .eq (GMT del domingo de mayo_1) (VERDADERO)
  • <certificate>.VALID_NOT_BEFORE.GE(<time>):

    Devuelve un valor booleano TRUE si el tiempo es mayor que (después) o igual al argumento <time>.

    Por ejemplo, si el valor de hora es GMT del 1 de mayo de 2005 a las 10 h 15 minutos y es el primer domingo del mes de mayo de 2005, puede especificar lo siguiente (los resultados de la evaluación aparecen entre paréntesis):

    • . .ge (GMT 2004) (VERDADERO)
    • . .ge (GMT de enero de 2005) (VERDADERO)
    • . .ge (LOCAL de mayo de 2005) (VERDADERO o FALSO, según la zona horaria actual).
    • . .ge (GMT 8h) (VERDADERO)
    • . .ge (GMT 30 m) (FALSO)
    • . .ge (GMT del 10 de mayo) (VERDADERO)
    • . .ge (GMT de mayo de 10 h 0 m) (VERDADERO)
    • . .ge (GMT del Sol) (VERDADERO)
    • . .ge (GMT del domingo de mayo_1) (VERDADERO)
  • <certificate>.VALID_NOT_BEFORE.GT(<time>):

    Devuelve un valor booleano TRUE si la hora aparece después del argumento <time>.

    Por ejemplo, si el valor de hora es GMT del 1 de mayo de 2005 a las 10 h 15 minutos y es el primer domingo del mes de mayo de 2005, puede especificar lo siguiente (los resultados de la evaluación aparecen entre paréntesis):

    • . .gt (GMT 2004) (VERDADERO)
    • . .gt (GMT de enero de 2005) (VERDADERO)
    • . .gt (LOCAL de mayo de 2005) (VERDADERO o FALSO, según la zona horaria actual).
    • . .gt (GMT 8h) (VERDADERO)
    • . .gt (GMT 30 m) (FALSO)
    • . .gt (GMT del 10 de mayo) (FALSO)
    • . .gt (GMT de mayo de 10 h 0 m) (VERDADERO)
    • . .gt (GMT Sun) (FALSO)
    • . .gt (GMT del domingo de mayo_1) (FALSO)
  • <certificate>.VALID_NOT_BEFORE.HOURS:

    Extrae la última hora en que el certificado es válido y devuelve ese valor como un entero comprendido entre 0 y 23.

  • **<certificate>.VALID_NOT_BEFORE.LE(<time>)

    Devuelve un valor booleano TRUE si el tiempo precede o es igual al argumento <time>.

    Por ejemplo, si el valor de hora es GMT del 1 de mayo de 2005 a las 10 h 15 minutos y es el primer domingo del mes de mayo de 2005, puede especificar lo siguiente (los resultados de la evaluación de este ejemplo aparecen entre paréntesis):

    • . .le (GMT 2006) (VERDADERO)
    • . .le (GMT de diciembre de 2005) (VERDADERO)
    • . .le (LOCAL de mayo de 2005) (VERDADERO o FALSO, según la zona horaria actual).
    • . .le (GMT 8h) (FALSO) . - . .le (GMT 30m) (VERDADERO)
    • . .le (GMT del 10 de mayo) (VERDADERO)
    • . .le (GMT del 11 de junio) (VERDADERO)
    • . .le (GMT miércoles) (VERDADERO)
    • . .le (GMT del domingo de mayo_1) (VERDADERO)
  • <certificate>.VALID_NOT_BEFORE.LT(<time>):

    Devuelve un valor booleano TRUE si la hora precede al argumento <time>.

    Por ejemplo, si el valor de hora es GMT del 1 de mayo de 2005 a las 10 h 15 minutos y es el primer domingo del mes de mayo de 2005, puede especificar lo siguiente (los resultados de la evaluación de este ejemplo aparecen entre paréntesis):

    • . .lt (GMT 2006) (VERDADERO)
    • . .lt (GMT de diciembre de 2005) (VERDADERO)
    • . .lt (LOCAL de mayo de 2005) (VERDADERO o FALSO, según la zona horaria actual).
    • . .lt (GMT 8h) (FALSO)
    • . .lt (GMT 30 m) (VERDADERO)
    • . .lt (GMT del 10 de mayo) (FALSO)
    • . .lt (GMT del 11 de junio) (VERDADERO)
    • . .lt (GMT miércoles) (VERDADERO)
    • . .lt (GMT del domingo de mayo_1) (FALSO)
  • <certificate>.VALID_NOT_BEFORE.MINUTES:

    Extrae el último minuto en que el certificado es válido. Devuelve el minuto actual como un entero comprendido entre 0 y 59.

  • <certificate>.VALID_NOT_BEFORE.MONTH:

    Extrae el último mes de validez del certificado. Devuelve el mes actual como un número entero comprendido entre el 1 (enero) y el 12 (diciembre).

  • <certificate>.VALID_NOT_BEFORE.RELATIVE_BOOT:

    Calcula el número de segundos hasta el reinicio previo o programado de NetScaler más cercano y devuelve un entero. Si el tiempo de arranque más cercano está en el pasado, el entero es negativo; si está en el futuro, el entero es positivo.

  • <certificate>.VALID_NOT_BEFORE.RELATIVE_NOW:

    Devuelve el número de segundos entre la hora actual del sistema NetScaler y la hora especificada como un entero. Si la hora designada pertenece al pasado, el entero es negativo. Si está en el futuro, el entero es positivo.

  • <certificate>.VALID_NOT_BEFORE.SECONDS:

    Extrae el último segundo en el que el certificado es válido. Devuelve el segundo actual como un entero comprendido entre 0 y 59.

  • <certificate>.VALID_NOT_BEFORE.WEEKDAY:

    Extrae el último día de la semana en que el certificado es válido. Devuelve el día de la semana como un número comprendido entre 0 (domingo) y 6 (sábado).

  • <certificate>.VALID_NOT_BEFORE.WITHIN(<time1>, <time2>):

    Devuelve un valor booleano TRUE si cada elemento de tiempo existe dentro del rango definido en los argumentos <time1>, <time2>.

    Si omite un elemento de tiempo de <time1>, se supone que tiene el valor más bajo de su rango. Si omite un elemento de tiempo de <time2>, se supone que tiene el valor más alto de su rango. Si especifica un año en <time1>, debe especificarse en <time2>. Los rangos de los elementos de tiempo son los siguientes: mes 1 a 12, día 1 a 31, día de la semana 0 a 6, hora 0 a 23, minutos 0 a 59 y segundos 0 a 59.

    Por ejemplo, si la hora es GMT del 10 de mayo de 2005 a las 10 h 15 m 30 y es el segundo martes del mes, puede especificar lo siguiente (los resultados de la evaluación aparecen entre paréntesis):

    • . .within (GMT 2004, GMT 2006) (VERDADERO)
    • . .within (GMT de enero de 2004, GMT de marzo de 2006) (FALSO, mayo no está comprendido entre enero y marzo).
    • . .within (GMT de febrero, GMT) (CIERTO, mayo está en el intervalo de febrero a diciembre).
    • . .within (GMT Sun_1, GMT Sun_3) (ES CIERTO, el segundo martes es entre el primer domingo y el tercer domingo).
    • . .within (GMT del 1 de mayo de 2005 a las 10 h, GMT de mayo de 2005 a las 17 h) (VERDADERO)
    • . .within (LOCAL del 1 de mayo de 2005, LOCAL del 1 de mayo de 2005) (VERDADERO o FALSO, según la zona horaria del sistema NetScaler)
  • <certificate>.VALID_NOT_BEFORE.YEAR:

    Extrae el último año de validez del certificado. Devuelve el año actual como un entero de cuatro dígitos.

Expresiones para fechas de certificados SSL

En este artículo