
Acceso de las apps a las contraseñas guardadas
Las apps de iOS, iPadOS y macOS pueden solicitar la ayuda del llavero “Autorrelleno de contraseñas” con el inicio de sesión de un usuario mediante ASAuthorizationPasswordProvider
y SecAddSharedWebCredential
. El proveedor de la contraseña y su solicitud se pueden usar junto con “Iniciar sesión con Apple” para que se llame a la misma API para ayudar a los usuarios a iniciar sesión en una app, independientemente de si la cuenta de usuario se basa en una contraseña o se creó mediante “Iniciar sesión con Apple”.
Las apps solo pueden acceder a las contraseñas guardadas si tanto el desarrollador de la app como el administrador del sitio web han dado su aprobación y el usuario, su consentimiento. Los desarrolladores de apps incluyen una autorización en su app para expresar su intención de acceder a las contraseñas guardadas de Safari. La autorización enumera los nombres de dominio completos de los sitios web asociados. Por su parte, los sitios web deben colocar un archivo en su servidor en el que figuren los identificadores de apps únicos de las apps que Apple ha aprobado.
Cuando se instala una app con la autorización com.apple.developer.associated‑domains, iOS y iPadOS envían una solicitud de TLS a cada sitio web de la lista para solicitar uno de los archivos siguientes:
apple‑app‑site‑association
.well-known/apple-app-site-association
Si el archivo incluye el identificador de apps de la app que se está instalando, iOS y iPadOS marcarán que el sitio web y la app tienen una relación de confianza. Las llamadas a estas dos API solo generan una solicitud para el usuario cuando existe una relación de confianza; para que se lleve a cabo la entrega de contraseñas a la app o para que se actualicen o eliminen, es necesaria la aceptación del usuario.