开源就是开放源代码
1、盈利模式之一:多种产品线
在这种模式中,开源软件被用来为直接产生收入的专有软件创建或维护市场地位。
例如,开源客户端软件驱动服务器软件的销售,或者开源版本驱动产品的商业许可版本的销售。这种模式很常见。
例如,针对个人和企业同时推出MySQL产品,有开源版和专业版两种版本,使用不同的授权方式。为了更好的推广,开源版本是完全免费的,而收入来自授权销售和专业版本的支持服务。
另一个例子是Redhat,它在RedhatLinux9.0之后将桌面操作系统转换为Fedora项目,并利用FedoraCoreLinux在开源社区中的声望,促进了RedhatEnterpriseLinuxAS/ES/WS服务器线的销售。
2、盈利模式之二:技术服务型
在这种模式下,开源软件占据了一个新的市场地位,不是针对产品,而是针对技术服务。JBoss是这种模式的一个很好的例子。JBoss应用服务器是完全免费的,通过提供技术文档、培训、二次开发支持和其他技术服务来付费。
3、盈利模式之三:应用服务托管(ASP)
这种模式适用于基于开放源码软件的应用程序服务提供者(ASP)。
例如,PHPLive !它是一个基于PHP和MySQL的开源软件,可以为企业用户提供实时聊天服务。已经有几十家公司公开上市。承载服务的应用程序服务提供者。
4、盈利模式之四:软、硬件一体化
这种模式是针对硬件制造商的。随着竞争的普及,市场压力迫使硬件公司开发并维护软件,但是软件本身却并不是利润中心,因而采用开源软件。
这种模式为大型公司广泛采纳,比如IBMHP等服务器供应商巨头,通过捆绑免费的Linux操作系统销售硬件服务器。SUN公司近期将其Solaris操作系统开放源码,以确保服务器硬件的销售收入,也是这种模式的体现。
5、盈利模式之五:附属品
在这种模式中,出售开放源代码的附加产品。比如在低端市场,出售杯子和T恤衫等;在高端市场上,出售专业编辑出版的文档和书籍。
O'Reilly集团是销售开源软件附加产品公司的典型案例,他出版了很多优秀的开放源代码软件的参考资料。O'Reilly实际上雇用和支持了一些著名的开放源代码黑客(例如LarryWall和BrainBehlendorf),并以此提高它在市场上的声望。
6、盈利模式之六:品牌战略、服务致上
在这种模式下,开源公司利用开源软件传播的固有优势,以极低的成本建立和传播品牌。并通过向用户提供与产品相关的服务来获得报酬。
Compiere公司的ERP和CRM软件就是这种模式的典型例子。Cambier公司开发的开源ERP和CRM软件以其卓越的产品迅速得到了北美、欧洲和亚洲中小企业用户的认可。
因此,Compiere品牌迅速传遍全球,成为企业管理软件市场上的全球知名品牌。
7、盈利模式之七:市场策略
这种模式是一种抢占市场的快速营销策略,主要是为以后的增强型产品的销售奠定基础。有很多这样的例子。例如,微软声称其开放Office源代码的一部分实现了这一策略。
另一个例子是CRM starlet SugarCRM,一个由Suga技术开发的开放源码版本,自2004年上半年公开下载以来,已被广泛使用,为9月份发布的打包专业套件做准备。
扩展资料:
开源软件的经营模式多种多样,随着开源软件的发展,会有更多的盈利模式应运而生。
事实上,一家公司可能混合采用其中的几种盈利模式,比如康比尔公司不仅采用了第六种品牌策略,同时也采用了第二种提供技术服务的方式。
在开源软件大潮的冲击之下,包括微软在内的商业软件公司,也开始认可开源软件"软件成为服务"的本质。
Spring框架曝安全漏洞,你如何评价这个漏洞?下面就我们来针对这个问题进行一番探讨,希望这些内容能够帮到有需要的朋友们。
继Log4j2以后,听到Java再度遭受漏洞进攻,这一次,好像状况也更为严重,由于遭受危害的是Java服务平台的开源系统全栈应用软件框架和控制反转器皿完成——Spring家族,并且网传漏洞还不仅一个。一直以来,Spring是程序编写开发设计的首选技术性之一,先前一位名叫BogdanN.的全栈开发者乃至点评道:“学习培训Java、学习Spring框架,你永远都不容易下岗。”
显而易见,假如Spring城门失火,Java必然殃及。但是,SpringRCE漏洞在互联网上炒了二天,尽管有许多安全圈工作人员陆续发朋友圈,但大量的或是表明了仅仅听到,这也不免令人怀疑,是真有漏洞,或是虚惊一场?3月26日,据 *** 信息安全网址CyberKendra报导,SpringCloudFunction官方网功能测试曝出了SpringCloudFunctionSPEL(SpringExpressionLanguage)关系式引入漏洞, *** 黑客可使用该漏洞引入SPEL表达式来开启远程连接命令实行。
最初,科学研究工作人员在剖析SpringCloud函数公式的main支系时,发觉有开发者向在其中加上了SimpleEvaluationContext类。还采用了isViaHeadervariable做为标示,在分析spring.cloud.function.routing-expression以前分辨的值源自HTTPheader。现阶段,SpringCloudFunction被很多互联网巨头运用于设备中,包含AWSLambda、Azure、GoogleCloudFunctions、ApacheOpenWhisk及其很多Serverless服务提供商。
依据官方网文本文档,SpringCloudFunction是根据SpringBoot的函数计算框架,它可以:根据函数公式推动业务逻辑的完成。将业务逻辑的开发设计生命期与一切特殊的运作时总体目标分离出来,便于应用同样的编码可以做为Web端点、流处理器数量或每日任务运作。适用跨Serverless服务提供商的统一程序编写实体模型,具有单独运作(当地或在PaaS中)的工作能力。在Serverless上给予程序流程上开启SpringBoot作用(全自动配备、依赖注入、指标值)。
简单点来说,SpringCloudFunction根据抽象化传送关键点和基础设施建设,为开发者保存了解的开发环境和开发流程,让开发者致力于完成业务逻辑,进而提升开发设计高效率。现阶段,SpringCloudFunctionSPEL漏洞已被分类为比较严重级别,CVSS(通用性安全性漏洞评分标准)得分成9.0(100分10)。
对比前面一种,3月29日夜间,有许多网民曝出的SpringRCE漏洞,让开发者圈中人人自危。但是有一些与众不同的是,这一漏洞现阶段并没像Log4j2事情那般造成的圈里众多公司大型厂的紧急行动,都不像SpringCloudFunctionSPEL漏洞那般有官方网表明,乃至连海外公布漏洞的源头也是来源于 *** 和中国一部分 *** 信息安全网址。
jump 最普通的了,谁都会的
leap 是敏捷的跳,像蜘蛛侠或黑客帝国等非人类那样,一般的人类难以模仿
skip 是轻快地蹦跳,“蹦蹦跳跳地走”、“跳绳”都用
spring 是突然地弹跳,像弹簧那样
随着企业信息化的不断深入,各种各样的信息系统成为提高企业运营及管理效率的必备工具,越来越多的企业核心机密如销售机会、客户资料、设计方案等通过信息系统存储、备案、流转,这些核心资料一旦外泄,势必对企业造成极大损失。科技时代,信息是企业生存的命脉,信息的安全也必然成为企业极度重视的问题。如今,随着各种信息安全措施的实施,信息泄密已经从外部泄漏向内部人员泄漏转移。外部的黑客、病毒要想获取有价值的信息,必须穿透多道防火墙,逃避多重杀毒工具的追杀,再对信息进行筛选才能如愿以偿;而内部人员知道什么信息是有价值的,如果不对信息进行必要的安全防护,企业内部一些有有心人员会十分容易地获取自己所需要的信息资料。
最近的一份调查显示,几乎有一半的各行各业专业人士承认当他们跳槽时会带走资料,包括文件、销售协议和合同清单等各种资料,并将它们告诉下一个老板。调查还发现,八成的职员可以轻松地下载“有竞争力”的资料和信息,然后带到下一份工作中。
信息安全任重而道远。要保证信息系统的安全,需要考虑到很多方面如防火墙、加密传输、防SQL注入等,但很多的安全方案都是从如何把守大门着手的,如身份认证、数字证书,不管是传统的用户名加口令方式还是基于生物特征识别的指纹、视网膜扫描技术,乃至各类电子政务领域常用的USBkey都是在进入系统大门时大做文章,一旦身份识别完成进入大门后,却听之任之,很少再有处理方案。本文重点不在如何进行身份认证,而在身份认证完成后也即进入系统大门后,如何保证用户只在自己有权限的范围内进行操作,而不是可以进行任意功能的操作即系统内部细粒度权限控制解决方案。
常用的权限系统设计模式是以角色为核心的,即角色是具有相同权限的一类人员的 *** :
1. 一个角色可以有包含多个操作人员,一个操作人员也可以属于多个角色
2. 一个角色可以具有多个功能的操作权限,一个功能也可以被多个角色所拥有。
在登录时通过查询登录用户所属角色,即可得到个用户的所有功能 *** ,如下图:
多数业务系统的页面功能菜单设计是以三级为标准的,即一级功能菜单、二级功能菜单、三级功能菜单,通常情况下一二级功能菜单只是用于功能分类,是不具有功能访问地址的,三级菜单才是功能的真正入口,常规权限系统就是通过控制每个人员对应的功能菜单的显示与隐藏来实现权限控制。要实现细粒度权限控制,可在设计功能表时再加入第四层:页面元素,隶属于第三层功能菜单,这些页面元素用来标识功能页面中的每一个功能按钮,如增加、修改、删除、查询都可算是页面元素,在为角色分配权限时,第四层也同样纳入统一权限管理,如果有此页面元素的权限,则页面上就显示该按钮,如果没有此页面元素的功能权限,则该按钮就不会显示出来。
对于没有权限访问的功能或页面除了进行前台的隐藏之外,还需要在后台访问时进行权限的验证,否则操作人员绕开页面直接通过输入URL访问功能就会造成权限漏洞,通过SpringMVC+Annotation的方式可以轻松实现,代码如下:
之一步:创建SpringMVC拦截器,拦截所有需要进行权限验证的功能请求
[html] view plain copy
!-- 开启注解 --
mvc:annotation-driven/
!-- 静态资源访问 --
mvc:resources location="/static/" mapping="/static/**"/
!-- 拦截器 --
mvc:interceptors
!-- 多个拦截器,顺序执行 --
mvc:interceptor
!-- 如果不配置或/**,将拦截所有的Controller --
mvc:mapping path="/**" /
!-- 在Freemarker界面展示之前做一些通用处理 --
bean class="cfd0-3e1b-191e-f314 xx.xxxx.core.web.FreeMarkerViewInterceptor"/bean
/mvc:interceptor
/mvc:interceptors
第二步:创建作用于Method级别的Annotation类,用于传入功能ID
[java] view plain copy
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface Permission {
/**
* 功能ID,该功能ID,对应数据库中的功能ID
* @return
* @version V1.0.0
* @date Jan 13, 2014 4:59:35 PM
*/
String value();
}
第三步:通过静态常量建立数据库中的功能ID与执行 *** 的一对一关系
[java] view plain copy
public class FuncConstants {
/**
* 系统管理-角色管理-增加角色
*/
public final static String Xtgl_Jsgl_AddJs = "4399d98bb0d84114acb5693081e83bc9";
/**
* 系统管理 - 部门管理- 部门列表
*/
public final static String Xtgl_Bmgl_BmList = "dbc4bf80f8b6418788b79de204d37932";
}
第四步:在SpringMVC拦截器中验证权限
[java] view plain copy
/**
* FreeMarker视图拦截器,页面展示之前做一些通用处理
* @version V1.0.0
* @date Dec 12, 2013 4:20:04 PM
*/
public class FreeMarkerViewInterceptor extends HandlerInterceptorAdapter {
public void afterCompletion(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, Exception arg3) throws Exception {
}
public void postHandle(HttpServletRequest request, HttpServletResponse response, Object arg2, ModelAndView view) throws Exception {
String contextPath = request.getContextPath();
if (view != null) {
request.setAttribute("base", contextPath);
}
}
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
//处理Permission Annotation,实现 *** 级权限控制
HandlerMethod method = (HandlerMethod)handler;
Permission permission = method.getMethodAnnotation(Permission.class);
//如果为空在表示该 *** 不需要进行权限验证
if (permission == null) {
return true;
}
//验证是否具有权限
if (!WebUtil.hasPower(request, permission.value())) {
response.sendRedirect(request.getContextPath()+"/business/nopermission.html");
return false;
}
return true;
//注意此处必须返回true,否则请求将停止
//return true;
}
}
至此,基于按钮、 *** 验证的细粒度权限体系完成!
《魔女》电影结局是什么意思?能详细讲解一下吗? 女主自称姐姐,所以感觉白衣女孩应该是同样控制基因出来的孩子,但是是白博士妹妹创造的,女主是白博士创造的。女主得到了缓解症状的药,应该就是杀翻总公司,得知...
ps4买正版还是破解版呢? 道理和原则上讲,都会觉得应该买正版。不过说实话,ps5已经有消息了,现在入ps4到时候感觉也会二手卖掉吧,正版破解区别不大,如果ps5向下兼容的话。其次呢,楼主在ps4上想...
手机远程关闭家里网络 通过手机上为家庭网络设置定时关闭设置,实现远程关闭家庭网络。1、在和家亲应用页面,打开【连接】中的【网关管理】选项。2、在网关管理页面,打开【WiFi】定时设置。3、进入wifi...
pixiv p站 手机去广告破解版在哪下载 说明:pixiv去广告破解版,破解高级功能,去除广告,有安卓,苹果和电脑版pixiv(日本插画下载软件)pixiv app是由pixiv(P站)官方推出的一...
破晓传说xbox哪个区中文 破晓传说xbox是全区中文的。破晓传说是全区中文的,也就是不管你在哪个区购买,都可以有中文,目前有玩家测试了其他服,比如新西兰,还是可以显示中文,不过只有繁体中文。此外游戏...
最近章鱼星球这么火 有哪位朋友能跟我说说到底有啥用啊? 我刚入了一台章鱼星球,对于我来说,就是一方面做私人云盘用,下载存储一些资料照片什么的,另一方面就是参加他们的星球联盟挖矿,挖矿所得的积分星可以兑...