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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

NutchServer的安全层

發布時間:2023/12/3 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 NutchServer的安全层 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

我曾作為GSoC 2016項目在Apache Nutch的NutchServer的Security Layer上工作,并完成了它。 在此博客文章中,我將解釋其工作原理和使用方法。 首先,建議您閱讀以前有關GSoC 2016接受的帖子: http ://furkankamaci.com/gsoc-2016-acceptance-for-apache-nutch/(如果您尚未閱讀的話)。

Apache Nutch是一個高度可擴展和可擴展的開源Web爬網程序軟件項目。 源于Apache Lucene,該項目已經多樣化,現在包括兩個代碼庫,分別是:

Nutch 1.x:成熟度高,可用于生產的履帶。 1.x依靠Apache Hadoop數據結構實現精細的配置,這對于批處理非常有用。

Nutch 2.x:這是一個從1.x直接汲取靈感的新興替代方案,但在一個關鍵方面有所不同。 通過使用Apache Gora處理對象到持久性映射,可以從任何特定的基礎數據存儲中抽象出存儲。 這意味著我們可以實現極為靈活的模型/堆棧,以將所有內容(獲取時間,狀態,內容,已解析的文本,外鏈,內鏈等)存儲到許多NoSQL存儲解決方案中。

Nutch 2.x具有REST API,但上面沒有安全層。 我已經實現了基本身份驗證,摘要式身份驗證,作為身份驗證機制的SSL支持以及對NutchServer的細粒度授權支持。

當您想在NutchServer API上啟用安全性時,應遵循以下方式:

  • 通過將設置: restapi.auth屬性設置為BASICDIGESTSSL ,在nutch-site.xml上啟用安全性。 NONE是默認的,沒有提供安全。
  • 如果您選擇了BASICDIGEST作為身份驗證類型,則設置restapi.auth.users屬性。 用戶名,密碼和角色應以豎線字符(|)分隔。每個用戶應以逗號(,)分隔。 即admin | admin | admin,用戶|用戶|用戶。 默認值為admin | admin | admin,user | user | user
  • restapi.auth.ssl.storepath,restapi.auth.ssl.storepass,如果你有在restapi.auth屬性選擇SSL作為驗證模式restapi.auth.ssl.keypass性能。
  • 當您想通過客戶端代碼連接到NutchServer API時,可以按照以下方式進行操作:

    1.基本認證

    ClientResource resource = new ClientResource(protocol + "://" + domain + ":" + port + path); resource.setChallengeResponse(challengeScheme, username, password);try {resource.get(); } catch (ResourceException rex) {//catch it }

    2.摘要式身份驗證

    在第1步中使用相同的代碼,并在其后添加這些代碼:

    // Use server's data to complete the challengeResponse object ChallengeRequest digestChallengeRequest = retrieveDigestChallengeRequest(resource); ChallengeResponse challengeResponse = new ChallengeResponse(digestChallengeRequest, resource.getResponse(), username, password.toCharArray());resource.setChallengeResponse(challengeResponse); try {resource.get(); } catch (ResourceException rex) {//catch it }...private ChallengeRequest retrieveDigestChallengeRequest (ClientResource resource) {ChallengeRequest digestChallengeRequest = null;for (ChallengeRequest cr : resource.getChallengeRequests()) {if (ChallengeScheme.HTTP_DIGEST.equals(cr.getScheme())) {digestChallengeRequest = cr;break;}}return digestChallengeRequest; }

    3. SSL

    請遵循“基本身份驗證”中的相同步驟,但是不要忘記將SSL證書添加到您的信任存儲中。

    NutchServer通過其REST API提供對許多功能的訪問。 實施身份驗證和授權使用戶可以通過安全方式與其進行通信。

    翻譯自: https://www.javacodegeeks.com/2016/09/security-layer-nutchserver.html

    創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

    總結

    以上是生活随笔為你收集整理的NutchServer的安全层的全部內容,希望文章能夠幫你解決所遇到的問題。

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