2016-04-08 3 views
0

Я лазурный пользователь, и я использую клиент mobileservice для генерации лазурных токенов из токенов поставщика oAuth.Азурная аутентификация с oAuth и токенами

Я хочу, чтобы пользователи надежно читали/записывали в MY API, и кажется, что единственный уникальный идентификатор, который он мне дает, является целым идентификатором пользователя. Токен, более сложная для угадывания строки, кажется, меняется каждый раз, когда я генерирую не прошедший проверку клиента.

Какова наилучшая практика для этого? Может ли кто-то просто открыть клиента с моим окном, угадать 25-символьный идентификатор пользователя, а затем вызвать мой api?

Как я могу использовать токен для обеспечения безопасного чтения/записи в api? Или использует идентификатор пользователя, https, obfuscation и т. Д., Мой лучший выбор? Возможно, я мог бы использовать учебник о том, как работают токены.

ответ

0

Здесь есть две или три части.

1) Провайдер OAuth (Facebook, Google и т.д.), скорее всего, предоставляя вам криптографический подписанный JSON веб-токен (JWT) - безопасный и доверенный 2) Маркер ZUMO есть также JWT - криптографическая подпись и может быть доверять. 3) Вы можете преобразовать JWT в формулу изобретения, которые поддержавшим JWT вызываемого getIdentity() (node.js сервер SDK) или GetIdentityAsync <> (сервер SDK ASP.NET)

Вы можете найти некоторую информацию о моем blog: https://shellmonger.com/2016/04/08/30-days-of-zumo-v2-azure-mobile-apps-day-5-custom-authentication/ - Я прямо в середине обсуждения аутентификации для Azure Mobile Apps.

+0

спасибо. Ваш блог хорошо написан, и его будет очень полезно использовать в качестве ресурса. Если у вас есть время, чтобы ответить, я хотел бы задать вам вопрос или два, чтобы сохранить себе какие-либо головные боли ... –

+0

Основной вопрос от меня, но что вы подразумеваете под «утверждениями, которые поддерживают JWT»? Означает ли это, что я должен использовать значение, возвращаемое getIdentity() на моем сервере, чтобы получить уникальный токен, который я хочу? –

+0

Когда поставщик удостоверений возвращает токен, он, как правило, отформатирован как JWT-Json Web Token (см. Jwt.io) - в нем указаны конкретные требования - такие вещи, как «этот адрес электронной почты пользователей X» - определяются как blob JSON. Вы можете увидеть, что служба вернет в вызове GetIdentityAsync <>(), просмотрев информацию в /.auth/me после аутентификации (URL-адрес относится к вашей службе azure) –

Смежные вопросы