Configura condiciones de acceso para la hora y el día

La función de restricción de fecha y hora de Access Context Manager les brinda a las empresas la capacidad de establecer controles de acceso en función de la fecha y la hora.

Cuando se evalúa el acceso de confianza cero, a menudo es necesario restringir el acceso de los usuarios a los recursos a días y horarios específicos. Por ejemplo, es posible que a los trabajadores por turnos solo se les permita acceder a recursos de la empresa durante su horario de trabajo, o bien que los usuarios tengan acceso temporal a una hora específica del día.

Para aplicar la condición de nivel de acceso diario y diario, usa las funciones que se indican en la siguiente tabla. El formato de las funciones es function(timezone).

Puedes especificar timezone como UTC, zonas horarias fijas que son compensaciones explícitas de hora y minuto desde UTC o nombres de timezone largos, como Europe/Paris, CET o US/Central. Para obtener una lista completa, consulta la sección Zona horaria de la definición de Common Express Language.

Si no especificas timezone, la expresión se establece de forma predeterminada como UTC.

Función Definición
getFullYear

Recupera el número que representa el año actual, como 2020.

Ejemplo: ¿Es el año 2020?

request.time.getFullYear("America/Los_Angeles") == 2020

getMonth

Recuperar el mes del año Los valores del mes van del 0 al 11, donde 0 == enero y 11 == diciembre.

Ejemplo: ¿Es el mes de enero?

request.time.getMonth("America/Los_Angeles") == 1

getDate

Recupera la fecha del mes. Los valores de fecha van del 1 al 31, donde 1 es el primer día del mes y 31 es el 31 del mes.

Ejemplo: ¿Es el primer día del mes?

request.time.getDate("America/Los_Angeles") == 1

getDayOfMonth

Recuperar el día del mes Los valores del día van del 0 al 30, donde 0 es el primer día del mes y 30 es el 31 del mes.

Ejemplo: ¿Es el primer día del mes?

request.time.getDayOfMonth("America/Los_Angeles") == 0

getDayOfWeek

Recuperar el día de la semana. Los valores del día van de 0 a 6, en los que 0 es el domingo y 6 es el sábado.

Ejemplo: ¿Es lunes?

request.time.getDayOfWeek("America/Los_Angeles") == 1

getDayOfYear

Recuperar el día del año Los valores del día van de 0 a 365, donde 0 es el primer día del año y 365 es el 366.o día del año.

Ejemplo: ¿Es el primer día del año?

request.time.getDayOfYear("America/Los_Angeles") == 0

getHours

Recupera la hora del día. Los valores de las horas van de 0 a 23, donde 0 es la medianoche y 23 es 11 p.m.

Ejemplo: ¿Son las 7 p.m.?

request.time.getHours("America/Los_Angeles") == 19

getMinutes

Recupera el minuto de la hora. Los valores de minutos van de 0 a 59, en los que 0 es el primer minuto y 59 es el último minuto de la hora.

Ejemplo: ¿Son las 7:30 p.m.?

request.time.getHours("America/Los_Angeles") == 19 && request.time.getMinutes("America/Los_Angeles") == 30

En la siguiente tabla, se muestran ejemplos de cómo usar las restricciones de fecha y hora:

Ejemplo de una política Expresión
Permite que los trabajadores por turnos accedan a los recursos de lunes a viernes, de 9 a.m. a 5 p.m., excepto el cuatro de julio.

request.time.getDayOfWeek("America/Los_Angeles") >= 1 && request.time.getDayOfWeek("America/Los_Angeles") <= 5 && request.time.getHours("America/Los_Angeles") >= 9 && request.time.getHours("America/Los_Angeles") <= 17 &&
!(request.time.getMonth("America/Los_Angeles") == 6 && request.time.getDayOfMonth("America/Los_Angeles") == 3)

Permite el acceso temporal a los recursos el 1 de marzo de 2020, entre las 10:00 p.m. y la medianoche.

request.time.getFullYear("America/Los_Angeles") == 2020 && request.time.getMonth("America/Los_Angeles") == 2 && request.time.getDayOfMonth("America/Los_Angeles") == 0 && request.time.getHours("America/Los_Angeles") >= 22 && request.time.getHours("America/Los_Angeles") <= 23