Как сделать аутентификацию в веб-сервисе REST, используя Джерси и Java - PullRequest
0 голосов
/ 29 апреля 2011

как сделать аутентификацию в веб-сервисе REST, используя фреймворк jersey и java? Я использовал IDE NetBean и создаю веб-сервис Rest, сервер приложений - Glassfish. Я не использую джавадб или дерби. Моя база данных - mongodb. У меня есть Google, и я нашел http://weblogs.java.net/blog/mhadley/archive/2008/03/authentication.html. Но на этом сайте описано, что он использовал базу данных дерби. Как мне настроить web.xml для аутентификации?

Ответы [ 2 ]

1 голос
/ 29 апреля 2011

Вы также можете использовать file область Glassfish, чтобы проверить, работает ли ваш код и базовая аутентификация.Для этого добавьте своих пользователей в область файлов и измените свою конфигурацию в файле web.xml:

<login-config>
    <auth-method>BASIC</auth-method>
    <realm-name>file</realm-name>
</login-config>
<security-role>
    <description/>
    <role-name>USERS</role-name>
</security-role>

Позже вы можете переключиться на область jdbc и добавить источник данных jdbc для использования с mongodb и realm.

0 голосов
/ 29 апреля 2011

Страница, на которую вы ссылаетесь, позволит вам выполнить аутентификацию, даже если ваше приложение использует другую базу данных. В таком случае вы будете иметь учетные данные пользователя в отдельном БД (в этом случае - дерби, но вы можете использовать любой БД, для которого у вас есть драйвер jdbc).

Вы также можете использовать другое «царство» для аутентификации. Если у вас всего пара пользователей и вам не нужно менять имя пользователя / пароль из кода приложения, вы можете просто использовать 'filerealm' в glassfish.

Вы также можете создать свой собственный мир, но это больше работы. Вы можете найти некоторые записи в блоге об этом или просто найти вдохновение в исходном коде Glassfish.

Я не думаю, что вы можете использовать ссылочную 'jdbcrealm' для mongodb, так как я не думаю, что для этого есть полноценный драйвер jdbc (поскольку это, вероятно, не имеет смысла, поскольку mongodb является базой данных, ориентированной на документы). а не реляционный). Если вам действительно нужно, чтобы ваши пользователи и группы были определены в mongodb, вы должны написать собственную область.

...