身份验证约束和安全角色之间有什么区别?



之间有什么区别

<auth-constraint><role-name>tomcat</role-name></auth-constraint>

和:

<security-role><role-name>tomcat</role-name></security-role>

在安全约束声明中?

例如,如果我定义BASIC身份验证如下,我应该使用哪个?

<login-config><auth-method>BASIC</auth-method></login-config>

根本区别在于通过auth方法解决的身份验证机制-身份验证是应用程序确认"你真的是你所说的那个人吗?"-身份验证机制可以有多种类型,但也有一些是标准servlet容器开箱即用支持的-您已经指出了out是BASIC-这是提示浏览器提示登录对话框的功能-理想情况下,它不应在生产场景中使用,因为它会以明文形式将您的凭据传输到服务器,而且它在我熟悉的任何浏览器中都不可自定义。通常,在生产场景下,FORM与在服务器或其他基础设施层设置SSL一起使用。FORM是高度可定制的,在使用servlet web容器身份验证的开箱即用功能时最受欢迎。

角色名称是一个抽象,最终将由应用程序代码用于执行授权。"好吧,你就是你说的那个人,但你被允许访问这个页面、按钮或web应用程序吗?"-应用程序如何在内部处理这不是一个问题,但这里涉及到声明性(基于注释)Servlet API和服务器特定的映射。这里有一种通过编程实现的方法-如何在JSP/Servlet 中获取用户角色

最新更新