yl940127 / java-xacml-sdk

Java Client SDK for the AuthzForce Server

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

XACML SDK

License: GPL v3 Codacy Badge

Includes both the Policy Decision Point (PDP) and the Policy Administration Point (PAP) client SDKs

Quick Start

In the mean time, to use the library, you have to build it from source. To do this follow the instructions below.

Prerequisites

Setup

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

PDP vs PAP

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 engine
  • getDomain to get details on a given domain
  • addDomain to add a new domain
  • deleteDomain to remove a domain
  • getPolicy to get details on a policy set
  • addPolicy to add a policy set to a domain
  • deletePolicy to delete a policy set from a domain
  • createSimplePolicy 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 with addPolicy

see the PAP samples for usage examples

Development

For more information on contributing to AuthZForce, see CONTRIBUTING.md.

FAQ

TODO

License

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/.

References

About

Java Client SDK for the AuthzForce Server

License:Apache License 2.0


Languages

Language:Java 100.0%