2011-04-29 49 views
0

如何在使用jersey框架和java的REST web服务中进行身份验证? 我使用NetBean IDE并创建Rest网页服务,应用程序服务器为glassfish。 我不使用javadb或德比。我的数据库是mongodb。 我有谷歌,我发现http://weblogs.java.net/blog/mhadley/archive/2008/03/authentication.html。 但该网站描述他使用德比数据库。 我应该如何在web.xml中进行身份验证配置?如何使用jersey和java在REST web服务中进行身份验证

回答

1

您还可以使用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领域和添加具有的MongoDB和领域使用JDBC数据源。

+1

只要你不担心扩展到一个庞大的人口,每个应用程序服务器将有自己的“文件”实施。很容易进行概念验证。 – jayraynet 2011-05-05 19:36:58

0

即使您的应用程序使用其他数据库,您链接的页面也可让您进行身份验证工作。然后,您将在单独的数据库中拥有用户凭证(在这种情况下为德比,但您可以自由使用任何拥有jdbc驱动程序的数据库)。

您也可以使用另一个'领域'进行身份验证。如果您只有几个用户,并且不需要从应用程序代码更改用户名/密码,则可以在glassfish中使用'filerealm'。

你也可以设计自己的领域,但这是更多的工作。你可以找到一些有关这方面的博客文章,或者从Glassfish源代码中找到一些灵感。

我不认为你可以使用引用的'jdbcrealm'为mongodb,因为我不认为它有一个完整的jdbc驱动程序(因为这可能没有意义,mongodb是一个面向文档数据库而不是关系型)。如果你确实需要用mongodb定义你的用户和组,你应该写一个自定义领域。

相关问题