io.sapl:sapl-spring-pdp

Spring Boot auto-configuration for an embedded SAPL Policy Decision Point. Provides the PDP beans and wires up function libraries and policy information points discovered from the application context. Intentionally separate from sapl-spring-boot-starter so PEP-only consumers (using a remote PDP or no PDP at all) do not pay for embedded PDP transitive dependencies.


License
Apache-2.0

Documentation

Build

The Streaming Attribute Policy Language (SAPL) and the Streaming Attribute Authorization Engine (SAAE)

Maven Dependencies

Add the Maven Central snapshot repository to your pom.xml, if you want to use SNAPSHOT versions of the engine:

  <repositories>
    <repository>
      <id>ossrh</id>
      <url>https://s01.oss.sonatype.org/content/repositories/snapshots</url>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
    </repository>
  </repositories>

SAPL requires Java 11 or later

  <properties>
    <java.version>11</java.version>
    <maven.compiler.source>${java.version}</maven.compiler.source>
    <maven.compiler.target>${java.version}</maven.compiler.target>
  </properties>

Add a SAPL dependency to your application. When using Maven you can add the following dependencies to your project's pom.xml:

  <dependency>
    <groupId>io.sapl</groupId>
    <artifactId>sapl-pdp-embedded</artifactId>
    <version>2.1.0-SNAPSHOT</version>
  </dependency>

If you plan to use more SAPL dependencies, a useful bill of materials POM is offered, centralizing the dependency management for SAPL artifacts:

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>io.sapl</groupId>
        <artifactId>sapl-bom</artifactId>
        <version>2.1.0-SNAPSHOT</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>