6

Я хотел бы обсудить, как лучше всего защитить ваши API, чтобы использовать их из мобильного приложения.Проверка подлинности API Laravel RESTful для мобильного приложения

Поскольку нет сторонних сторонников, я думаю, что OAuth не является хорошим выбором?
Будет ли JWT хорошим выбором?

Трудная часть для меня, чтобы понять, как я могу аутентифицироваться, чтобы я мог защитить данные в своих API, если кто-то не уполномочен называть их.

Я использую Laravel 5.1 на стороне сервера, а мобильное приложение, которое я хочу назвать API, является андроидным.

Надеюсь, что я не забыл упомянуть любую важную информацию. Любая помощь будет оценена по достоинству.

+0

Базовая аутентификация, вероятно, самый простой способ обезопасить свой API. –

+1

Спасибо за ответ. Стоит ли это реализовать? Я имею в виду качество, поскольку это самый простой способ. – csdinos

+0

@csdinos теперь у меня такой же вопрос. Я думаю, что jwt не так хорош для мобильных приложений, потому что токены автоматически недействительны сервером через час, и пользователь должен снова и снова вводить логин, это нормально для веб-приложений, но в android не рекомендуется показывать страницу входа более одного раза! Я считаю, что для мобильных приложений достаточно одного процесса входа в систему! что вы думаете? вы использовали jwt для аутентификации пользователей в вашем приложении Android? –

ответ

0

Посмотрите на JSON Web Token Authentication for Laravel & Lumen

Это обеспечивает безопасность и защиту данных и маршрутов.

+1

Да, я уже наткнулся на это. Идея состоит в том, чтобы аутентифицировать того, кто правильно называет API через токены? Два вопроса, которые у меня есть: 1) Должны ли данные быть частью токена или просто использовать его для аутентификации? 2) В вызове API, где вы действительно выполняете аутентификацию и передаете токен вызывающему абоненту, вы просто защищаете его (имя пользователя, пароль) через HTTPS или что-то в этом роде? – csdinos

+1

'JWT используется как для аутентификации, так и для защиты данных. взгляните на https: // stormpath.com/blog/jwt-the-right-way' –

1

Использование OAuth2

Рассмотрите возможность использования OAuth 2 с клиентскими мандатной гранта.

Вы можете запросить токен доступа, используя учетные данные своего Клиента.

Использование OAuth 2 сервера Laravel:

Реализация авторизации сервера с клиентом полномочий Грант с использованием пакета Луки:

+0

Спасибо за ваш ответ. У меня есть один вопрос. Учитывая, что учетные данные пользователя ** не должны храниться ** на стороне андроида, каков наилучший ** срок службы ** токена доступа? – csdinos

+0

@csdinos Я думаю, что это зависит от ваших потребностей приложения. Это нормально, когда приложение запрашивает токен каждый день? В этой теме нет хорошего контента. Я видел API так: http://docs.apigee.com/api-services/content/oauth-20-client-credentials-grant-type#configuringflowsandpolicies-configure theflowwithapolicy, используя 40-дневную продолжительность жизни. –