Configuración reCaptcha para autenticación nFactor
Citrix Gateway admite una nueva acción de primera clase ‘CaptchaAction’ que simplifica la configuración de reCAPTCHA. Como reCAPTCHA es una acción de primera clase, puede ser un factor propio. Puede inyectar reCAPTCHA en cualquier lugar del flujo de nFactor.
Anteriormente, también tenía que escribir directivas WebAuth personalizadas con cambios en la interfaz de usuario RFWeb. Con la introducción de CaptchaAction, no es necesario modificar el JavaScript.
Importante
Si se utiliza reCAPTCHA junto con los campos de nombre de usuario o contraseña en el esquema, el botón de envío se inhabilita hasta que se cumpla reCAPTCHA.
Configuración de reCAPTCHA
La configuración reCAPTCHA consta de dos partes.
- Configuración en Google para registrar reCAPTCHA.
- Configuración en el dispositivo Citrix ADC para utilizar reCAPTCHA como parte del flujo de inicio de sesión.
Configuración de reCAPTCHA en Google
Registre un dominio para reCAPTCHA en https://www.google.com/recaptcha/admin.
-
Cuando vaya a esta página, aparece la siguiente pantalla.
Nota
Utilice reCAPTCHA v2 solamente. Invisible ReCAPTCHA aún está en Beta.
-
Después de registrar un dominio, se muestran “SiteKey” y “SecretKey”.
Nota
Las “SiteKey” y “SecretKey” aparecen atenuadas por razones de seguridad. “Secret Key” debe mantenerse a salvo.
Configuración de reCAPTCHA en el dispositivo Citrix ADC
La configuración de reCAPTCHA en el dispositivo Citrix ADC se puede dividir en tres partes:
- Mostrar la pantalla reCaptcha
- Publicar la respuesta reCAPTCHA en el servidor de Google
- La configuración LDAP es el segundo factor para el inicio de sesión del usuario (opcional)
Mostrar la pantalla reCaptcha
La personalización del formulario de inicio de sesión se realiza a través del esquema de inicio de sesión SingleAuthCaptcha.xml. Esta personalización se especifica en el servidor virtual de autenticación y se envía a la interfaz de usuario para representar el formulario de inicio de sesión. El esquema de inicio de sesión integrado, SingleAuthCaptcha.xml, se encuentra en el directorio /nsconfig/LoginSchema/LoginSchema del dispositivo Citrix ADC.
Importante
- En función de su caso de uso y de diferentes esquemas, puede modificar el esquema existente. Por ejemplo, si necesita solo factor reCAPTCHA (sin nombre de usuario ni contraseña) o autenticación dual con reCAPTCHA.
- Si se realizan modificaciones personalizadas o se cambia el nombre del archivo, Citrix recomienda copiar todos los LoginSchemas del directorio /nsconfig/LoginSchema/LoginSchema al directorio principal, /nsconfig/loginschema.
Para configurar la visualización de reCAPTCHA mediante CLI
add authentication loginSchema singleauthcaptcha -authenticationSchema /nsconfig/loginschema/SingleAuthCaptcha.xml
add authentication loginSchemaPolicy singleauthcaptcha -rule true -action singleauthcaptcha
add authentication vserver auth SSL <IP> <Port>
add ssl certkey vserver-cert -cert <path-to-cert-file> -key <path-to-key-file>
bind ssl vserver auth -certkey vserver-cert
bind authentication vserver auth -policy singleauthcaptcha -priority 5 -gotoPriorityExpression END
Publicar la respuesta reCAPTCHA en el servidor de Google
Después de configurar el reCAPTCHA que debe mostrarse a los usuarios, los administradores publican la configuración al servidor de Google para verificar la respuesta de reCAPTCHA desde el explorador.
Para verificar la respuesta de reCAPTCHA desde el explorador
add authentication captchaAction myrecaptcha -sitekey <sitekey-copied-from-google> -secretkey <secretkey-from-google>
add authentication policy myrecaptcha -rule true -action myrecaptcha
bind authentication vserver auth -policy myrecaptcha -priority 1
Se requieren los siguientes comandos para configurar si se quiere la autenticación de AD. De lo contrario, puede ignorar este paso.
add authentication ldapAction ldap-new -serverIP x.x.x.x -serverPort 636 -ldapBase "cn=users,dc=aaatm,dc=com" -ldapBindDn adminuser@aaatm.com -ldapBindDnPassword <password> -encrypted -encryptmethod ENCMTHD_3 -ldapLoginName sAMAccountName -groupAttrName memberof -subAttributeName CN -secType SSL -passwdChange ENABLED -defaultAuthenticationGroup ldapGroup
add authenticationpolicy ldap-new -rule true -action ldap-new
La configuración LDAP es el segundo factor para el inicio de sesión del usuario (opcional)
La autenticación LDAP ocurre después de reCAPTCHA, se agrega al segundo factor.
add authentication policylabel second-factor
bind authentication policylabel second-factor -policy ldap-new -priority 10
bind authentication vserver auth -policy myrecaptcha -priority 1 -nextFactor second-factor
El administrador debe agregar servidores virtuales apropiados en función de si se utiliza el servidor virtual de equilibrio de carga o el dispositivo Citrix Gateway para el acceso. El administrador debe configurar el siguiente comando si se requiere un servidor virtual de equilibrio de carga:
-
add lb vserver lbtest HTTP <IP> <Port> -authentication ON -authenticationHost nssp.aaatm.com
nssp.aaatm.com: Resuelve el servidor virtual de autenticación.
Validación de usuario de reCAPTCHA
Una vez que haya configurado todos los pasos mencionados en las secciones anteriores, debe ver las capturas de pantalla de la interfaz de usuario que se muestran a continuación.
-
Una vez que el servidor virtual de autenticación carga la página de inicio de sesión, se muestra la pantalla de inicio de sesión. Iniciar sesión está inhabilitado hasta que se complete ReCAPTCHA.
-
Seleccione No soy una opción de robot. Se muestra el widget ReCAPTCHA.
- Se navega a través de una serie de imágenes reCAPTCHA, antes de que se muestre la página de finalización.
-
Introduzca las credenciales de AD, active la casilla de verificación No soy un robot y haga clic en Iniciar sesión. Si la autenticación se realiza correctamente, se le redirigirá al recurso deseado.
Notas
- Si se utiliza ReCAPTCHA con autenticación de AD, el botón Enviar para credenciales se inhabilita hasta que se complete ReCAPTCHA.
- El reCAPTCHA ocurre en un factor propio. Por lo tanto, cualquier validación posterior como AD debe ocurrir en el ‘nextfactor’ de reCAPTCHA.