-
Novedades de claves de acceso
Descubre cómo iOS, iPadOS, macOS y visionOS 26 mejoran las claves de acceso. Exploraremos actualizaciones importantes que incluyen: la nueva API de creación de cuentas para un registro simplificado, mantener las claves de acceso actualizadas, nuevas formas de impulsar actualizaciones de claves de acceso a través de actualizaciones automáticas y criterios de valoración de administración de claves, y la importación/exportación segura de claves. Descubre cómo estas mejoras optimizan la experiencia y la seguridad del usuario, y cómo implementar estas actualizaciones en tus apps para brindar una experiencia de autenticación más fluida y segura. Para aprovechar al máximo este video, primero ve “Conoce las claves de acceso” de WWDC22.
Capítulos
- 0:00 - Introducción
- 0:58 - Recorrido de las claves de acceso
- 3:30 - API de creación de cuentas
- 10:48 - Mantén las claves de acceso actualizadas
- 14:41 - Actualizaciones automáticas de claves de acceso
- 16:59 - Criterios de valoración de administración de claves de acceso
- 19:12 - Importación y exportación de claves de acceso
Recursos
- Performing fast account creation with passkeys
- ASCredentialExportManager
- ASCredentialProviderViewController
Videos relacionados
WWDC24
WWDC22
-
Buscar este video…
-
-
6:33 - Account creation
// Account creation @Environment(\.authorizationController) var authorizationController func performPasskeySignUp() async throws { let provider = ASAuthorizationAccountCreationProvider() let request = provider.createPlatformPublicKeyCredentialRegistrationRequest( acceptedContactIdentifiers: [.email, .phoneNumber], shouldRequestName: true, relyingPartyIdentifier: "example.com", challenge: try await fetchChallenge(), userID: try await fetchUserID() ) do { let result = try await authorizationController.performRequest(request) if case .passkeyAccountCreation(let account) = result { // Register new account on backend } } catch ASAuthorizationError .deviceNotConfiguredForPasskeyCreation { showPasswordSignUpForm = true } catch ASAuthorizationError.canceled { showPasswordSignUpForm = true } catch ASAuthorizationError.preferSignInWithApple { await performSignInWithApple() } catch { ... } } -
12:30 - Changing the user name
// Changing the user name try await ASCredentialUpdater() .reportPublicKeyCredentialUpdate( relyingPartyIdentifier: "example.com", userHandle: userHandle, newName: "andrew@example.com" ) -
12:58 - Changing the user name
// Changing the user name await PublicKeyCredential.signalCurrentUserDetails({ rpId: "example.com", userId: userHandle, name: "andrew@example.com", displayName: "andrew@example.com" }); -
13:07 - Revoking a passkey
// Revoking a passkey try await ASCredentialUpdater() .reportAllAcceptedPublicKeyCredentials( relyingPartyIdentifier: "example.com", userHandle: userHandle, acceptedCredentialIDs: acceptedCredentialIDs ) -
13:46 - Revoking a passkey
// Revoking a passkey await PublicKeyCredential.signalAllAcceptedCredentials({ rpId: "example.com", userId: userHandle, allAcceptedCredentalIds: acceptedCredentialIds }); -
14:04 - Removing a password
// Removing a password try await ASCredentialUpdater() .reportUnusedPasswordCredential( domain: "example.com", username: "andrew@example.com" ) -
15:36 - Automatic passkey upgrade
// Automatic passkey upgrade func signIn() async throws { let accountDetails = try await signInWithPassword() guard !accountDetails.hasPasskey else { return } let provider = ASAuthorizationPlatformPublicKeyCredentialProvider( relyingPartyIdentifier: "example.com") let request = provider.createCredentialRegistrationRequest( challenge: try await fetchChallenge(), name: accountDetails.userName, userID: accountDetails.userID, requestStyle: .conditional ) do { let passkey = try await authorizationController.performRequest(request) // Save new passkey to the backend } catch { ... } }
-
-
- 0:00 - Introducción
Toda la industria está trabajando para eliminar las contraseñas en favor de claves de acceso, un método más seguro y fácil de usar que erradica el phishing y agiliza el proceso de inicio de sesión.
- 0:58 - Recorrido de las claves de acceso
Las actualizaciones de iOS, iPadOS, macOS y visionOS facilitan la creación, administración y actualización de claves de acceso, lo que acelera su adopción. La industria está pasando de contraseñas y códigos de SMS/correo electrónico que se pueden suplantar a claves de acceso que no se pueden suplantar. Muchas cuentas ofrecen claves de acceso como método de inicio de sesión adicional, pero el objetivo es eliminar por completo los factores susceptibles de phishing. La adopción de claves de acceso está creciendo rápidamente y las claves de acceso tienen altas tasas de éxito de inicio de sesión. La Alianza FIDO descubrió que el 69% de las personas tienen al menos una clave de acceso, Google descubrió que iniciar sesión con claves de acceso es cuatro veces más exitoso que con contraseñas y TikTok ve una tasa de éxito del 97% con inicios de sesión con claves de acceso.
- 3:30 - API de creación de cuentas
La nueva API de creación de cuentas revoluciona el proceso de registro para las apps. Esta API está disponible en iOS, iPadOS, macOS y visionOS y funciona con la app Contraseñas y administradores de credenciales de terceros. Las personas ahora pueden crear cuentas con claves de acceso directamente, lo que hace que la experiencia sea más fácil de usar y reduce el riesgo de ataques de phishing. El proceso de registro con la API de creación de cuentas es increíblemente sencillo. En lugar de un formulario de varios pasos, una hoja precargada muestra exactamente lo que la app solicita para registrarse y el usuario puede personalizarla. Al finalizar, el sistema genera automáticamente una clave de acceso, que se guarda en la app Contraseñas. Los beneficios de las claves de acceso se extienden más allá del registro. Iniciar sesión es muy sencillo y las claves de acceso se sincronizan automáticamente en todos los dispositivos. La API de creación de cuentas es fácil de adoptar y maneja posibles errores con elegancia, brindando una experiencia de registro fluida incluso si un dispositivo no está configurado para la creación de claves de acceso o ya tiene una cuenta que usa Iniciar sesión con Apple.
- 10:48 - Mantén las claves de acceso actualizadas
Las nuevas API de señal permiten que las apps y los sitios web notifiquen a los administradores de credenciales sobre cambios en la información de la cuenta, como nombres de usuario, direcciones de correo electrónico o cuando se revocan claves de acceso. Esto garantiza que los administradores de credenciales permanezcan actualizados, evitando confusiones y problemas de inicio de sesión. Por ejemplo, cuando alguien actualiza su dirección de correo electrónico en una app, la app envía una señal inmediatamente al administrador de credenciales, que luego actualiza sus registros. Estas API admiten cuentas sin contraseñas, que son las cuentas más seguras. Las API también informan a los administradores de credenciales cuando las contraseñas ya no son necesarias, lo que mejora la seguridad general y la experiencia del usuario.
- 14:41 - Actualizaciones automáticas de claves de acceso
Las actualizaciones automáticas de claves de acceso mejoran la seguridad de la cuenta para aquellos que todavía inician sesión con contraseñas sin generar fricción. Después de un inicio de sesión con contraseña exitoso, las apps y los sitios web pueden crear claves de acceso en segundo plano. Una notificación informa cuando se agrega una clave de acceso, lo que proporciona una opción de inicio de sesión más simple y segura en el futuro. La contraseña sigue siendo válida y el proceso de actualización se realiza en cada intento de inicio de sesión con contraseña si aún no existe una clave de acceso.
- 16:59 - Criterios de valoración de administración de claves de acceso
Al implementar la URL estándar y conocida para los puntos finales de administración de claves de acceso, los sitios web pueden vincular directamente a los administradores de credenciales con sus páginas de inscripción y administración de claves de acceso. Este enfoque agiliza el proceso de actualización de claves de acceso, de modo que las personas puedan cambiar fácilmente las contraseñas dentro de sus administradores de credenciales. La respuesta JSON del servidor debe incluir URL para inscripción y administración, debe presentarse con un código de estado "200 OK" y debe ser accesible para todos los agentes de usuario, incluidas las apps y los navegadores web.
- 19:12 - Importación y exportación de claves de acceso
Ahora es posible transferir de forma segura las claves de acceso entre las apps de administración de credenciales participantes en iOS, iPadOS, macOS y visionOS 26. Este proceso iniciado por el usuario, protegido mediante autenticación local como Face ID, reduce el riesgo de fugas de credenciales. La transferencia utiliza un esquema de datos estandarizado desarrollado por FIDO Alliance, lo que garantiza la compatibilidad entre apps. Ofrezca la mejor experiencia de autenticación y ayude a las personas a avanzar hacia un futuro más seguro sin contraseñas. Adopte la API de creación de cuentas para una incorporación segura y rápida, mantenga las claves de acceso actualizadas mediante la API de señal, habilite actualizaciones automáticas de claves de acceso y admita puntos finales de administración de claves de acceso.