簡體   English   中英

如何在FIWARE中達到安全級別3?

[英]How to achieve security level 3 in FIWARE?

我正在計算機上部署FIWARE安全GE(即Wilma,AuthzForce,Keyrock)。 安全級別2(基本授權)運行良好,但是現在我需要使用XACML的安全級別3(高級授權)。

長話短說,我想要一個實現安全級別3的教程。但是,據我所知,關於安全級別3的任何教程或文檔都不存在。

現在,我使用PAP的API創建策略,然后將config.js中的“ custom_policy”選項從“ undefined”更改為“ policy.js”。 然后,我將“ policy.js”文件創建為“ PEP / policies”,但與模板文件相比沒有任何變化,因為我不知道這段代碼的確切作用。 我想我應該使用'xml'變量制作XACML請求表單。 但就我而言,當我使用“ xml”變量發出XACML請求並返回此變量時,PEP給我錯誤。 這是我的PEP錯誤:

Error: Root - Error in AZF communication <?xml version="1.0" encoding="UTF-8" standalone="yes"?><error xmlns="http://authzforce.github.io/rest-api-model/xmlns/authz/S" xmlns:ns2="http://www.w3.org/2005/Atom" xmlns:ns3="http://authzforce.github.io/core/xmlns/pdp/5.0" xmlns:ns4="http://authzforce.github.io/pap-dao-flat-file/xmlns/properties/3.6"><message>Invalid parameters: cvc-elt.1: Cannot find the declaration of element 'Request'.</message></error>

這是policy.js中的“ getPolicy”代碼(XACML請求)。 我只是非常簡單地請求是否允許響應,因為我不確定當時在做什么。

exports.getPolicy = function (roles, req, app_id) {
    var xml = xmlBuilder.create('Request', {
            'xmlns': 'urn:oasis:names:tc:xacml:3.0:core:schema:wd-17',
            'CombinedDecision': 'false',
            'ReturnPolicyIdList': 'false'})
    .ele('Attributes', {
            'Category': 'urn:oasis:names:tc:xacml:1.0:subject-category:access-subject'});

那么,任何人都可以給我有關實現安全級別3的任何信息?

升級到Wilma 6.2(錯誤修復)。

重用已知可用的lib / azf.js中的代碼,並根據您的需求調整Request內容。 在那里,該變量被錯誤地稱為XACMLPolicy ,但是請不要誤解,這是一個實際的XACML Request 這是使用xml2json包將JSON轉換為XML,而在您的代碼中您似乎使用了另一種,也許xmlbuilder 您沒有粘貼完整的代碼-此xmlBuilder變量從何而來? -所以我只是在猜測。

如果您確實在使用xmlbuilder包並且想要堅持使用它,我會注意到在使用命名空間示例中 ,xmlns屬性以另一種方式放置:

var xmlBuilder = require('xmlbuilder');

var xml = xmlBuilder.create('Request', { encoding: 'utf-8' })
.att('xmlns', 'urn:oasis:names:tc:xacml:3.0:core:schema:wd-17')
.att('CombinedDecision': 'false')
.att('ReturnPolicyIdList': 'false')
.ele('Attributes', {'Category': 'urn:oasis:names:tc:xacml:1.0:subject-category:access-subject'});

也許這有所作為,我沒有檢查。

也可以在Wilma的github上隨意提出問題,以獲取開發團隊的幫助。 (我不是其中之一,但我們已經為AuthzForce集成而合作。)

您得到的錯誤確實是

無效的參數:cvc-elt.1:找不到元素'Request'的聲明。

這是一個簡單的XML驗證問題。 您需要確保您發送的XACML請求包含正確的名稱空間聲明。

您會在這里看到關於此主題的另一個問題。

您可以粘貼您的XACML請求,以便我們判斷其是否有效嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM