Я построил небольшой api. Я хотел бы реализовать аутентификацию заголовка для моего api. Когда пользователь хочет получить доступ к моему api, он отправит свой apikey вместе с api url. Если apikey был в моей базе данных, ему будет предоставлен доступ, если он не сможет получить доступ к api.как установить проверку заголовка в dropwizard
ответ
Если вы хотите аутентифицировать один метод , вы можете искать заголовок непосредственно в самом методе. что-то вроде
@GET
public Response processRequest(
@HeaderParam("X-APIKEY")
@DefaultValue("INVALID_OR_GUEST_KEY") String apikey , ...)
, если вы хотите, чтобы установить это -Всех- (или большинство) ваших методов, то вам лучше с фильтром. Взгляните на http://www.dropwizard.io/0.9.2/docs/manual/core.html#jersey-filters и http://www.dropwizard.io/0.9.2/docs/manual/core.html#servlet-filters. Вы можете реализовать свою логику поиска ключей там
(PS вы также можете рассмотреть вопрос о кешировании, но это уже другая история).
Спасибо Daniele, он отлично работает. Как мы можем создать кеш для API для хранения apikeys, потому что каждый раз, когда попадание в базу данных неэффективно. – Nike
Привет, посмотрите на кэширование guava для этого, возможно: https://github.com/google/guava/wiki/CachesExplained Загрузка кеша, похоже, именно то, что вы хотели бы иметь. – pandaadb
Вы можете использовать что-то вроде memcached (memcached.org) или (особенно, если ваше приложение нуждается в масштабируемом) hazelcast (hazelcast.org). они оба хороши! – Daniele
- 1. Как сделать обычную проверку подлинности ресурса в Dropwizard
- 2. Как обойти проверку заголовка Accept в IIS?
- 3. Как установить проверку в UITextFields
- 4. Dropwizard ExceptionMapper: проверять исходные поля заголовка
- 5. Как проверить проверку подлинности HMAC с помощью Dropwizard?
- 6. Axis2: отключить проверку заголовка MustUnderstand
- 7. Как установить информацию заголовка
- 8. Как установить проверку даты в шаблонах Django
- 9. Как установить проверку диапазона в AngularJS
- 10. Как установить проверку данных в Firebase?
- 11. Как установить проверку валидации в ViewModel
- 12. Как установить проверку сигнала в цикле?
- 13. Как установить проверку подлинности формы в asp.net
- 14. Как установить онлайн проверку пин в EMV
- 15. Как установить значениеNamingStrategy в классе Dropwizard HibernateBundle без xml?
- 16. Установить текст заголовка в пользовательской строке заголовка
- 17. Как я могу установить проверку в этом случае?
- 18. Использование CachingAuthenticator в Dropwizard
- 19. Как установить положение заголовка кнопки
- 20. Как установить цвет заголовка GroupBox
- 21. Как установить цвет текста заголовка?
- 22. Пользовательские фильтры Jetty в Dropwizard
- 23. KendoWindow: как установить высоту заголовка?
- 24. Как установить положение заголовка UIViewController?
- 25. Как установить заголовок заголовка WebClient?
- 26. Как установить цвет заголовка VirtualStringTree?
- 27. Как установить ширину заголовка UITableView?
- 28. создание mododb healthcheck (в dropwizard)
- 29. Как сделать аутентификацию в dropwizard
- 30. Как установить проверку начальных значений весной?
Я ответил на аналогичный вопрос: http://stackoverflow.com/questions/34304323/issue-with-custom-authorization-in-dropwizard/34334097#34334097 – pandaadb