1、Jetty的版本为:【jetty-7.6.7.v20120910】
2、使用了spring bean格式的Jetty配置文件【jetty.xml】,需要修改如下配置段
//////////begin/////////
<!-- modified by can_do on web app security login not for [/*]=begin= -->
<bean id="securityConstraint" class="org.eclipse.jetty.util.security.Constraint">
<property name="name" value="BASIC" />
<property name="roles" value="admin" />
<property name="authenticate" value="true" />
</bean>
<bean id="securityConstraintMapping" class="org.eclipse.jetty.security.ConstraintMapping">
<property name="constraint" ref="securityConstraint" />
<property name="pathSpec" value="/console/*" />
</bean>
<!-- modified by can_do on web app security login =end= -->
//////////end///////////
其中要改两处:
(1)、参数【authenticate】开启,即改为true;
(2)、参数【pathSpec】调整映射的context路径,默认是所有war应用【/*】,此处根据需要可调整为针对当前应用的,
即需要改为【/console/*】
注意:配置多个角色的方式时,角色间以comma隔开,如下:
<property name="roles" value="admin,read-only" />
3、调整认证域中指定的配置信息,即用户名、密码、角色等,如下:
//////////begin/////////
<bean id="securityLoginService" class="org.eclipse.jetty.security.HashLoginService">
<property name="name" value="FMQRealm" />
<property name="config" value="${fmq.conf}/jetty-realm.properties" />
</bean>
//////////end///////////
此处指定了配置文件为【${fmq.conf}/jetty-realm.properties】
//////begin////
# username: password [,rolename ...]
admin: console, admin
//////end//////
注意:配置格式为[用户名]: [密码], [角色]
4、通过Jetty自动工具类,可以对密码进行安全保护,有三种格式:混淆、MD5、校验和
用法如下:
////////////begin///////
Usage - java org.eclipse.jetty.security.Password [<user>] <password>
C:\fabric\fmq\lib\web>java -cp .;./jetty-all-server-7.6.7.v20120910.jar org.eclipse.jetty.util.security.Password admin console
console
OBF:1sot1wg21wu61ym71wu81wfw1sox
MD5:bfafd813d7ea65ee4db1f09d7c8ffbf4
CRYPT:adL4jzDus01r6
///////////end/////////
5、将认证域配置文件中的明文转发为密文存储起来,如下:
/////////begin//////////
# username: password [,rolename ...]
admin: MD5:bfafd813d7ea65ee4db1f09d7c8ffbf4, admin
/////////end////////////
注意:此处的前缀很重要,【OBF:】、【MD5:】、【CRYPT:】其告诉Jetty认证服务验证时,采用哪种方式进行验证。
【温馨提示】
如果您觉得满意,可以选择支持下,您的支持是我最大的动力:
分享到:
相关推荐
此外,Jetty还提供了对JSP(JavaServer Pages)的支持,尽管它不包含在基础发行版中,但可以通过添加相应的模块来启用。 3. **模块化设计**:Jetty的模块化架构使得用户可以根据需要选择加载特定的功能模块,如...
### Spring Security 安全权限管理手册知识点概览 #### 一、基础篇 **1....- **1.1 配置过滤器** ...通过学习这些内容,开发者可以深入了解Spring Security的各种特性和应用场景,从而更好地构建安全可靠的应用程序。
### Spring Security 安全权限管理手册知识...以上内容概述了《Spring Security 安全权限管理手册》的主要知识点,覆盖了从基础知识到高级应用的多个方面,旨在帮助开发者全面掌握Spring Security的安全权限管理技巧。
- 描述如何在Spring Security中启用预先认证功能。 **16. 切换用户** - **16.1 配置方式** - 学习如何配置Spring Security支持用户切换。 - **16.2 实例演示** - 通过示例演示用户切换的具体操作。 **17. 信道...
为了使上面的配置生效,还需要在项目中添加相应的用户服务实现,并确保Web应用程序正确引用了Spring Security的配置文件。 **1.4 运行示例** 启动应用后,访问需要认证的页面时会被重定向到登录页面。登录成功后...
为了确保Web应用能够支持广泛的客户端设备,开发者需要注意以下几点: - **响应式设计**:确保应用在不同屏幕尺寸的设备上都能够良好展示。 - **浏览器兼容性**:测试应用在主流浏览器上的表现,确保功能的正常运行...
- **SpringMVC**:基于Spring框架的轻量级MVC框架,用于构建Web应用程序。它将请求与处理逻辑解耦,并且易于与其他Spring组件集成。 **问题二:SpringMVC的流程?** 1. 用户发送请求至前端控制器DispatcherServlet...