Includes both the Policy Decision Point (PDP) and the Policy Administration Point (PAP) client SDKs
In the mean time, to use the library, you have to build it from source. To do this follow the instructions below.
Clone this repository, install dependencies with mvn.
git clone https://github.com/authzforce/xacml-sdk.git && cd xacmlsdk
mvn compile -DskipTests=true -Dmaven.javadoc.skip=true -B -V
Install the package within your own maven repository.
mvn install
You can start using it inside your java project by adding the dependency to your pom file
<dependency>
<groupId>com.thalesgroup.authzforce</groupId>
<artifactId>xacml-sdk-pdp-rest-impl</artifactId>
<version>5.0.0-SNAPSHOT</version>
</dependency>
for PDP actions
or
<dependency>
<groupId>com.thalesgroup.authzforce</groupId>
<artifactId>xacml-sdk-pap-rest-impl</artifactId>
<version>5.0.0-SNAPSHOT</version>
</dependency>
for PAP actions
The PDP provides an API for getting authorization decisions computed by a XACML-compliant access control engine. It supports the following actions
getAuthz
to get the computed decision
see the PDP samples for usage examples
The PAP provides API for managing XACML policies to be handled by the Authorization Service PDP. It supports the following actions
getDomains
to list all domains in the access control enginegetDomain
to get details on a given domainaddDomain
to add a new domaindeleteDomain
to remove a domaingetPolicy
to get details on a policy setaddPolicy
to add a policy set to a domaindeletePolicy
to delete a policy set from a domaincreateSimplePolicy
to create (without saving to a domain, i.e. in memory only) a basic policy set based on the root policy. Intended to be used in conjunction withaddPolicy
see the PAP samples for usage examples
For more information on contributing to AuthZForce, see CONTRIBUTING.md
.
TODO
AuthZForce CE-XACML SDK - Software Development Kit for AuthZForce authorization server
Copyright (c) 2016 Thales Services
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see http://www.gnu.org/licenses/.
- OASIS XACML 3.0: http://docs.oasis-open.org/xacml/3.0/xacml-3.0-core-spec-os-en.html