2016-04-23 2 views
0

У меня Oauth2 реализован в моем приложении для защиты вызовов API. Мой Oauth и сервер ресурсов находятся на двух отдельных физических ящиках (но в одной сети). Для каждого вызова на сервере ресурсов он должен вызывать Oauth-сервер для проверки Oauthtoken.Каков самый быстрый способ вызова сервера на сервер?

У меня есть миллионы запросов, поступающих на мой сервер ресурсов за один день. В настоящее время для проверки токена Oauth я использую вызов отдыха с сервера ресурсов на сервер Oauth.

Есть ли способ сделать это быстрее, поскольку каждый вызов должен быть перенаправлен на сервер Oauth? Может ли webSockets решить эту проблему?

+0

Не специалист, но цифра 2 в https://tools.ietf.org/html/rfc6749 не показывают никакой связи между сервером ресурсов и сервером авторизации. Я думаю, сервер ресурсов должен иметь возможность проверять токен доступа без дополнительной связи. – BitTickler

ответ

0

Если вам не нужно отменять отдельные токены доступа, вы можете использовать токены с идентификатором безстоящих (JSON Web Token) JWT. JWT не нужно проверять на сервере авторизации. Пока токен JWT подписывается сервером авторизации (асимметричная криптография), вы можете проверить маркер на самом сервере ресурсов, используя открытый ключ сервера авторизации.

Это обеспечивает быструю авторизацию (так как она пропускает межсерверное соединение между серверами) за счет простой возможности обратной передачи.

Примечание: вы также можете использовать общий секрет (симметричная криптография), но тогда вам нужно убедиться, что все заинтересованные стороны имеют общий секрет (и сохраняют его в тайне).

взгляд в весенне-безопасность-JWT и https://jwt.io/

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