gpt4 book ai didi

security - web项目中热定义一个web.xml role-name

转载 作者:可可西里 更新时间:2023-11-01 16:19:07 25 4
gpt4 key购买 nike

我正在使用 Java EE 开发一个 Web 项目,我希望某些 JSP 只能由某种类型的用户访问。我读过使用 web.xml 描述符我可以将某些资源的可见性设置为“角色名称”。但是如何在 http session 中设置这个角色名称?
例如,我的描述符有:

  <security-constraint>
<web-resource-collection>
<web-resource-name>Access to Student pages</web-resource-name>
<url-pattern>/Student/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>Student</role-name>
</auth-constraint>
</security-constraint>

我在哪里/如何定义“学生”角色名称?

最佳答案

这是您的应用程序服务器的工作。认证后,服务器会将角色存储在 session 中(如果认证由服务器完成)。


web.xml -- 在您的应用中

<security-constraint>
<web-resource-collection>
<url-pattern>/Student/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>Student</role-name>
</auth-constraint>
</security-constraint>

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

如何将用户/登录名分配给 rolles 取决于服务器,这里是 tomcat 的一个非常基本的示例:

tomcat-users.xml -- 此文件在您的服务器中,您必须扩展它!

 <?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
<role rolename="tomcat"/>

<role rolename="Student"/> <!-- you have to define all roles -->

<user username="tomcat" password="tomcat" roles="tomcat"/>

<user username="myname" password="mypassword" roles="Student"/> <!-- you have to assign login and roles -->
</tomcat-users>

关于security - web项目中热定义一个web.xml role-name,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8570701/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com