Agregar directivas a una implementación de API

Puede configurar varias directivas de seguridad para el tráfico de la API. Esta configuración requiere que especifique los criterios de selección de tráfico y los parámetros necesarios para una directiva. Realice los siguientes pasos para agregar una directiva a una definición de API:

  1. Vaya a Seguridad > API Gateway > Directivas.

  2. Haga clic en Agregar.

  3. Especifique el nombre de un grupo de directivas.

  4. Seleccione una implementación de la lista.

  5. Seleccione un servicio ascendente de la lista para el que quiera configurar directivas.

  6. Haga clic en Agregar para seleccionar selectores de tráfico y un tipo de directiva.

    Selector de tráfico : los criterios de selección de tráfico incluyen rutas de recursos de API o prefijos de ruta, métodos y directivas.

    Puede utilizar cualquiera de las siguientes opciones para especificar criterios de selección de tráfico:

    • Recursos de API: Seleccione un recurso de API y sus métodos para los que quiere aplicar una directiva. Puede buscar recursos y métodos de la API con una palabra clave.

      Selector de tráfico

      En este ejemplo, se enumeran los recursos de API con los/user que tienen el POST método.

    • Regla personalizada : en esta ficha, puede especificar prefijos de ruta personalizados y varios métodos.

      La directiva configurada se aplica a una solicitud de API entrante que coincide con la regla personalizada para la selección del tráfico de API.

      Regla de directiva personalizada

      En este ejemplo, la directiva Sin autenticación se aplica a los recursos de API que tienen el /pet prefijo y el GET método.

    En Directiva, seleccione una directiva de la lista que quiera aplicar al recurso y método de API seleccionados. Para obtener más información sobre cada directiva, consulte Tipos de directivas.

  7. Opcional, puede mover tipos de directivas para establecer una prioridad. Los tipos de directivas con mayor prioridad se aplican primero.

  8. Haga clic en Guardar para agregar una directiva. Si quiere aplicar la directiva inmediatamente, haga clic en Guardar y aplicar.

Tipos de directivas

Al configurar una directiva de API, puede seleccionar las siguientes directivas que quiere aplicar al recurso y método de la API:

Autenticación y autorización

Los recursos de API están alojados en una aplicación o servidor API. Cuando quiera aplicar restricciones de acceso a dichos recursos de API, puede usar las directivas de autenticación y autorización. Estas directivas verifican si la solicitud de API entrante tiene un permiso necesario para acceder al recurso.

Utilice las siguientes directivas para definir la autenticación y autorización para los recursos de API seleccionados:

‘No-Auth’

Utilice esta directiva para omitir la autenticación en el tráfico seleccionado.

‘Auth-Basic’

Esta directiva especifica la autenticación local que se utilizará con el esquema de autenticación básica HTTP. Para utilizar la autenticación local, debe crear cuentas de usuario en Citrix ADC.

OAuth

OAuth requiere un proveedor de identidades externo para autenticar un cliente mediante OAuth2 y emitir un token de acceso. Cuando el cliente proporciona este token como credencial de acceso a una puerta de enlace API, el token se valida en función de los valores configurados.

  • URI JWKS: La URL de un extremo que tiene JWK (JSON Web Key) para la verificación JWT (JSON Web Token)

  • Emisor : la identidad (normalmente una URL) del servidor de autenticación.

  • Audiencia: La identidad del servicio o aplicación para la que se aplica el token.

  • Reclamaciones para guardar : los permisos de acceso se representan como un conjunto de notificaciones y valores esperados. Especifique los valores de notificación en el formato CSV.

  • URI de introspección : URL de extremo de introspección del servidor de autenticación. Esta URL se utiliza para verificar tokens de acceso opacos. Para obtener más información sobre estos tokens, consulte Configuración de OAuth para tokens de acceso opacos.

    Después de especificar el URI de introspect, especifique el Id. de cliente y el secreto de cliente para tener acceso al servidor de autenticación.

  • Algoritmos permitidos : esta opción le permite restringir ciertos algoritmos en los tokens entrantes. De forma predeterminada, todos los métodos admitidos están permitidos. Sin embargo, puede verificar los algoritmos necesarios para el tráfico seleccionado.

    Autenticación JWT

En caso de validación correcta, la puerta de enlace API concede acceso al cliente.

Importante

Al configurar una directiva de OAuth o Auth-Basic para los recursos de API seleccionados, configure la directiva de no autenticación para los recursos de API restantes. Esta configuración indica explícitamente que quiere omitir la autenticación para los recursos restantes.

Directiva de autorización

Esta directiva verifica los permisos necesarios para acceder a un recurso API. Los permisos de acceso se representan como un conjunto de notificaciones y valores esperados. Para configurar esta directiva, seleccione Agregar una nueva notificación y especifique lo siguiente:

  • Nombre del reclamo
  • Valores de reclamación

Directiva de autorización

La puerta de enlace APIimportante

requiere directivas de autenticación y autorización para el tráfico de API. Por lo tanto, debe configurar una directiva de autorización con una directiva de autenticación. La directiva de autenticación puede ser OAuth o [Auth-Basic] (#auth -basic).

Incluso si no tiene ninguna comprobación de autorización, debe crear una directiva de autorización con reclamaciones vacías. De lo contrario, la solicitud se deniega con un error 403.

Directiva de límite de tarifas

Especifique la carga máxima dada al recurso API seleccionado. Con esta directiva, puede supervisar la tasa de tráfico de la API y tomar medidas preventivas. Para configurar esta directiva, especifique lo siguiente:

  • Nombre de encabezado HTTP : es una clave de selector de tráfico que filtra el tráfico para identificar las solicitudes de API. Además, la directiva Límite de tarifas se aplica y supervisa sólo a dichas solicitudes de API.

  • Valores de encabezado : estos valores de encabezado están separados por comas para el nombre del encabezado mencionado.

  • Umbral : el número máximo de solicitudes que se pueden permitir en el intervalo especificado. Si ha especificado valores de encabezado, este umbral se aplica a cada valor de encabezado.

    Example-1:

    Al especificar los valores de encabezado ("key1","key2","key3") para el nombre del encabezado x-api-key y establecer el umbral en 80, el umbral establecido se aplica a cada valor de encabezado.

    Example-2:

    Si quiere especificar umbrales diferentes para cada valor de encabezado, cree directivas de límite de velocidad independientes con el mismo nombre de encabezado HTTP.

    • Directiva 1: especifique los valores de encabezado ("key1","key2") para el nombre del encabezado x-api-key y establezca el umbral en 80.

    • Directiva 2: especifique los valores de encabezado ("key3") para el nombre del encabezado x-api-key y establezca el umbral en 30.

    Si no especificas un valor de encabezado, el umbral se aplica al nombre de encabezado HTTP especificado.

  • Time Slice - El intervalo especificado en microsegundos. Durante este intervalo, las solicitudes se supervisan en función de los límites configurados. De forma predeterminada, se establece en 1000 microsegundos (1 milisegundo).

  • Tipo de límite : el modo en el que quiere aplicar la directiva de límite de tasa. Puede seleccionar el tipo de límite de ráfaga o Suavizar.

  • Acción : define una acción que quiere realizar sobre el tráfico que infringe el umbral. Puede especificar una de las siguientes acciones:

    • DROP: elimina las solicitudes por encima de los límites de tráfico configurados.
    • RESET: restablecela conexión de las solicitudes.
    • REDIRECT: Redirige el tráfico al redirect_url configurado.
    • RESPONDER: Responde con la respuesta estándar (429 Too many requests).

Directiva de límite de tarifas

Directiva WAF

Esta directiva evita infracciones de seguridad, pérdida de datos y posibles modificaciones no autorizadas en sitios web que acceden a información confidencial de negocios o clientes.

Antes de configurar una directiva WAF, cree un perfil WAF en Citrix ADM mediante el StyleBook.

En Nombre de perfil WAF, seleccione o especifique el perfil WAF que ha creado.

Directiva WAF

Directiva BOT

Esta directiva identifica los robots defectuosos y protege el dispositivo de ataques de seguridad avanzados.

Antes de configurar una directiva BOT, cree un perfil BOT en Citrix ADM mediante el StyleBook.

En Nombre de perfil de bot, especifique el perfil BOT que ha creado.

Directiva de BOT

Directiva de reescritura de encabezados

Esta directiva le ayuda a modificar el encabezado de las solicitudes y respuestas de API. Si quiere reemplazar el valor en el encabezado HTTP, especifique lo siguiente:

  • Nombre de encabezado HTTP: nombre archivado que quiere modificar en el encabezado de solicitud.

    Ejemplo:Host

  • Valor de encabezado: opcional, la cadena de valor que quiere modificar en el nombre de encabezado especificado.

    Ejemplo:sample.com

  • Nuevo valor de encabezado: El nuevo valor para reemplazar el valor de encabezado especificado.

    Si no se especifica ningún valor de encabezado, sustituye cualquier valor recibido por el valor especificado al Nombre de encabezado HTTP.

    Ejemplo:example.com

Directiva de reescritura de encabezado

En este ejemplo, la directiva de reescritura de encabezado reemplaza sample.com a example.com en el Host campo de una solicitud de API.

Reescritura de ruta de URI

Esta directiva le ayuda a modificar la ruta de URI de las solicitudes y respuestas de la API. Si quiere reemplazar un segmento en la ruta de la URI, agregue una regla para realizar una de las siguientes acciones:

  • Reemplazar un segmento de ruta : al seleccionar este tipo de acción, especifique lo siguiente:

    • Segmento deruta actual: segmento de ruta que quiere reemplazar.
    • Nuevo segmento de ruta : nuevo segmento de ruta que reemplaza solo al segmento de ruta actual.

    Reemplazar un segmento de ruta

    Por ejemplo, para cambiar una configuración regional en la ruta de la URI de inglés a chino, especifíquela /en-us/ en Segmento de ruta actual. Y especifique /zh-zh en Nuevo segmento de ruta. Reemplaza solo el segmento de ruta y conserva la ruta URI restante.

  • Reemplazar la ruta completa : este tipo de acción reemplaza por completo la ruta de URI de las solicitudes y respuestas de la API por la ruta especificada. Si especifica /example.html en Nuevo segmento de ruta, la ruta de URI de una solicitud o respuesta de la API se cambia a la ruta especificada.

  • Eliminar el segmento de ruta : esta acción elimina el segmento especificado del URI. Por ejemplo, para eliminar la configuración regional en inglés de la ruta URI, especifíquela /en-us/ en Segmento de ruta actual.

  • Insertar un segmento de ruta : esta acción inserta el segmento especificado en la ruta URI. Para aplicar esta regla, especifique la posición en la que quiere insertar el segmento. Y qué segmento quiere insertar.

    Insertar un segmento de ruta

    Por ejemplo, si quiere insertar un segmento justo después de un texto, haga lo siguiente:

    1. Especifique la posición en la que quiere insertar un segmento nuevo.
    2. En Segmento de ruta actual, especifique el texto tras el cual se agregará un segmento nuevo.
    3. En Nuevo segmento de ruta, especifique el segmento que quiere agregar.

Negar

Esta directiva le ayuda a impedir que las solicitudes de API lleguen a sus recursos de API.

Directiva de denegación

Agregar directivas a una implementación de API