Storm對(duì)DRPC權(quán)限控制Version1.0.1

對(duì)Storm的DRPC進(jìn)行權(quán)限控制蜂嗽,
并且設(shè)計(jì)相應(yīng)的測(cè)試驗(yàn)證抛虏。

1.集群安裝

請(qǐng)參考Storm集群安裝Version1.0.1

2.使用DRPC功能

請(qǐng)參考Storm集群使用DRPC功能Version1.0.1
預(yù)置如下數(shù)據(jù):
在Strom集群上面啟動(dòng)DRPC進(jìn)程博其,
并且提交了DRPC的topology,
方法名稱為exclamation迂猴。

3.開(kāi)啟DRPC的權(quán)限控制

storm.yaml文件中開(kāi)啟DRPC的權(quán)限控制:

drpc.authorizer: "org.apache.storm.security.auth.authorizer.DRPCSimpleACLAuthorizer"
drpc.authorizer.acl.filename: "drpc-auth-acl.yaml"
drpc.authorizer.acl.strict: true

在conf目錄下新建drpc-auth-acl.yaml文件慕淡,
配置內(nèi)容如下:

drpc.authorizer.acl:
  "exclamation":
    "client.users":
      - "alice"
      - "kafka"
    "invocation.user": "stormna"

說(shuō)明,配置用戶kafka和alice可以通過(guò)客戶端調(diào)用drpc的方法exclamation沸毁,
client.users指定的用戶可以執(zhí)行的操作為operation:execute峰髓,
invocation.user可以執(zhí)行的操作operation:failRequest,fetchRequest,result傻寂,
當(dāng)drpc.authorizer.acl.strict為false時(shí),
意為permissive寬容儿普,
即沒(méi)有配置權(quán)限控制的方法可以被任意用戶執(zhí)行崎逃,
而在配置文件中指定了控制權(quán)限的方法還需要匹配才能執(zhí)行。
當(dāng)drpc.authorizer.acl.strict為ture時(shí)眉孩,
只有在配置文件中的用戶才能執(zhí)行个绍,
不在則拒絕,即為嚴(yán)格的白名單浪汪。

4.重啟Storm集群

配置完成后重新啟動(dòng)storm集群巴柿,包括nimbus,drpc死遭,
登陸Storm UI管理臺(tái)可以看到新的配置項(xiàng)已經(jīng)生效广恢。

5.客戶端驗(yàn)證

使用DRPCClientTest.java類中對(duì)于exclamation的客戶端調(diào)用代碼,
具體代碼請(qǐng)參考Storm集群使用DRPC功能Version1.0.1的第7章節(jié)呀潭,
打成名稱為drpctest.jar的jar包钉迷,
然后上傳到Linux的storm用戶下面,
執(zhí)行如下測(cè)試命令:
java -jar drpctest.jar hi
未授權(quán)用戶會(huì)拋出異常:

Exception in thread "main" AuthorizationException(msg:DRPC request 'execute' for 'unknown' user is not authorized)
    at org.apache.storm.generated.DistributedRPC$execute_result$execute_resultStandardScheme.read(DistributedRPC.java:1231)
    at org.apache.storm.generated.DistributedRPC$execute_result$execute_resultStandardScheme.read(DistributedRPC.java:1200)
    at org.apache.storm.generated.DistributedRPC$execute_result.read(DistributedRPC.java:1134)
    at org.apache.storm.thrift.TServiceClient.receiveBase(TServiceClient.java:86)
    at org.apache.storm.generated.DistributedRPC$Client.recv_execute(DistributedRPC.java:106)
    at org.apache.storm.generated.DistributedRPC$Client.execute(DistributedRPC.java:92)
    at org.apache.storm.utils.DRPCClient.execute(DRPCClient.java:60)
    at test.zte.storm.drpc.DRPCClientTest.main(DRPCClientTest.java:28)

登陸到kafka用戶钠署,
執(zhí)行同樣的測(cè)試命令:
java -jar drpctest.jar hi
正常返回結(jié)果:

input:hi, result:hi!

用戶kafka執(zhí)行成功糠聪,而storm執(zhí)行失敗,
是因?yàn)槲覀冊(cè)赿rpc-auth-acl.yaml給kafka配置了權(quán)限谐鼎,
而沒(méi)有給storm用戶權(quán)限舰蟆。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市狸棍,隨后出現(xiàn)的幾起案子身害,更是在濱河造成了極大的恐慌,老刑警劉巖草戈,帶你破解...
    沈念sama閱讀 211,948評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件塌鸯,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡唐片,警方通過(guò)查閱死者的電腦和手機(jī)界赔,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,371評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)牵触,“玉大人,你說(shuō)我怎么就攤上這事咐低±克迹” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 157,490評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵见擦,是天一觀的道長(zhǎng)钉汗。 經(jīng)常有香客問(wèn)我羹令,道長(zhǎng),這世上最難降的妖魔是什么损痰? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,521評(píng)論 1 284
  • 正文 為了忘掉前任福侈,我火速辦了婚禮,結(jié)果婚禮上卢未,老公的妹妹穿的比我還像新娘肪凛。我一直安慰自己,他們只是感情好辽社,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,627評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布伟墙。 她就那樣靜靜地躺著,像睡著了一般滴铅。 火紅的嫁衣襯著肌膚如雪戳葵。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 49,842評(píng)論 1 290
  • 那天汉匙,我揣著相機(jī)與錄音拱烁,去河邊找鬼。 笑死噩翠,一個(gè)胖子當(dāng)著我的面吹牛戏自,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播绎秒,決...
    沈念sama閱讀 38,997評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼浦妄,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了见芹?” 一聲冷哼從身側(cè)響起剂娄,我...
    開(kāi)封第一講書(shū)人閱讀 37,741評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎玄呛,沒(méi)想到半個(gè)月后阅懦,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,203評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡徘铝,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,534評(píng)論 2 327
  • 正文 我和宋清朗相戀三年耳胎,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片惕它。...
    茶點(diǎn)故事閱讀 38,673評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡怕午,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出淹魄,到底是詐尸還是另有隱情郁惜,我是刑警寧澤,帶...
    沈念sama閱讀 34,339評(píng)論 4 330
  • 正文 年R本政府宣布甲锡,位于F島的核電站兆蕉,受9級(jí)特大地震影響羽戒,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜虎韵,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,955評(píng)論 3 313
  • 文/蒙蒙 一易稠、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧包蓝,春花似錦驶社、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,770評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至绳泉,卻和暖如春逊抡,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背零酪。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,000評(píng)論 1 266
  • 我被黑心中介騙來(lái)泰國(guó)打工冒嫡, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人四苇。 一個(gè)月前我還...
    沈念sama閱讀 46,394評(píng)論 2 360
  • 正文 我出身青樓孝凌,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親月腋。 傳聞我的和親對(duì)象是個(gè)殘疾皇子蟀架,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,562評(píng)論 2 349

推薦閱讀更多精彩內(nèi)容

  • Storm集群安裝,基于版本1.0.1榆骚,同時(shí)開(kāi)啟Kerberos安全認(rèn)證片拍,使用apache-storm-1.0.1...
    木木與呆呆閱讀 1,036評(píng)論 0 10
  • 背景 OpenShift是目前比較主流的基于Kubernetes的容器云解決方案,OpenShift在kubern...
    小白_18M閱讀 1,173評(píng)論 0 5
  • storm簡(jiǎn)介 名詞解釋: spout妓肢,讀取原始數(shù)據(jù)為bolt提供數(shù)據(jù) bolt 捌省,從spout或其它bolt接收...
    盜夢(mèng)者_(dá)56f2閱讀 1,322評(píng)論 2 1
  • 淅淅瀝瀝的小雨在微風(fēng)的吹拂下,密密的斜織著碉钠,像個(gè)調(diào)皮的小精靈和行人玩起了捉迷藏的游戲纲缓。 老公騎著電動(dòng)三輪車帶著我和...
    陽(yáng)光_986c閱讀 389評(píng)論 0 1
  • 2018已經(jīng)到來(lái),那么你準(zhǔn)備好迎接接下來(lái)的日子嗎喊废? 2018.2.15晚上十一點(diǎn)二十五祝高,煙花的聲響縈繞在耳邊,鞭炮...
    余_ba8a閱讀 173評(píng)論 0 1