2011-06-16 68 views
1

這裏,XACML編輯我在想什麼今天上午:實現基於現有的XML編輯器插件

我需要定義很多XACML政策(這是一個XML應用程序)的時刻。 到目前爲止,我已經使用了Eclipse提供的XML編輯器,並定義了一些模板來使事情更簡單。這工作得很好,但是有些東西可以改進:

  • 如果內容輔助只會建議模板,實際上是允許的地步,我想將它們插入
  • 另一個實用的功能是它會很高興有一個有效的屬性值列表,當我「標籤」模板中定義的佔位符

這實際上是可能的嗎?我在這裏讀過一些地方,你可以用編程的方式定義你自己的模板變量,這也許可以解決我的第一個問題。

回答

2

WSO2 Identity Server是一個基於sunxacml的開源授權引擎。 WSO2 Identity Server包含一個很好的XACML UI策略編輯器,可以很容易地用來創建複雜的XACML策略。我認爲最好自己嘗試一下。用戶不想對XACML有太多的知識來定義這些策略。但您仍然希望通過手動過程來定義屬性值。此外它還有一個PIP圖層來插入​​任何屬性查找器模塊。因此,您可以從任何數據庫,LDAP用戶存儲,Web服務等等中找到您的屬性。此外還有決策緩存,策略緩存和PIP級別屬性緩存以提高性能。您可以從http://wso2.org/下載WSO2 Identity Server,並參考https://svn.wso2.org/repos/wso2/trunk/carbon/components/identity/的實現源代碼。

0

您也可以考慮Eclipse的ALFA插件,它是一個免費的插件。它遠離XACML的XML表示法,並使用稱爲ALFA(Axiomatics Language for Authorization)的僞代碼語言。 ALFA更易於理解,閱讀和書寫。這裏有一個例子:

/** 
    * A user can edit a document he/she owns 
    */ 
    policy editDoc{ 
     target clause actionId=="edit" and resourceType=="document" 
     apply firstApplicable 
     rule ownersCanEdit{    
      permit 
      condition document.owner==user.userId 
     } 
    } 

您可以從here下載該插件是免費的。