`
can_do
  • 浏览: 262396 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Broker启用安全认证,需要用户名和密码验证

阅读更多
Broker需要在配置文件中开安全认证,客户端或者其他Broker连接时,需要通过对应的用户名和密码来访问,默认没有安全认证。配置样例如下:

(1)、指定加密的环境变量:

删除

<!-- Allows us to use system properties as variables in this configuration file -->

<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/>

增加

<!-- Allows us to use encrypted system properties as variables in this configuration file -->

<!-- Define authentication configure =begin= -->

<bean id="environmentVariablesConfiguration" class="org.jasypt.encryption.pbe.config.EnvironmentStringPBEConfig">

<property name="algorithm" value="PBEWithMD5AndDES" />

<property name="passwordEnvName" value="EMQ_ENCRYPTION_PASSWORD" />

</bean>                                                                    

<bean id="configurationEncryptor" class="org.jasypt.encryption.pbe.StandardPBEStringEncryptor">

<property name="config" ref="environmentVariablesConfiguration" />

</bean>

<bean id="propertyConfigurer" class="org.jasypt.spring.properties.EncryptablePropertyPlaceholderConfigurer">

<constructor-arg ref="configurationEncryptor" />

<!--如果使用明文的属性文件,则引用可改为credentials.properties,有时明文的属性文件可以启动成功,但不安全-->

<property name="location" value="file:${emq.home}/conf/credentials-enc.properties"/>

</bean>

<!-- Define authentication configure =end= -->

注意:不能同时使用,前者是使用一般系统变量,后者是使用加密的系统变量;

(2)、引入简单认证插件

<broker>

...

<plugins>

<simpleAuthenticationPlugin>

<users>

<authenticationUser username="system" password="${emq.password}"  groups="users,admins"/>

<authenticationUser username="user" password="${guest.password}"  groups="users"/>

<authenticationUser username="guest" password="${guest.password}"  groups="guests"/>

</users>

</simpleAuthenticationPlugin>

</plugins>



</broker>

(3)、访问方式的调整:

Ø jms客户端方式:

failover:(tcp://cnd:61616)?jms.userName=system&jms.password=manager




Ø NC方式配置如下:

<networkConnector uri="static:(tcp://10.3.20.205:61616?socketBufferSize=131072&amp;ioBufferSize=16384&amp;wireFormat.cacheSize=2048)"

                            name="bridge_src_epserver1"

                            dynamicOnly="false"

                            conduitSubscriptions="false"

                                           staticBridge="false"

                            networkTTL="10"

                            duplex="true"

                           userName="system"

                           password="manager" 

                            decreaseNetworkConsumerPriority="false">

</networkConnector>
分享到:
评论

相关推荐

    Kafka 配置用户名密码例子

    通过这个配置实例,我们可以了解到Kafka如何利用SASL/PLAIN进行简单的用户名和密码认证,以及如何在Kafka集群和客户端之间建立安全的连接。这为保障数据的安全传输提供了基础,同时,了解和实践这些配置将有助于我们...

    为activemq服务器添加简单验证机制

    要在ActiveMQ中启用用户名/密码验证,你需要修改`activemq.xml`配置文件。这个文件是基于Spring的XML配置,用于定义ActiveMQ Broker的各种属性。在4.0版本之后,ActiveMQ支持xbean配置方式,使得配置更加灵活。 ...

    SSO项目介绍.docx

    2. 应用系统改造:SSO启用的应用需要修改其认证模块,使用SSO API进行用户验证和授权。 3. 统一的认证和权限库:所有应用共享同一个认证和权限信息库,确保信息的一致性和安全性。 在实际应用中,SSO系统需要处理...

    chrome测试mqtt插件MqttLens

    5. 进行安全设置,如启用SSL/TLS加密和身份验证。 **总结:** MqttLens作为一款优秀的Chrome MQTT测试插件,极大地简化了MQTT协议的调试和测试过程,使得开发者能够更加便捷地探索和利用MQTT协议。同时,了解如何...

    MQTTBox-win,解压后安装即可使用。

    7. **登录验证**:支持基于用户名和密码的身份验证,以及基于证书的客户端身份验证,提供额外的安全保障。 8. **脚本支持**:对于自动化测试或复杂场景,MQTTBox允许编写JavaScript脚本来控制发布和订阅行为,增加...

    emqx-windows-4.3.11.zip

    7. **安全与认证**:为了保障安全性,建议更改默认的管理员账号密码,并启用身份验证与授权机制,如使用 LDAP、RADIUS 或内置的 ACL 规则。此外,还可以配置 TLS/SSL 支持,加密 MQTT 连接。 8. **插件系统**:EMQ ...

    mqtt服务端搭建安装文件

    总结,MQTT服务端的搭建与安装涉及到选择合适的broker、安装服务、配置参数、测试验证以及安全和扩展性考虑。理解这些基础知识对于构建基于MQTT的物联网系统至关重要。在实际应用中,应根据项目需求调整和优化MQTT...

    搭建mqtt服务,免费使用 无限制

    2. **认证授权**:设置用户身份验证和权限控制,避免未授权访问。 3. **防火墙设置**:只允许必要的IP地址或端口访问MQTT服务。 ### 总结 通过上述步骤,我们成功搭建了一个免费且无限制的MQTT服务,使用了EMQ X...

    emq_auth_redis.tar.gz

    在本压缩包“emq_auth_redis.tar.gz”中,包含了一个使用 Redis 作为身份验证和授权插件的配置,用于增强 EMQ 的安全性和管理能力。Redis 是一个开源的、基于键值的数据存储系统,常用于缓存、数据库和消息队列等...

    mosquitto安装.zip

    1. **身份验证**:启用用户名/密码认证,添加如下行: ``` allow_anonymous false password_file /etc/mosquitto/passwd ``` 并使用`mosquitto_passwd`工具创建用户和密码。 2. **TLS加密**:启用TLS加密通信...

    emq3.x服务安装包

    - **认证与授权**:你可以设置用户名和密码,或者启用其他认证方式,如证书、OAuth等。 - **日志设置**:调整日志级别和输出位置。 - **集群模式**:如果需要搭建EMQ X集群,需要配置集群相关参数。 **管理与监控**...

    MyMosquitpp.zip

    - **身份验证和授权**:许多MQTT服务器支持基于用户名和密码的身份验证,以及基于ACL的权限控制。 总的来说,`MyMosquitpp`项目提供了一个在Linux环境下自定义的MQTT客户端实现,利用`mosquitto`库的强大功能,为...

    emqx-windows-v4.0.1.zip MQTT服务器

    EMQ X支持基于用户名和密码的身份验证,以及基于ACL(Access Control List)的权限控制。可以在"etc\emq_auth_username.conf"和"etc\emq_acl.conf"中配置用户和权限规则。 8. **插件扩展** EMQ X的插件系统允许...

    emqx-win-5.1.4安装包

    6. **安全性**:EMQ X 支持多种身份验证方式,如用户名/密码、SSL/TLS、MQTT-over-WS/WSS、JWT 等,确保通信的安全性。同时,它还提供了访问控制列表(ACL)功能,允许管理员对客户端的发布和订阅操作进行精细控制。...

    emqx的zip包部署mqtt服务器

    默认情况下,无需用户名和密码,但强烈建议在生产环境中启用身份验证。 6. **客户端连接**:现在,你可以使用MQTT客户端工具(如mosquitto_pub/mosquitto_sub或MQTT.fx等)连接到你的EMQX服务器,进行发布和订阅...

    VisiBroker for Java开发人员指南

    - **身份验证**:介绍VisiBroker的安全机制,包括用户名/密码认证和SSL/TLS加密。 - **权限管理**:如何设置和实施对象级别的访问控制。 9. **性能优化** - **缓存策略**:理解对象引用缓存和数据缓存对性能的...

    emq压缩包(配合文章)

    - EMQ可以设置访问控制,例如基于用户名/密码的认证,或者使用TLS/SSL加密通信。 5. 插件系统: - EMQ的插件系统允许开发者扩展其功能,如Webhooks插件用于外部系统集成,或者Bridge插件实现不同MQTT broker间的...

    mqtt服务器端可配置服务器

    这通常涉及到用户身份验证(如用户名/密码)和授权策略。 - **消息持久化**:MQTT支持消息持久化,即使服务器重启,也能确保未被传递的消息不丢失。这需要配置消息存储路径和策略,如是否对所有主题都进行持久化,...

    MQQT协议介绍(一)

    8. **身份验证与授权**:MQTT支持基于用户名和密码的身份验证,以及基于ACL(Access Control List)的权限控制,以确保数据的安全性。 ### MQTT的应用场景 1. **物联网**:在智能家居、智能农业、工业自动化等场景...

Global site tag (gtag.js) - Google Analytics