/JSPNego

Primary LanguageJavaGNU Lesser General Public License v3.0LGPL-3.0

JSPNego

This JAVA library is built to make HTTP requests through/without a proxy. Several proxies are supported :

  • Proxy without authentication
  • Proxy with basic authentication
  • Proxy with JSPNego with JAAS configuration file
  • Proxy with JSPNego using the API
JSPNego is a Single Sign On (SSO). This SSO uses The Simple and Protected GSS-API Negotiation Mechanism (IETF RFC 2478) (SPNEGO) as authentication protocol.

Synopsis

This document provides the motivation of the project and the different instructions to both install and use a proxy with the following authentications: JSPNego, basic authentication.

Motivation

This library was designed to save development time for projects hosted at CNES and wishing to make requests to the web.

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.

Prerequisities

What things you need to install the software and how to install them

Openjdk version 1.8
Apache Maven 3.5.2
Git version 2.17.1

Installing

Clone the repository

git clone https://github.com/CNES/JSPNego.git && cd JSPNego
  • Compile and run the tests
mvn install
  • Run the integration tests
mvn verify -P integration-test

Example Use

  • Create an environment variable KRB5CCNAME
export KRB5CCNAME=DIR:$HOME/.krb/
  • Create a keytab
ipa-getkeytab -p <username>@<server> -k <keytabFileName> -P

Built With

  • Maven

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

Authors

See also the list of contributors who participated in this project.

License

This project is licensed under the LGPLV3 - see the LICENSE.md file for details.