[英]How to Handle Basic Authentication in java
我得到一个REST网址,其中包含基本身份验证信息作为Basic username@domain:password
格式的标头传递,该格式是base64编码的。 在我的Java代码中,我实际上如何验证凭据。 我在Websphere服务器上部署了EAR。 是否应该解码基本64格式的标头,并将凭据与jndi变量中的凭据进行比较?
(我想我对基本Auth本身的实际流程感到困惑。)
谢谢
在web.xml中,您可以定义模式服务器如何验证这些凭证:
要处理基本身份验证,您必须配置以下内容:
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>default</realm-name>
</login-config>
现在,您可以使用安全约束来保护您的服务,例如:
<security-constraint>
<display-name>excluded</display-name>
<web-resource-collection>
<web-resource-name>No Access</web-resource-name>
<url-pattern>/rest/*</url-pattern>
<http-method>DELETE</http-method>
<http-method>PUT</http-method>
<http-method>HEAD</http-method>
<http-method>OPTIONS</http-method>
<http-method>TRACE</http-method>
<http-method>GET</http-method>
<http-method>POST</http-method>
</web-resource-collection>
<auth-constraint />
<user-data-constraint>
<transport-guarantee>NONE</transport-guarantee>
</user-data-constraint>
</security-constraint>
有关更多详细信息,请阅读以下教程: http : //java.dzone.com/articles/understanding-web-security
Java EE教程还讨论了安全性: http : //docs.oracle.com/javaee/6/tutorial/doc/bncas.html
您还可以实现ServletRequestListener并从请求中获取基本标头。 更多详情可在这找到:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.