无意中发现了一个巨牛的人工智能教程,忍不住分享一下给大家。教程不仅是零基础,通俗易懂,而且非常风趣幽默,像看小说一样!觉得太牛了,所以分享给大家。点这里以跳转到教程。
一:认证预授权
activemq作为主流的消息中间件,其资源及论坛还是比较多的,但是针对认证与授权都是前篇一律。在此通过阅读官方文档及实例测试详解验证与授权的配置
1、系统环境CentOs6.5,首先从官网下载activemq的安装包,解压运行即可,默认使用端口为8161(管理端口)、61616(用于创建消息与消费消息)。
2、配置过程如下
先编写conf/activemq.xml文件
添加在
其中groups信息用于验证授权,用户信息可以从conf/credentials.properties中通过${}进行获得。
其中configuration=“activemq-domain”中的activemq-domain要与conf/login.config中节点名称对应,内容如下
activemq-domain {
org.apache.activemq.jaas.PropertiesLoginModule required
org.apache.activemq.jaas.properties.user="users.properties"
org.apache.activemq.jaas.properties.group="groups.properties"
reload=true;
};
通过上述配置可以知道,此时用户信息及组信息是从users.properties和groups.properties文件中进行加载的,其中reload=true表示,更新用用户信息可以动态加载。
read :destination中消息的浏览及消费
write :destination中消息的创建
admin :destiantion中最高权限,任意消息的管理
用户权限配置
消息有两种queue和topic,其中read、write、admin用户指定用户组,其中conf/groups.properties中文件内容如下
admins=admin
users=admin,develop,sslclient
tempDestinationAdmins=system,user,sslclient,client,broker1,broker2
guests=guest
等号前时候组名,等号后是用户列表,多个用户之间用","分割。
二:持久到Mysql中
将mysql的mysql-connector-java-5.1.35.jar拷贝到activemq的lib目录下,
修改conf/activemq.xml文件,在
这里注意class属性的设置,早期版本的mq使用的org.apache.commons.dbcp.BasicDataSource,新版本的mq使用的org.apache.commons.dbcp2.BasicDataSource
更新
总结:
1、
2、如果配置
Caused by: javax.security.auth.login.LoginException: No LoginModules configured for activemq-domain
异常。