Безопасная аутентификация Android с учетной записью Google - PullRequest
2 голосов
/ 19 апреля 2011

Мое приложение будет обрабатывать конфиденциальные данные (личные ключи) и поэтому должно иметь безопасный способ доступа к этим данным.Я хотел бы передать бремя аутентификации пользователей Google и попросить их определить, может ли пользователь иметь доступ к приложению или нет, на основании проверки данных его учетной записи Google.Я изучал возможность использования WebView и протокола OpenID, но, будучи более веб-протоколом, я все еще рассматриваю другие варианты.Другим требованием также может быть то, что пользователь ДОЛЖЕН аутентифицироваться каждый раз, когда он хочет получить доступ к приложению, возможно, с окном 90 секунд, если приложение приостановлено.

Является ли WebView с OpenID лучшим решением для меня, или кто-то может порекомендовать лучший подход?

1 Ответ

7 голосов
/ 19 апреля 2011

Я думаю, что лучший способ сделать это - использовать AccountManager. На самом деле AccountManager содержит имя пользователя и пароль от учетной записи пользователя Google, но вы не можете получить доступ к этой информации. Вы можете попросить AccountManager токен для некоторой учетной записи, которая есть у пользователя. Если вам нужен токен для учетной записи Google, вам нужно запросить учетную запись com.google. Когда вы запрашиваете токен в AccountManager, запускается действие, чтобы спросить пользователя, хочет ли он разрешить приложению доступ к его учетной записи.

Кроме того, вы можете запросить токен, который будет полезен для определенного вида услуг. Если вы хотите получить доступ к информации Blogger. Вы можете запросить разрешение «блоггера». Маркер, который AccountManager вернет вам, будет работать только для этой службы.

Срок действия токена истекает через некоторое время, поэтому вам придется проверить. Когда токен больше не работает, вы должны сообщить AccountManager, что токен больше не действителен. В следующий раз, когда вы попросите токен, AccountManager выдаст вам новый.

Найдите AccountManager в Google.

http://developer.android.com/reference/android/accounts/AccountManager.html

Работает на Android 2.1 и выше.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...