日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Apache ActiveMQ中的消息级别授权

發布時間:2023/12/3 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Apache ActiveMQ中的消息级别授权 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

盡管上一篇文章介紹了“代理級身份驗證”,但該博文是關于消息級更嚴格的授權的。

我在現實生活中的項目中并沒有這么精細的授權,但是我想自己做,并為讀者提供一個教程,以擴展他們對ActiveMQ中安全性的了解并簡化他們的工作。

有時,限制對代理的訪問以及在某些消息之上進行訪問可能很有用。 ActiveMQ沒有開箱即用的插件。 您必須自己或多或少地實施它。

使用Maven創建Java項目

您必須首先基于Maven創建一個新的Java項目。

在下一步中,我建議將activemq-all maven依賴項添加到項目中(與activemq安裝版本相同),以確保使用正確的導入和類。

此處提供了所有activemq版本和相應的maven依賴片段的列表。

之后,是時候向以前創建的項目中添加新的Java類了。 我的消息級別策略類如下所示:

package com.schulz.bennet.activemq;import org.apache.activemq.broker.ConnectionContext; import org.apache.activemq.command.Message; import org.apache.activemq.security.MessageAuthorizationPolicy;public class MyMessageAuthorizationPolicy implements MessageAuthorizationPolicy {public boolean isAllowedToConsume(ConnectionContext ctx, Message m) {return ctx.getUserName().equals("admin");} }

注意:您的類必須實現MessageAuthorizationPolicy接口,并且還必須向類中添加公共的boolean isAllowedToConsume(…)方法。 在這種方法中,您可以實施邏輯來決定允許誰使用您的消息。 在我的示例中,僅允許管理員使用。

將策略添加到ActiveMQ

打開一個控制臺,CD進入您的項目文件夾,并通過調用mvn clean install命令來構建您的maven應用程序。

現在是時候將jar文件從目標項目文件夾復制到ActiveMQ安裝的lib文件夾,以使其可用于ActiveMQ。 在最后的配置步驟中,您必須將以下代碼段添加到activemq.xml的代理標記中:

<messageAuthorizationPolicy><bean class="com.schulz.bennet.MyMessageMessageAuthorizationPolicy"xmlns="http://www.springframework.org/schema/beans" /></messageAuthorizationPolicy>

提示:不要忘記將其更改為完全合格的類名,而不是我的;-)

通過使用消息來測試策略

首先,您必須通過控制臺上的以下命令啟動代理:

./bin/activemq start

通過使用activemq腳本使用示例消息來檢查您的策略是否正常運行:

./bin/activemq consumer --user admin --password password

這應該起作用,因為以前創建的策略類允許用戶admin使用消息。 除此之外,與用戶admin以外的其他用戶一起使用消息應該是不可能的。 您可以使用其他用戶進行測試:

./bin/activemq consumer --user consumer --password password

該使用者不應使用任何單個消息。

如果您有任何疑問,想要我的源代碼,YouTube視頻或類似的東西,只需發表評論或通過Twitter與我聯系。 享受ActiveMQ的樂趣!

翻譯自: https://www.javacodegeeks.com/2016/07/message-level-authorization-apache-activemq.html

總結

以上是生活随笔為你收集整理的Apache ActiveMQ中的消息级别授权的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。