¡El Black Friday ya está aquí! Crea una aplicación y disfruta de un 50% de descuento ahora.
Atrás

Inicia sesión con la autenticación de Apple

el 

Como se presentó en la WWDC 2019, con el lanzamiento del nuevo sistema operativo iPhone, iOS 13, Apple introdujo una nueva forma de registrarse para cuentas en aplicaciones y sitios web, llamada "Sign In con Apple ". 
Para abril de 2020, todas las aplicaciones disponibles en la App Store de Apple deben integrar Iniciar sesión con Apple.

​Qué es Sign In con Apple

Sign In con Apple es un servicio de "inicio de sesión único" (SSO) destinado a funcionar en los mismos lugares donde probablemente hayas visto botones para iniciar sesión con tu cuenta de Facebook o Google. En lugar de crear una nueva cuenta para una aplicación o un sitio web con tu dirección de correo electrónico y una contraseña, inicias sesión con tu ID de Apple.

Gracias al botón Sign In con Apple en tu aplicación, las personas pueden iniciar sesión o registrarse con solo un toque usando la ID de Apple y autenticarse fácilmente con Face ID o Touch ID. ¡No más formularios para completar o contraseña para crear y recordar!

Sign In con Apple funciona en todos los dispositivos Apple: dispositivos iOS / iPadOS (iPhone, iPad y iPod touch), Mac, Apple TV y Apple Watch.

Apple también ofrece una solución para dispositivos Android y aplicaciones web (con Sign In con Apple JS )

Desde una perspectiva de seguridad, Apple ofrece una gran opción tanto para usuarios como para desarrolladores con mayor privacidad.

También viene con características que benefician a los desarrolladores de aplicaciones iOS, como soporte de autenticación de dos factores incorporado, detección antifraude y la capacidad de ofrecer un acceso sin interrupciones a tu aplicación con un solo toque.

Los usuarios se benefician del mismo registro rápido e inicio de sesión que con otros servicios (Facebook, Twitter, etc.) pero con el conocimiento de que las aplicaciones no comparten su información, ya que pueden elegir si comparten o no su correo electrónico con el desarrollador de la aplicación.

Si los usuarios deciden no compartir su correo electrónico real, Apple generará una dirección de correo electrónico aleatoria, pero real y verificada, para la aplicación en cuestión, y luego enrutará los correos electrónicos que la aplicación desea enviar a esa dirección. La nueva dirección de correo electrónico generada vendrá en este formato: fc452bd5ea@privaterelay.appleid.com. El usuario puede optar por desactivar esta dirección de correo electrónico de la aplicación en cualquier momento como, por ejemplo, si comienzan a recibir spam.

​Cuáles son los requisitos para integrar Sign In con Apple

Las pautas de Apple establecen que las aplicaciones que utilizan un servicio de inicio de sesión social o de terceros (como Facebook Login y / o Sign in con Twitter) para autenticar la cuenta principal del usuario con la aplicación también deben ofrecer Sign in con Apple como una opción equivalente.

El botón Iniciar sesión con Apple debe estar destacado y en la parte superior de una pila de otros botones de inicio de sesión de terceros.

​Cómo integrar Sign In con Apple en tu aplicación

Primero debes preparar tu aplicación agregando la capacidad a tu aplicación. Esto se puede hacer editándolo en el portal de desarrolladores de Apple o en Xcode.

Una vez hecho esto, debes agregar el botón Sign In con Apple: ASAuthorizationAppleIDButton. (El botón está disponible en 2 formatos: inicie sesión con Apple o Continuar con Apple) y luego agrega una acción. Puedes configurar el botón en blanco o negro para que se adapte mejor al fondo de tu aplicación.

Luego es hora de configurar una solicitud y realizar una autorización. Debes obtener un proveedor de autorización para crear una solicitud de "crear un inicio de sesión" y luego definir su alcance de acción. Para el alcance, hay dos opciones disponibles en este momento: correo electrónico y nombre completo.

Opcionalmente, si tu aplicación requiere esto para la mejor experiencia de usuario, puedes configurar los requestedScopes para el nombre completo y el correo electrónico. Solo debes solicitar esta información si es realmente necesaria para tu aplicación y errar en el lado de la cantidad mínima de información. Una vez que se configura la solicitud, inicialice ASAuthorizationController, configura los delegados para obtener los resultados nuevamente en tu aplicación.

Cuando el usuario realiza la solicitud y proporciona la información solicitada por el alcance solicitado, el ASAuthorizationController regresará con la autorización si el usuario ha autorizado con éxito la aplicación para iniciar sesión con Apple

​Cómo configurar Sign In con Apple en tu aplicación GoodBarber

Para tu aplicación iOS:

Hay tres requisitos para agregar "Sign In con Apple" a tus aplicaciones GoodBarber:

- Es obligatorio haber configurado la autenticación de Facebook o Twitter en tu aplicación.
- Es obligatorio tener tu propia cuenta de desarrollador de Apple
- Esta función solo está disponible para los planes GoodBarber Premium .

Si se trata de un primer envío a la App Store, nuestro equipo agregará Sign In con Apple a tu aplicación durante el proceso de envío.
Si tu aplicación ya está publicada en la App Store, solicita una actualización de tu aplicación iOS. Nuestro equipo agregará Sign In con Apple a tu aplicación durante el proceso de actualización.

En dispositivos que usan iOS 13, el SDK de Apple permite una experiencia de inicio de sesión nativa, usando Face ID, por ejemplo.
Para los dispositivos que usan iOS 12 y versiones anteriores, los usuarios serán redirigidos hacia Safari con una URL personalizada que comienza con "https://appleid.apple.com/auth/authorize". Esta URL contiene los elementos de personalización de parámetros como client_id, la URL de redireccionamiento o el alcance solicitado.
Allí, los usuarios podrán iniciar sesión ingresando su ID y contraseña de Apple.

En PWA, utilizamos el script JS de Apple para mostrar el botón y procesar las solicitudes. La experiencia es de tipo clásico: inicio de sesión (ID de Apple) + contraseña).

En Android, la operación es muy similar a iOS 12, excepto que el usuario nunca abandona la aplicación. La página web de Apple se muestra en la aplicación


Para tu Android y PWA:

Para las versiones de Android y PWA de tu aplicación, una vez que configuras tu autenticación de Facebook o Twitter e inicies sesión con Apple, todo estará configurado para tu aplicación iOS:
  • Para Android, genera y envía tu aplicación a la tienda de Google Play (primer envío) o actualiza tu aplicación de Android ya publicada en la tienda de Google Play
  • Construya o reconstruya tu PWA.

​Mejores prácticas para usar Sign In con Apple

Según lo recomendado por Apple, solo pide a las personas que inicien sesión si les permite beneficiarse del valor agregado (características adicionales, personalización)

Asegurate de ofrecer Sign In con Apple para cada versión de tu aplicación, en todas las plataformas, incluidas las plataformas que no son de Apple y la web.

Retrasa el inicio de sesión el mayor tiempo posible. Las personas a menudo abandonan las aplicaciones cuando se ven obligadas a iniciar sesión antes de hacer algo útil. Dales la oportunidad de familiarizarse con tu aplicación antes de comprometerse. Por ejemplo, una aplicación de transmisión en vivo podría permitir a las personas explorar el contenido disponible antes de iniciar sesión para transmitir algo.