1. 11 Mar, 2022 1 commit
  2. 07 Mar, 2022 1 commit
    • cdanger's avatar
      - Added SPIF-to-XACML conversion stylesheets: · 629cb21d
      cdanger authored
        - `spif2xacml-for-xpath-1.0.xsl`: SPIF-to-XACML policy transformation XSLT using XPath 1.0, more verbose and less efficient than the XPath 2.0 version below.
        - `spif2xacml-for-xpath-2.0.xsl`: SPIF-to-XACML policy transformation XSLT using XPath 2.0 features (not available in 1.0), with the option to enable AuthzForce optimizations (XSLT parameter `authzforce_optimized`) for further enhancements.
      
      - Used generated policies from sample ACME SPIF with above stylesheets to custom pdp tests XPath2.0 and XacmlVariablesAsXPathVariables.
      629cb21d
  3. 18 Feb, 2022 1 commit
  4. 07 Feb, 2022 1 commit
  5. 02 Feb, 2022 1 commit
    • cdanger's avatar
      - Fixed #62: Refactor BasePdpEngine - Move the standardEnvironmentAttribute*... · 508e918b
      cdanger authored
      - Fixed #62: Refactor BasePdpEngine - Move the standardEnvironmentAttribute* code (providing current-time/dateTime/date attributes not present in the request) to dedicated AttributeProvider -> new PDP XSD and new built-in AttributeProvider: `StandardEnvironmentAttributeProvider` class
      - authzforce-ce-parent upgraded to 8.1.0
      - Authzfoce-ce-core-pdp-api upgraded to 19.0.0: applied API changes:
      ### Changed
      - AttributeProvider interface removed, existing NamedAttributeProvider used instead
      - `authzforce-ce-parent` version: 8.1.0
      - Improved support of Multiple Decision Profile in the `PdpEngine` interface and the following types of PDP extensions:  Combining Algorithm, Function, Attribute Provider, Policy Provider. The corresponding interfaces (`CombiningAlg`...) have changed: certain of their methods - called during request evaluation - now take a new `Optional<EvaluationContext>` parameter which is used to pass the MDP evaluation context (MDP = Multiple Decision Profile) which is an evaluation context shared across all the Individual Decision Requests within the same Multiple Decision Request whenever MDP is used in the input request to the PDP. This enables all PDP extensions to be aware / provide better support of the Multiple Decision Profile. This may be used in particular by an Attribute Provider providing the standard current-time/current-date/current-dateTime attributes which should have the same values for all Individual Decision Requests corresponding to the same Multiple Decision Request.
      - `DecisionRequest` and `EvaluationContext` interfaces changed:
        - New method `getCreationTimestamp()`: provides the date/time of the request/context creation. Used typically for the standard current-* attributes.
        - `putNamedAttributeValueIfAbsent(AttributeFqn, AttributeBag)` replaced with more generic `putNamedAttributeValue(AttributeFqn, AttributeBag, boolean override)`
      
      ### Added
      - Attribute Provider (`NamedAttributeProvider`) interface: added 2 new methods for better support of the Multiple Decision Profile (all implemented by default to do nothing):
      
          - `beginMultipleDecisionRequest(EvaluationContext mdpContext)`: for special processing in the context of the MDP request (before corresponding Individual Decision requests are evaluated)
          - `supportsBeginMultipleDecisionRequest()`: indicates whether the Attribute Provider implements `beginMultipleDecisionRequest()` method and therefore needs the PDP engine to call it when a new MDP request is evaluated
          - `beginIndividualDecisionRequest(EvaluationContext individualDecisionContext, Optional<EvaluationContext> mdpContext)`: for special processing in the context of an Individual Decision request, before it is evaluated against policies (before the `get(attribute)` method is ever called for the individual decision request).
          - `supportsBeginIndividualDecisionRequest()`: indicates whether the Attribute Provider implements `beginIndividualDecisionRequest()` method and therefore needs the PDP engine to call it when a new individual decision request is evaluated.
      
      - PdpBean#evaluate(...), PdpEngine#evaluate(...) and all *Evaluator#evaluate(...) method takes a new `Optional<EvaluationContext>` parameter to support the new MDP evaluation context when MDP (Multiple Decision profile) is used
      - Moved the OSS PDP benchmark (authzforce, at&t xacml and wso2 balana) to a separate maven module
      - Obsoleted .travis.yml replaced with GitHub Action
      - Replaced ModularAttributeProvider with new CloseableNamedAttributeProviderRegistry, EvaluationContextBased*NamedAttributeProvider classes
      - Updated all tests pdp.xml (PDP configs) to new XSD
      - Added Migration (from 17.x to 18.x) instructions with new `migration` folder containing migration XSLT stylesheets and new XSLT for migrating PDP config to XSD v8: pdp-xsd-v7.xsl
      - pdp-testutils module: upgraded jongo dependency to 1.5.0, mongo-java-driver to 3.12.10
      - New StandardResourceAttribute/StandardSubjectAttribute enums for standard resource/suject attributes with standard-fixed datatype
      - pdp-cli: Upgraded picocli to 4.6.2, testng to 7.5
      508e918b
  6. 22 Oct, 2021 5 commits
  7. 28 Aug, 2021 3 commits
  8. 22 Jun, 2021 1 commit
  9. 27 Jan, 2021 1 commit
    • cdanger's avatar
      - Fixed #40: Upgrade supported JRE to JAVA 11 (java 8 no longer supported) · 5ad38b49
      cdanger authored
      - Upgraded Maven parent project to 8.0.0
      - As part of Java 11 migration, upgraded JAXB (Jakarta XML Bining) to v2.3.3
      - Upgraded authzforce-ce-core-pdp-api to v18.0.0
      - Fixed CVE on jackson-databind -> v2.9.10.8
      - Upgraded authzforce-ce-xacml-json-model: 3.0.0
      - Replaced findbugs maven plugin with spotbugs
      - updated license headers for year 2021
      5ad38b49
  10. 23 Mar, 2020 2 commits
  11. 15 Mar, 2020 6 commits
  12. 17 Jan, 2020 2 commits
  13. 16 Jan, 2020 1 commit
    • cdanger's avatar
      - Fixed #43 · 2b8d2dad
      cdanger authored
      - Upgraded authzforce-ce-core-pdp-api version to 16.1.0 adding
      PolicyProvider#getCandidateRootPolicy() interface
      - Changed PDP config XSD
      	- Simplified versioning (version="7.1" and remove minor version from
      namespace)
      	- 'rootPolicyRef' no longer mandatory. If not specified,
      PolicyProvider#getCandidateRootPolicy() on the 'policyProvider' is used
      to specify the root policy
      - Added CoreStaticPolicyProvider#getCandidateRootPolicy() to implement
      PolicyProvider#getCandidateRootPolicy()
      2b8d2dad
  14. 31 Oct, 2019 1 commit
  15. 28 Oct, 2019 1 commit
  16. 27 Oct, 2019 3 commits
  17. 26 Oct, 2019 2 commits
  18. 02 Jun, 2019 1 commit
  19. 29 Aug, 2018 1 commit
  20. 17 Aug, 2018 1 commit
  21. 19 Jul, 2018 1 commit
  22. 11 Jul, 2018 2 commits
  23. 10 Jul, 2018 1 commit