Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Authentication 使用CXF框架进行Jax-rs身份验证而不使用spring安全性_Authentication_Authorization_Cxf_Jax Rs_Restful Authentication - Fatal编程技术网

Authentication 使用CXF框架进行Jax-rs身份验证而不使用spring安全性

Authentication 使用CXF框架进行Jax-rs身份验证而不使用spring安全性,authentication,authorization,cxf,jax-rs,restful-authentication,Authentication,Authorization,Cxf,Jax Rs,Restful Authentication,我不熟悉jax-rs实现。 我已经使用jax rs创建了包含web服务的RESTFUL应用程序。 但是我想为一些web服务提供身份验证和授权。 我无法为身份验证配置web.xml。 提前感谢您可以使用容器级身份验证。例如,在ApacheTomcat中,您可以配置基于HTTP的身份验证(例如,BASIC、DIGEST,甚至是基于表单的身份验证,尽管后者对API没有意义) 要将HTTP基本身份验证配置为示例,您需要: 在用户存储中定义用户并将Tomcat连接到它。默认情况下,Tomcat为您提供一

我不熟悉jax-rs实现。 我已经使用jax rs创建了包含web服务的RESTFUL应用程序。 但是我想为一些web服务提供身份验证和授权。 我无法为身份验证配置web.xml。
提前感谢

您可以使用容器级身份验证。例如,在ApacheTomcat中,您可以配置基于HTTP的身份验证(例如,BASIC、DIGEST,甚至是基于表单的身份验证,尽管后者对API没有意义)

要将HTTP基本身份验证配置为示例,您需要:

  • 在用户存储中定义用户并将Tomcat连接到它。默认情况下,Tomcat为您提供一个Tomcat-users.xml文件,您可以使用该文件定义用户。您还可以将Tomcat配置为使用LDAP作为源
  • 更新web.xml文件以添加
    安全约束
    元素
  • 更新web.xml以添加
    登录配置
    元素
  • 更新web.xml以添加
    安全角色
    元素
下面是一个示例片段:

<security-constraint>
    <web-resource-collection>
        <web-resource-name>Protected Area</web-resource-name>
        <url-pattern>/*</url-pattern>
        <http-method>PUT</http-method>
        <http-method>DELETE</http-method>
        <http-method>GET</http-method>
        <http-method>POST</http-method>
    </web-resource-collection>
    <auth-constraint>
        <role-name>basic-user</role-name>
    </auth-constraint>
</security-constraint>
<login-config>
    <auth-method>BASIC</auth-method>
</login-config>
<security-role>
    <role-name>basic-user</role-name>
</security-role>

保护区
/*
放
删除
得到
邮递

您使用的是什么容器?雄猫?其他?你也没有提到你想如何获得授权。您可以使用JAX-RS处理程序来检查负载并向XACML决策引擎发出授权请求。感谢您的响应。我使用的是tomcat容器。但我可以向供应商(ROLE_VENDOR)和我的超级管理员((ROLE_SUPERADMIN))提供API密钥,并可以使用我的数据库进行检查。因此,我希望通过使用JAXR和cxf向用户进行身份验证,我的一些web服务需要供应商的授权,但我的超级管理员可以拥有所有权限。