0

XACML 標準を読んでいて、この要素が表示されますが、ドキュメントは非常に技術的であり、これらの要素に関する例を見つけることができません。

要素CombinerParametersと要素CombinerParameterは XACML で何をしますか?

ありがとう。

4

1 に答える 1

0

バックグラウンド

XACML ( ここで見つけることができます。XACML は、属性ベースのアクセス制御 ( ) を実装する言語です。

仕様では次のように定義されています。

  1. アーキテクチャ
  2. ポリシー言語
  3. 承認リクエストを送信し、承認応答を受信する手段

言語要素 - コンバイナ パラメータ

あなたの質問は言語自体に関係しています。この言語には、次のようなさまざまな要素が含まれています。

コンバイナ パラメータは、結合アルゴリズムと組み合わせて使用​​されます。

結合アルゴリズムとは何ですか?

policysetまたは要素に複数の子が含まれる場合policy、これらの子が競合する可能性があります。たとえば、ポリシーには次のルールを含めることができます。

  • マネージャーは自分の部門のドキュメントを表示できます
  • 管理者は機密文書を閲覧できません

これら 2 つのルールは矛盾しています。どっちが勝つ?ここで、アルゴリズムの組み合わせが導入されます (仕様の定義|ブログ投稿|ウィキペディア)。アルゴリズムを組み合わせると、どのポリシーとルールが優先されるかを判断するのに役立ちます。たとえば、deny-override を使用すると、拒否の決定が許可の決定よりも優先されます。

XACML の結合アルゴリズムには、動作方法に影響を与えるコンバイナー パラメーターを含めることができます。仕様で定義されているデフォルトの結合アルゴリズムはどれも結合パラメータを使用しないことに注意してください。必要に応じて、コンバイナー パラメーターを利用するカスタムの組み合わせアルゴリズムを実装できます。

コンバイナーパラメーターの詳細

最初の要素には、以下で定義される任意の数の 2 番目の要素が含まれます。

<xs:element name="CombinerParameters" type="xacml:CombinerParametersType"/>
<xs:complexType name="CombinerParametersType">
   <xs:sequence>
          <xs:element ref="xacml:CombinerParameter" minOccurs="0"
               maxOccurs="unbounded"/>
   </xs:sequence>
</xs:complexType>

2 番目の要素は次のように定義されます。

<xs:element name="CombinerParameter" type="xacml:CombinerParameterType"/>
<xs:complexType name="CombinerParameterType">
   <xs:sequence>
          <xs:element ref="xacml:AttributeValue"/>
   </xs:sequence>
   <xs:attribute name="ParameterName" type="xs:string" use="required"/>
</xs:complexType>

を含む:

  • 属性値のシーケンス
  • パラメータ名location

属性値は次のもので構成されます。

  • 値などChicago
  • データ型http://www.w3.org/2001/XMLSchema#string

XML の属性値の例は次のようになります。

<AttributeValue DataType="http://www.w3.org/2001/XMLSchema#string">Chicago</AttributeValue>

つまり、コンバイナーパラメーターは次のとおりです。

  • 場所などの識別子
  • 'Chicago' などの値自体と、文字列などのデータ型で構成された値。
于 2016-06-01T20:09:17.243 に答える