28 votos

¿Qué puede hacer una aplicación con el permiso de "USO DE CUENTAS EN EL DISPOSITIVO"?

¿Puede tal aplicación leer libremente mis emails/calendario/mensajes/docs/etc.?

El permiso de "CUENTAS DE USO EN EL DISPOSITIVO" también es conocido por los desarrolladores como Android.permission.USE_CREDENCIALES .

Ejemplo de este tipo de aplicaciones: WhatsApp , MightyText .

1 votos

He encontrado un ejemplo de la API de Android de lo que se puede hacer usando este permiso: goo.gl/gjkJB . Desde mi punto de vista como desarrollador, esto significa un acceso a TODO . Una vez que un usuario tiene el token de una cuenta, puede acceder a cualquier servicio que ésta ofrezca: El flujo de Facebook, los correos electrónicos de Google TODO .

0 votos

TBH, muchos usuarios no leer los permisos en play store y descargar a ciegas, no sé si realmente hacer ¡leer lo que la play store les dice antes de la descarga como en el listado de los permisos, como tratarlo como una cosa de EULA y saltarlo a la siguiente parte... solo digo... pero estás implicando que el permiso es "OMG, mis correos electrónicos pueden ser fisgoneados" basado en la mayúscula de énfasis en la palabra todo, sí, una mala aplicación puede hacer todo tipo con ella! Solo hay que usar el sentido común :)

0 votos

Eso es en relación a cualquier cosa que tenga o use tokens y credenciales OAuth como correos electrónicos, facebook, calendario, pero para los mensajes como en los SMS de texto, se requiere READ_SMS_PERMISSION... solo digo...

35voto

Andy Brudtkuhl Puntos 1714

Android tiene un sistema centralizado de administración de credenciales para servicios en línea (como su cuenta de Google). Uno de los componentes se llama AccountManager . Algunas aplicaciones pueden actuar como un autentificador de cuentas ". Esto significa que entienden cómo acceder a un servicio en línea particular, y pueden acceder a ese servicio para el AccountManager . Otras aplicaciones quieren usar esa información de inicio de sesión para identificarte o realizar acciones en tu nombre, sin que tengas que introducir tu contraseña cada vez.

Ejemplo: acceder a Google

Tu teléfono tiene una aplicación integrada que "actúa como un autentificador de cuenta" para tu cuenta de Google. Sabe cómo acceder a Google, y tiene el correo electrónico y la contraseña que introdujiste cuando configuraste el teléfono. También hay una aplicación de YouTube, que quiere iniciar sesión para mostrar tus vídeos favoritos y permitirte comentarlos, pero sin tener que volver a introducir tu correo electrónico y tu contraseña.

Esta aplicación de YouTube habla con el AccountManager y pregunta si tiene alguna credencial para una cuenta de Google. Hacer esta pregunta requiere el permiso de "encontrar cuentas en el dispositivo". El AccountManager tiene una lista de autentificadores instalados en el teléfono, que consulta para responder a esta pregunta. Si tiene alguna credencial, la aplicación preguntará por lo que se conoce como un authtoken para la cuenta de Google. Esta solicitud requiere que el " utilizar las cuentas en el dispositivo "Permiso".

El AccountManager luego te pregunta si quieres que la aplicación solicitante (YouTube) pueda usar la cuenta solicitada (cuenta de Google). Esto puede ser en un diálogo que aparece sobre la aplicación, o en una notificación. Como alternativa, la aplicación puede optar por no hacer nada si aún no has respondido afirmativamente a esta pregunta: es posible que quiera preguntar más tarde en un momento más conveniente. Este paso garantiza que una aplicación con el permiso de "usar cuentas en el dispositivo" no pueda usar inmediatamente todas las cuentas sin preguntar.

Si dices que sí, el AccountManager reenvía la solicitud al autentificador (la aplicación incorporada de Google). Lo que sucede a continuación depende del autentificador y del servicio particular al que se está conectando. Es posible que tenga que iniciar sesión si no lo ha hecho antes, y para ello puede necesitar un nombre de usuario y una contraseña, una foto, un SMS o cualquier otra cosa. Sea lo que sea que haga el autentificador, puede fallar o devolver un authtoken a la aplicación solicitante.

Otras comprobaciones

El autentificador y el servicio en línea también pueden controlar qué acciones puede realizar la aplicación solicitante. Por ejemplo, cuando conectas una aplicación a tu cuenta de Google, Google enumera los permisos que la aplicación necesita (como "subir vídeos" para YouTube). Por lo tanto, la aplicación sólo puede realizar las acciones indicadas. Sin embargo, es posible que algunos servicios no tengan nada de eso; para un servicio de este tipo, una vez que hayas permitido que la aplicación utilice tus credenciales, puede tomar cualquier acción en tu nombre.

Una vez que la aplicación solicitante ha obtenido el authtoken, puede seguir utilizándolo para realizar acciones en su nombre sin ninguna otra interacción por su parte. Es decir, una vez que has aceptado que el cliente de Twitter de Dan puede publicar en tu Twitter, puede funcionar en segundo plano y publicar más tweets sin que tú lo sepas. Sólo deberías conceder a la aplicación acceso a tus credenciales si confianza no para hacer eso.

Resumen

Una aplicación con el " utilizar las cuentas en el dispositivo " puede, una vez instalado, te preguntaré para acceder a un servicio en línea (como Google, Facebook o Twitter) en tu nombre. Puedes elegir si quieres que acceda al servicio o no. Si le permite acceder al servicio, ¿qué acciones puede realizar en su nombre? podría estar limitado por el servicio (depende del servicio), y el servicio podría le permiten revocar ese permiso más tarde (normalmente a través de una lista de "aplicaciones conectadas" en el sitio web del servicio).

0voto

Encontré este ejemplo en la API de Android de lo que se puede hacer con ese permiso.

Desde mi punto de vista como desarrollador, esto significa acceso a TODO .

Una vez que un usuario tiene el token de una cuenta, puede acceder a cualquier servicio que ofrezcan las cuentas: El flujo de Facebook, los correos electrónicos de Google TODO .

0 votos

No estoy 100% seguro pero creo que hay una pantalla de "Seleccionar cuenta" antes de que la aplicación pueda acceder y utilizar el Auth Token. El permiso por sí solo no es suficiente para acceder a la cuenta de un usuario.

2 votos

No del todo: añada la palabra "casi" antes. Como sugiere el nombre del privilegio: puede utilice la información de la cuenta, pero no cambiar de la misma. Por lo que sé, puede "autenticar en nombre del usuario", pero sin llegar a conocer las credenciales en sí. Así que sí: podría leer tu correo, e incluso publicarlo en Facebook. Pero no podría espiar tu contraseña. Aun así, se trata de un privilegio sensible.

0 votos

Esta respuesta es incorrecta, ya que no puede cambiar la contraseña de la cuenta con este tipo de acceso, por lo que no tiene acceso a "todo".

-1voto

Kasian Mwagike Puntos 1

La aplicación no accederá a ninguna cuenta de servicios. Algunas aplicaciones necesitan este permiso porque necesitan abrir una nueva cuenta desde su aplicación.

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X