2

XACMLポリシーを使用していて、次のようなリソースターゲットを含むルールがあります。

    <Resources>
      <Resource>
        <ResourceMatch MatchId="urn:oasis:names:tc:xacml:1.0:function:anyURI-equal">
          <AttributeValue DataType="http://www.w3.org/2001/XMLSchema#anyURI">/MyDirectory</AttributeValue>
          <ResourceAttributeDesignator AttributeId="urn:oasis:names:tc:xacml:1.0:resource:resource-id" DataType="http://www.w3.org/2001/XMLSchema#anyURI"/>
        </ResourceMatch>
      </Resource>
    </Resources>

このルールをのすべてのサブディレクトリに適用したいと思います/Mydirectory。ただし、リソースを使用してリクエストを評価すると/MyDirectory/MySubdirectoryDECISION_NOT_APPLICABLE (3)応答が返されます。

単一のディレクトリのすべてのサブディレクトリにルールを適用できるXQuery関数はありますか?

4

1 に答える 1

4

urn:oasis:names:tc:xacml:2.0:function:anyURI-regexp-match を使用して、AttributeValue を正規表現として定義できます。

<Resources>
      <Resource>
        <ResourceMatch MatchId="urn:oasis:names:tc:xacml:2.0:function:anyURI-regexp-match">
          <AttributeValue DataType="http://www.w3.org/2001/XMLSchema#string">^/MyDirectory/</AttributeValue>
          <ResourceAttributeDesignator AttributeId="urn:oasis:names:tc:xacml:1.0:resource:resource-id" DataType="http://www.w3.org/2001/XMLSchema#anyURI"/>
        </ResourceMatch>
      </Resource>
</Resources>
于 2011-09-23T17:22:30.357 に答える