Articulo de referencia

Gestión de credenciales

La gestión de credenciales, también conocida como sistema de gestión de credenciales (CMS, por sus siglas en inglés), es un software consolidado que se utiliza para emitir y ges...

La gestión de credenciales, también conocida como sistema de gestión de credenciales (CMS, por sus siglas en inglés), es un software consolidado que se utiliza para emitir y gestionar credenciales como parte de la infraestructura de clave pública (PKI, por sus siglas en inglés) y FIDO2.

El software CMS es utilizado por gobiernos y empresas para implementar una autenticación de dos factores (2FA) robusta para empleados y ciudadanos. El CMS se integra con los componentes de PKI para proporcionar una solución unificada que permite a los departamentos de TI emitir y administrar credenciales para una amplia gama de dispositivos, incluyendo tarjetas inteligentes, memorias USB, teléfonos inteligentes, computadoras portátiles y de escritorio. [ 1 ]

La gestión de credenciales es también una interfaz de programación de aplicaciones (API) propuesta que está desarrollando el Consorcio World Wide Web para estandarizar aspectos de cómo los gestores de contraseñas utilizados por los agentes de usuario web ( navegadores web y otras aplicaciones) crean, almacenan, utilizan y modifican combinaciones de nombre de usuario y contraseña para los inicios de sesión, además de la gestión de credenciales " federadas " (como tokens de inicio de sesión único ) por parte de los agentes de usuario. La API está siendo desarrollada por el Grupo de Trabajo de Seguridad de Aplicaciones Web del W3C y ha estado en estado de borrador de trabajo desde abril de 2016. Es una propuesta en la vía de recomendación, que se espera que se convierta en un estándar aceptado, pero puede sufrir cambios significativos antes de que eso ocurra. [ 2 ] [ 3 ] La API de gestión de credenciales ya ha sido ampliada por la propuesta WebAuthn (Autenticación Web), que alcanzó el estado de Recomendación Candidata en abril de 2018 y añade la capacidad de gestionar la autenticación de clave pública . [ 4 ]

Es común que los navegadores web modernos puedan almacenar e ingresar automáticamente nombres de usuario y contraseñas para iniciar sesión en sitios web, aunque a menudo han utilizado heurísticas subóptimas para adivinar qué campos de formulario y datos deben completarse/almacenarse, lo que resulta en un comportamiento inconsistente y, a veces, erróneo. Los navegadores también pueden tener problemas para completar formularios de inicio de sesión para identidades federadas, como cuando un usuario que se conecta a un sitio web utiliza una cuenta de un servicio web de terceros (como Facebook , Google o Twitter ) para autenticarse y proporcionar información de identidad. La especificación de Gestión de Credenciales también busca simplificar el proceso de cambio de contraseñas para que la contraseña almacenada localmente en el cliente se pueda actualizar al mismo tiempo que se modifica en el servidor.

Google Chrome ha incluido cierto soporte para la administración de credenciales desde la versión 51, [ 5 ] publicada en mayo de 2016, [ 6 ] y Opera ha incluido soporte desde la versión 44, [ 5 ] publicada en abril de 2017. [ 7 ] Mozilla Firefox incluye un subconjunto de la API para admitir WebAuthn desde la versión 60, publicada en mayo de 2018. [ 8 ]

API

Según el borrador de trabajo de agosto de 2017, [ 9 ] los agentes de usuario que admiten la API de administración de credenciales deben implementar un "almacén de credenciales" para el almacenamiento persistente de objetos de credenciales, y también deben incluir un "selector de credenciales" para permitir a los usuarios interactuar con los objetos y permitir o denegar su uso para iniciar sesión. Idealmente, las credenciales tendrán un nombre y un favicon asociados, quizás junto con otra información relacionada, para ayudar a distinguir para qué sitio web o servicio se utilizan, así como la capacidad de diferenciar las credenciales para varias cuentas en el mismo sitio.

La API define cuatro métodos JavaScript principales que exponen la CredentialsContainerinterfaz: navigator.credentials.create(), navigator.credentials.store(), navigator.credentials.get(), y navigator.credentials.preventSilentAccess(). También especifica el Credentialobjeto de interfaz de nivel superior, con tipos de objeto descendientes PasswordCredentialy FederatedCredential. (WebAuthn también define un PublicKeyCredentialobjeto de interfaz). La API solo está disponible cuando un agente de usuario está conectado a un sitio web seguro ( HTTPS ). Los navegadores aún pueden implementar el autocompletado de la información de inicio de sesión en sitios no seguros, pero no deben permitir que dichos sitios se beneficien de la automatización que proporciona la API, ya que podría conducir a la exposición accidental de contraseñas u otras credenciales. Además, el acceso a la API solo está permitido en ventanas de nivel superior, y no dentro de elementos u otros contextos de navegación anidados.<iframe>

Este navigator.credentials.create()método se utiliza para construir objetos de credenciales en memoria y store()activa la escritura de un objeto en el almacén de credenciales tras un inicio de sesión exitoso. get()Solicita credenciales potencialmente relevantes del almacenamiento, las cuales pueden presentarse al usuario en un selector de credenciales. Al realizar solicitudes de recuperación, los agentes de usuario deben solicitar autorización al usuario de forma predeterminada, aunque la interfaz de usuario puede permitir establecer un indicador que permita la autorización "silenciosa" sin presentar una solicitud. Un sitio web puede restablecer dicho indicador con el preventSilentAccess()método, recomendado para su uso al cerrar sesión.

Véase también

Referencias

  1. "Sistema de gestión de credenciales - MyID CMS" . Interceder . Archivado del original el 31/07/2019 . Recuperado el 31/07/2019 .
  2. West, Mike, ed. (2017-08-04). "Gestión de credenciales Nivel 1" . W3C. Archivado del original el 18-07-2018 . Recuperado el 12-05-2018 .
  3. "Grupo de trabajo de seguridad de aplicaciones web del W3C" . Consultado el 12 de mayo de 2018 .
  4. Balfanz; et al. (2018-03-20). "Autenticación web: una API para acceder a credenciales de clave pública de nivel 1" . W3C. Archivado del original el 3 de diciembre de 2020. Recuperado el 12 de mayo de 2018 . 
  5. 1 2 "API de administración de credenciales" . MDN Web Docs . Mozilla. 2018-02-20. Archivado del original el 2018-05-14 . Recuperado el 2018-05-13 .
  6. "Actualización del canal estable" . Lanzamientos de Chrome . 25/05/2016. Archivado del original el 03/06/2018 . Consultado el 13/05/2018 .
  7. Mielczarczyk, Kornelia (5 de abril de 2017). "Actualización estable de Opera 44.0.2510.1159" . Blogs de ópera . Consultado el 13 de mayo de 2018 .
  8. "Firefox — Notas (60.0) — Mozilla" . Mozilla. 9 de mayo de 2018. Archivado del original el 9 de mayo de 2018. Consultado el 13 de mayo de 2018 .
  9. West, Mike, ed. (4 de agosto de 2017). "Gestión de credenciales Nivel 1, Borrador de trabajo del W3C, 4 de agosto de 2017" . Archivado del original el 13 de mayo de 2018. Recuperado el 12 de mayo de 2018 .
  • Gestión de credenciales Nivel 1
  • Grupo de trabajo sobre seguridad de aplicaciones web del W3C