Autenticación OAuth

La función de administración de tráfico de autenticación, autorización y auditoría ahora es compatible con los mecanismos OAuth y OpenID-Connect para autenticar y autorizar a los usuarios a aplicaciones alojadas en aplicaciones como Google, Facebook y Twitter.

El mecanismo de autenticación facilita la verificación en línea de tokens OpenID. El dispositivo Citrix ADC se puede configurar para obtener certificados y verificar las firmas en el token.

Una ventaja importante de utilizar los mecanismos OAuth y OpenID-Connect es que la información del usuario no se envía a las aplicaciones alojadas. Por lo tanto, el riesgo de robo de identidad se reduce considerablemente.

El dispositivo Citrix ADC configurado para autenticación, autorización y auditoría ahora acepta tokens entrantes firmados con el algoritmo HMAC HS256. Además, las claves públicas del proveedor de identidad (IdP) SAML se leen desde un archivo, en lugar de aprender desde un extremo de URL.

En la implementación de Citrix ADC, el servidor virtual de administración de tráfico de autenticación, autorización y auditoría accede a la aplicación. Por lo tanto, para configurar OAuth, debe configurar una directiva OAuth que luego debe asociarse con un servidor virtual de administración de tráfico de autenticación, autorización y auditoría.

Nota

OAuth en el dispositivo Citrix ADC está calificado para todos los IDP SAML que cumplan con “OpenID connect 2.0”.

Para configurar OAuth mediante la utilidad de configuración:

  1. Configure la acción y la directiva OAuth.

    Vaya a Seguridad > AAA - Tráfico de aplicaciones > Directivas > Autenticación > Directivas avanzadas > Directiva, cree una directiva con OAuth como tipo de acción y asocie la acción OAuth requerida a la directiva.

  2. Asocie la directiva OAuth a un servidor virtual de autenticación.

    Vaya a Seguridad > AAA - Tráfico de aplicaciones > Servidores virtualesy asocie la directiva OAuth con el servidor virtual de autenticación.

Nota

Los atributos (1 a 16) se pueden extraer en la respuesta OAuth. Actualmente estos atributos no se evalúan. Se agregan para referencia futura.

Para configurar OAuth mediante la interfaz de línea de comandos:

  1. Defina una acción OAuth.

    add authentication OAuthAction <name> -authorizationEndpoint <URL> -tokenEndpoint <URL> [-idtokenDecryptEndpoint <URL>] -clientID <string> -clientSecret <string> [-defaultAuthenticationGroup <string>][-tenantID <string>][-GraphEndpoint <string>][-refreshInterval <positive_integer>] [-CertEndpoint <string>][-audience <string>][-userNameField <string>][-skewTime <mins>][-issuer <string>][-Attribute1 <string>][-Attribute2 <string>][-Attribute3 <string>]...

  2. Asocie la acción a una directiva de autenticación avanzada.

    add authentication Policy** <name> -rule <expression> -action <string>

    Ejemplo

    add authentication oauthAction a -authorizationEndpoint https://example.com/ -tokenEndpoint https://example.com/ -clientiD sadf -clientsecret df
    

Para obtener más información sobre los parámetros de autenticación OAuthAction, consulte autenticación OAuthAction.

Nota

Cuando se especifica certEndpoint, el dispositivo Citrix ADC sondea ese dispositivo de punto final con la frecuencia configurada para aprender las claves. Para configurar un Citrix ADC para que lea el archivo local y analice las claves de ese archivo, se introduce una nueva opción de configuración de la siguiente manera.

set authentication OAuthAction <> -**CertFilePath** <path to local file with jwks>

Compatibilidad con atributos nombre-valor para la autenticación OAuth

Ahora puede configurar atributos de autenticación OAuth con un nombre único junto con valores. Los nombres se configuran en el parámetro de acción OAuth como “Atributos” y los valores se obtienen consultando los nombres. Los atributos extraídos se almacenan en sesión de autenticación, autorización y auditoría. Los administradores pueden consultar estos atributos mediantehttp.req.user.attribute("attribute name") ohttp.req.user.attribute(1), en función del método elegido para especificar nombres de atributo.

Al especificar el nombre del atributo, los administradores pueden buscar fácilmente el valor del atributo asociado con ese nombre de atributo. Además, los administradores ya no tienen que recordar el “atributo1 a atributo16” solo por su número.

Importante

En un comando OAuth, puede configurar un máximo de 64 atributos separados por comas con un tamaño total inferior a 1024 bytes.

Nota

El error de sesión se puede evitar si el tamaño total del valor de “atributo 1 al atributo 16” y los valores de los atributos especificados en “Atributos” no superan los 10 KB.

Para configurar los atributos nombre-valor mediante la CLI

En el símbolo del sistema, escriba:

  • add authentication OAuthAction <name> [-Attributes <string>]
  • set authentication OAuthAction <name> [-Attributes <string>]

Ejemplos:

  • add authentication OAuthAction a1 –attributes "email,company" –attribute1 email
  • set authentication OAuthAction oAuthAct1 -attributes "mail,sn,userprincipalName"