Безопасность Менеджера учетных записей Android

Я задавал этот вопрос раньше, но не получил подходящих ответов, так что начну снова. Как Android AccountManager, который используется для хранения ваших имен пользователей и паролей Google, Facebook, Twitter и т. д., обеспечивает безопасность. Например, если мой телефон рутирован, стороннее приложение не может прочитать пароли учетных записей, где бы они ни находились. Я полагаю, что менеджер учетных записей должен хранить эти пароли где-то на устройстве, наш вход в систему не будет работать, особенно если устройство находится в автономном режиме. Спасибо за ваши объяснения.

Мы не можем заглянуть в источники, но это не обязательно хранит пароли. Токена, полученного с сервера, может быть достаточно (и это то, что обычно используется, поэтому при деавторизации устройства вам не нужно менять свой пароль, поскольку он просто делает назначенный токен недействительным).
Интересно, кажется, теперь я понимаю. Возможно, вы сможете сделать это ответом. Но почему исходники недоступны? Я думал, что Android с открытым исходным кодом. Спасибо.
Иззи, система, которую вы описываете, использует OpenID? Спасибо.
Итак, если я не в сети, менеджер учетных записей будет бесполезен для автономных приложений?
Смотрите мой ответ ниже (время для очистки комментариев). Не думаю, что он использует OpenID, но точно сказать не могу.

Ответы (1)

Мы не можем заглянуть в источники Google AccountManager: в то время как сам Android является открытым исходным кодом, приложения Google — нет. Но мы можем сделать обоснованное предположение:

В этом случае нет необходимости хранить пароли на устройстве. Вы один раз вводите свой пароль, он подтверждается на стороне сервера, а взамен вы получаете «токен аутентификации». Этот токен сохраняется на устройстве и используется им до тех пор, пока он не станет недействительным (либо из-за истечения срока действия, либо из-за отзыва) — в этом случае вас снова попросят ввести пароль, и игра начнется заново. Вот почему вы можете просто «отменить доступ» с устройств, не меняя пароль своей учетной записи.

Токен всегда привязан к устройству (по той же причине — иначе вы не могли бы отозвать доступ с одного устройства, не затрагивая другие). Я не могу сказать, будет ли токен бесполезен для какого-то «корневого приложения», приобретающего его без вашего разрешения (некорневые приложения должны будут запрашивать ваше подтверждение при первом доступе к нему), или что они могут сделать с таким токеном. в автономном режиме (опять же, части с закрытым исходным кодом) — может быть, кто-то еще может пролить свет на это.

Спасибо за ваш ответ. Я очень надеюсь, что на этот раз кто-то еще захочет предоставить более подробную информацию. Интересно знать, что приложения Google не имеют открытого исходного кода.