Нужно ли OAuth2 моему приложению?

Я делаю приложение на Android, которое позволяет пользователю, получив имя и пароль, изменить свой профиль с помощью веб-интерфейса API.

Я установил систему для возврата после проверки подлинности уникального токена безопасности, который будет использоваться для проверки подлинности пользователя для выполнения операций (обновления профиля).

Я впервые использовал такой URL, к которому у пользователя есть доступ (логин):

webserver.com/?login&user=michael&password=7c4a8d09ca3762af61e59520943dc26494f8941b

Затем, если данные верны, остальные API возвращают уникальный токен в приложение для Android. Приложение для Android хранит этот уникальный токен для make, пока пользователь не закроет сеанс обновления своего профиля.

Я использовал для обновления URL-адрес, как это:

webserver.com/?update&token=ee977806d7286510da8b9a7492ba58e2484c0ecc&newname=mathews

Затем, когда пользователь закрывает сеанс (в приложении Android), я удаляю токен с веб-сервера через другой URL-адрес …

Это хорошая система? Это мой токен «безопасно»?

Я храню эти URL (без значения параметров) в константах моего приложения для Android … Это безопасно? Я могу сделать иначе?

1

Решение

Нет, это не безопасно. Никогда не помещайте учетные данные в URL-адрес, поскольку URL-адреса имеют тенденцию регистрироваться во многих разных местах, оставляя учетные данные открытыми для третьей стороны. Используйте тело HTTP для такого рода вещей.

Всегда используйте зашифрованный SSL / TLS для передачи учетных данных. Или используйте криптографическую систему, такую ​​как OAuth1, чтобы избежать отправки учетных данных в виде открытого текста. OAuth1 определяет схему подтверждения владения учетными данными без их фактической отправки.

Используйте заголовок авторизации HTTP для токенов. Ищите «http token token».

1

Другие решения

На этот вопрос есть несколько очень полезных ответов о том, как сделать ваши сообщения более безопасными:
Как безопасно отправить пароль через HTTP?

1

По вопросам рекламы [email protected]