Мы реализовали API-интерфейс сервера, используя spring-oauth2. Я заметил, что сервер генерирует один и тот же токен для каждой комбинации идентификатор пользователя/клиента даже при вызове с отдельных устройств. Это вызывает проблему, так как мои клиенты могут запускать несколько экземпляров: например. приложения для Android и ios. Мне нужен способ связать токен с конкретным экземпляром, а не повторно использовать тот же токен.Spring Oauth2 - множественные маркеры на идентификатор клиента
Примером, где это требуется, является GCM (или push-уведомление), где API должен знать, к какому экземпляру он взаимодействует.
Это моя текущая весна конфигурация:
<http pattern="/oauth/token" create-session="stateless"
authentication-manager-ref="clientAuthenticationManager"
entry-point-ref="oauthAuthenticationEntryPoint" xmlns="http://www.springframework.org/schema/security">
<intercept-url pattern="/oauth/token" access="IS_AUTHENTICATED_FULLY" />
<anonymous enabled="false" />
<http-basic entry-point-ref="oauthAuthenticationEntryPoint" />
<!-- include this only if you need to authenticate clients via request parameters -->
<custom-filter ref="clientCredentialsTokenEndpointFilter" before="BASIC_AUTH_FILTER" />
<access-denied-handler ref="oauthAccessDeniedHandler" />
</http>
<oauth:authorization-server
client-details-service-ref="mongoclientDetails" token-services-ref="tokenServices"
user-approval-handler-ref="userApprovalHandler">
<!-- authorization-endpoint-url="/oauth/authorize" token-endpoint-url="/oauth/token"> -->
<oauth:authorization-code />
<oauth:implicit />
<oauth:refresh-token />
<oauth:client-credentials />
<oauth:password />
</oauth:authorization-server>
Я предпочитаю не давать каждому из клиентов другой идентификатора, как это было бы нецелесообразным. Есть идеи?
Вы получили ответ на этот вопрос? Я сталкиваюсь с подобной проблемой. – pacman
К сожалению, не – checklist
Взгляните на это. Посмотрите, поможет ли это. Http://stackoverflow.com/questions/27020702/spring-oauth2-generate-access-token-per-request-to-the-token-endpoint – pacman