Openfire:访问Servlet时绕开Openfire的身份验证

假设有如下的场景,当我们开发一个允许Servlet访问的OF插件时,如果不需要身份验证的话,或者有其它的安全机制的话,我们会不希望每次都做一次OF的身份验证,而是能够直接访问Servlet。绕开身份验证的代码如下:

@Override
public void initializePlugin(PluginManager manager, File pluginDirectory) {
    // 绕过登录直接访问plugin的servlet
    AuthCheckFilter.addExclude("fchatPlugin/Servlet");
}
@Override
public void destroyPlugin() {
    // 绕过登录直接访问plugin的servlet
    AuthCheckFilter.removeExclude("fchatPlugin/Servlet");
}

参考的Servlet的配置文件如下:

 1 <?xml version="1.0" encoding="ISO-8859-1"?>
 2 <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
 3 <web-app>
 4     <servlet>
 5         <servlet-class>com.demo.fchatPlugin.SafeServlet</servlet-class>
 6         <servlet-name>SafeServlet</servlet-name>
 7     </servlet>
 8
 9     <servlet-mapping>
10         <servlet-name>SafeServlet</servlet-name>
11         <url-pattern>/servlet</url-pattern>
12     </servlet-mapping>
13 </web-app>

现在就可以直接访问地址了:http://localhost:9090/plugins/fchatPlugin/Servlet

Openfire:访问Servlet时绕开Openfire的身份验证

时间: 2024-10-28 20:18:21

Openfire:访问Servlet时绕开Openfire的身份验证的相关文章

《Oracle Java EE编程指南》04-02:创建、配置和访问Servlet

前言 接下来我们开始写第一个Servlet,通过这个Servlet,进一步熟悉Servlet的基本概念. 1.创建Servlet 在项目的src目录下的任意包上,右键点击new,创建Servlet. 填写Servlet的基本信息,包括包名.类名.需要覆盖的方法,一般都只覆盖doGet和doPost. 自动生成的FirstServlet.java中,存在doGet和doPost两个方法,方法体都类似,输出一个动态的页面. 2.配置Servlet Eclipse配置Servlet:Servlet必须

ASP.NET --Form身份验证

本文收集自----MSDN 一:Forms 身份验证流程 在 Forms 身份验证方案中,应用程序直接从用户那里收集名字和密码等凭据,并自己判断这些信息的真实性.应用程序不使用 IIS 身份验证,但 IIS 身份验证设置可以影响 Forms 身份验证.作为一项原则,当您使用 Forms 身份验证时,请在 IIS 中启用匿名访问.否则,如果用户未通过 IIS 身份验证,他们甚至无法访问应用程序以便向 Forms 身份验证提供用户名和密码. 此方案中的数据流如下图所示. Forms 身份验证 此图说

Web 身份验证说明

IIS 支持以下几种 Web 身份验证方法: (1)匿名身份验证     IIS 创建 IUSR_计算机名称帐户(其中计算机名称是正在运行 IIS 的服务器的名称),用来在匿名用户请求 Web 内容时对他们进行身份验证.此帐户授予用户本地登录权限.你可以将匿名用户访问重置为使用任何有效的 Windows 帐户. (2)基本身份验证 使用基本身份验证可限制对 NTFS 格式 Web 服务器上的文件的访问.使用基本身份验证,用户必须输入凭据,而且访问是基于用户 ID 的.用户 ID 和密码都以明文形

14周翻译:SQL Server安全级别2的阶梯:身份验证 作者:Don Kiely,2014/06/18 该系列 本文是“Stairway系列:SQL Server安全性的阶梯”的一部分 链接:http://www.sqlservercentral.com/articles/Stairway+Series/109975/

正文: SQL Server提供了保护服务器和数据免受当今复杂攻击所需的一切.但是,在您有效使用这些安全功能之前,您需要了解您面临的威胁以及一些基本的安全概念.这第一阶梯级别提供了一个基础,以便您可以充分利用SQL Server中的安全功能,而不会浪费时间在功能上无所事事,以防止对数据的特定威胁. 验证是验证主体(需要访问SQL Server数据库的用户或进程)是谁或声称是什么的过程.主体需要唯一标识,以便SQL Server可以确定主体拥有哪些权限(如果有).正确的身份验证是提供对数据库对象安

#翻译#通往SQL Server安全级别2的阶梯:身份验证; 唐?吉利; 原文链接:Stairway to SQL Server Security Level 2: Authentication http://www.sqlservercentral.com/articles/Stairway+Series/109975/

这篇文章是楼梯系列的一部分:通往SQL Server安全的阶梯 SQL Server拥有您需要的所有东西来保护您的服务器和数据以抵御今天的复杂攻击.但是在您能够有效地使用这些安全特性之前,您需要了解您所面临的威胁和一些基本的安全概念.第一个阶梯级提供了一个基础,这样您就可以充分利用SQL服务器的安全特性,而不必浪费时间来防止对数据的特定威胁. 身份验证是验证一个君主国--一个需要访问SQL Server数据库的用户或进程--是谁或它声称是什么的过程.一个主体需要唯一的标识,以便SQL Serve

SQL Server安全级别2的楼梯:身份验证

By Don Kiely, 2014/06/18 该系列本文是楼梯系列的一部分:通往SQL Server安全的楼梯. SQL服务器拥有您所需的一切,以保护您的服务器和数据免受当今复杂的攻击.但在您能够有效地使用这些安全特性之前,您需要了解所面临的威胁和一些基本的安全概念.这第一个阶梯级别提供了一个基础,这样您就可以充分利用SQL Server中的安全特性,而不会浪费时间来处理对您的数据没有特定威胁的功能. 认证过程的验证,principal-a用户或进程需要访问SQL Server数据库是谁或什

使用SoapUI测试windows身份验证的webservice

有个朋友问到用soapui测试wcf服务时如果使用windows身份验证要怎么传输凭据,于是自己试了一下.其实服务端是wcf还是webservice还是webapi都无所谓,关键是windows身份验证的凭据在哪里设置.手头上恰好有一个使用windows身份验证的站点,在浏览器上访问成功时,大约是这样子的页面: 然后在soapui里建一个工程访问一下,返回结果是这样的: 然而在凭证设置面板上并没有看到NTLM类型.找了一下资料,这贴帖子上已经有人回复了: https://stackoverflo

shiro身份验证

身份验证,即在应用中谁能证明他就是他本人.一般提供如他们的身份ID一些标识信息来表明他就是他本人,如提供身份证,用户名/密码来证明. 在shiro中,用户需要提供principals (身份)和credentials(证明)给shiro,从而应用能验证用户身份: principals:身份,即主体的标识属性,可以是任何东西,如用户名.邮箱等,唯一即可.一个主体可以有多个principals,但只有一个Primary principals,一般是用户名/密码/手机号. credentials:证明

配置web服务基本用户身份验证,保证web站点的安全

IIS网站默认允许所有用户连接,如果对网站的安全性要求较高,网站只针对特定用户开放,就需要对用户进行验证.进行验证的主要方法有:匿名身份验证.基本身份验证.摘要式身份验证.Windows身份验证.这里只介绍如何配置基本身份验证.一.添加身份验证模块.1.打开"服务器管理器",点击"添加角色服务".2.在"安全性"中勾选要安装的3种身份验证方法,这里我已经安装过了.然后按照操作向导的提示完成即可.二.关闭匿名身份验证,启用基本身份验证.4种身份验证