Todos sabemos que la seguridad en línea es muy importante, por lo que muchos de nosotros hemos comenzado a utilizar varios métodos de autenticación de dos factores.
"Tu código de verificación de Google es 431973"
Pero cada vez que recibo este mensaje cuando quiero iniciar sesión, pienso: ¡vamos! Quiero estar seguro, pero ¿cuántas veces tengo que decirte:"Soy yo, Google"? Con la seguridad, normalmente no se puede tener el pastel y comérselo también... ¿o sí? ¡Aquí es donde entra en juego Tasker Authentication Helper! Aunque conozco la función de inicio de sesión desde el teléfono de Google, este proyecto va más allá y debería funcionar con cualquier tipo de autenticación de dos factores basada en SMS. Lo que haremos es recuperar el token de un mensaje de texto y enviarlo a otros dispositivos mediante Join.
Asistente de autenticación de dos factores de Tasker
Debo admitir que, con frecuencia, los perfiles más simples son los que resuelven los problemas más molestos. Tasker Authentication Helper es muy simple, aunque me llevó un tiempo fallar miserablemente con las expresiones regulares (regex). No he podido encontrar una sola fórmula de expresiones regulares para hacer todo esto en un solo paso, pero el perfil funciona bien con 2 filtros de expresiones regulares trabajando juntos. Si eres un profesional en expresiones regulares, ¡no dudes en combinar ambas fórmulas y avísame!
Si está REALMENTE preocupado por los dispositivos con los que comparte este portapapeles, puede limitar los dispositivos que reciben el código a una PC activa en Tasker.
Activador de Tasker de vainilla
Si bien, personalmente, prefiero usar el complemento pago AutoNotification Tasker para interceptar las notificaciones SMS, puedes realizar toda esta configuración usando soloTasker, sin ningún complemento pago. La configuración básica verifica cada mensaje recibido (evento de mensaje de texto recibido) e intenta analizar su contenido. El mensaje de texto se almacena en la variable del sistema%SMSRB.
Activador de notificación automática
A diferencia del disparador de Tasker original, al usar la intercepción de AutoNotification podemos ejecutar la tarea solo si el mensaje de texto contiene las palabras "pin" o "código". De esta manera, el perfil de Tasker no se ejecutará en cada mensaje de texto recibido. Estoy usando el disparador de intercepción de AutoNotification para interceptar el mensaje. Un filtro simple del texto de notificación: %antext (pin|código) establecido en el contexto garantizará que no comience a asignar ningún valor sin una razón. No ejecutemos la tarea si no es necesario.
Cómo obtener el código de autenticación de dos factores
Para extraer el código de un mensaje de texto, vamos a utilizar dos filtros de expresiones regulares. Esto debería evitar que se asignen valores incorrectos:
- Un texto con un número, pero sin pin ni palabra clave.
- Un texto con un número que no es un pin o código.
- Un texto con varios números. Captura la primera coincidencia después del código/PIN.
- Un texto con varios números donde la palabra código/pin se coloca después del código.
Si está utilizando el disparador Vanilla Tasker, reemplace%antextcon%SMSRB.
Pruebe el mensaje para asegurarse de que sus mensajes se filtren adecuadamente.
Asistente de autenticación de Tasker: expresiones regulares
Para capturar el código real, voy a utilizar expresiones regulares. Tengo varias variaciones diferentes almacenadas en mi teléfono y las voy a utilizar como ejemplo. Intenté cubrir la mayor cantidad de escenarios posibles, pero si el texto de verificación queda fuera del alcance de mis filtros de expresiones regulares, tendrás que modificarlo según tus necesidades.
Comencemos capturando los números después de las palabras PIN/CODE (sin distinguir entre mayúsculas y minúsculas). Estoy usandowww.regex101.compara ayudar con esto.
(código|pin).*?\d+
El resultado es bueno, pero fallé con el último ejemplo. Nuestras coincidencias son:
El código es 431973Código:895941
El PIN es 4044
Usando la acción de búsqueda/reemplazo, almacenaré las coincidencias en una matriz%code. Nuestra coincidencia se colocará en el primer elemento:%code1. El%code1no se establecerá si el texto de verificación sigue al último ejemplo. Si ese es el caso, puedo establecer otro filtro Regex:
^(.*?)\d+
En lugar de crear un filtro Regex muy complicado (y principalmente porque es una tarea que supera mis conocimientos sobre Regex), simplemente filtraré los resultados nuevamente. En ambas circunstancias, el segundo filtro será el mismo:
\d+
El resultado del segundo filtro se almacena en la matriz%auth como el primer elemento%auth1. Esta variable se utiliza para configurar un portapapeles y se comparte con otros dispositivos a través de la aplicación Join.
Conclusión
El proyecto Tasker Authentication Helper funciona rápido y ayuda a acelerar los tiempos de inicio de sesión. Creo que me estoy volviendo demasiado viejo para recordar los números cortos, o simplemente demasiado viejo para buscar mi móvil cada vez que quiero iniciar sesión en cualquier lugar sin comprometer mi seguridad. El archivo de proyecto a continuación contiene ambas configuraciones (básica y de notificación automática). Elija una y deshabilite el otro perfil.
Descargue el proyecto de ayuda para la autenticación de dos factores de Tasker
Descarga el archivo ZIP anterior y extrae el contenido en el almacenamiento interno de tu dispositivo Android. Abre Tasker y desactiva el "Modo principiante" en Preferencias. Luego, vuelve a la página principal de Tasker y mantén presionado el ícono de inicio en la esquina inferior izquierda. Verás una opción para "importar" un proyecto. Pulsa esa opción y luego busca el archivo .prj.xml que extrajiste anteriormente. Una vez importado, verás una nueva pestaña en la parte inferior junto al ícono de inicio predeterminado en Tasker. Esta contiene los perfiles y las tareas de este proyecto auxiliar.
Sigue el canalde tutoriales de XDA-Developers para ver más publicaciones como esta. Además, consulta nuestro foro deconsejos y trucos de Tasker para conocer las últimas creaciones de los entusiastas de la automatización de nuestra comunidad.