1 file was added to this release more than 14 days after its initial publication. Inspect the release files before installing.
Python-GSSAPI provides both low-level and high level wrappers around the GSSAPI C libraries. While it focuses on the Kerberos mechanism, it should also be useable with other GSSAPI mechanisms.
Requirements
Basic
A working implementation of GSSAPI (such as from MIT Kerberos) which includes header files
a C compiler (such as GCC)
either the enum34 Python package or Python 3.4+
Compiling from Scratch
To compile from scratch, you will need Cython >= 0.21.1.
For Running the Tests
the nose package (for tests)
the shouldbe package (for tests)
Installation
Easy Way
$ pip install gssapi
From the Git Repo
$ git clone https://github.com/DirectXMan12/python-gssapi.git $ python setup.py build $ python setup.py install
Tests
The tests for for Python-GSSAPI live in gssapi.tests. In order to run the tests, you must have an MIT Kerberos installation (including the KDC). The tests create a self-contained Kerberos setup, so running the tests will not interfere with any existing Kerberos installations.
Structure
Python-GSSAPI is composed of two parts: a low-level C-style API which thinly wraps the underlying RFC 2744 methods, and a high-level, Pythonic API (which is itself a wrapper around the low-level API). Examples may be found in the examples directory.
Low-Level API
The low-level API lives in gssapi.raw. The methods contained therein are designed to match closely with the original GSSAPI C methods. All relevant methods and classes may be imported directly from gssapi.raw. Extension methods will only be imported if they are present. The low-level API follows the given format:
Names match the RFC 2744 specification, with the gssapi_ prefix removed
Parameters which use C int constants as enums have enum.IntEnum classes defined, and thus may be passed either the enum members or integers
In cases where a specific constant is passed in the C API to represent a default value, None should be passed instead
In cases where non-integer constants would be used in the API (i.e. OIDs), enum-like objects have been defined containing named references to values specified in RFC 2744.
Major and minor error codes are returned by raising gssapi.raw.GSSError. The major error codes have exceptions defined in in gssapi.raw.exceptions to make it easier to catch specific errors or categories of errors.
All other relevant output values are returned via named tuples.
High-Level API
The high-level API lives directly under gssapi. The classes contained in each file are designed to provide a more Pythonic, Object-Oriented view of GSSAPI. The exceptions from the low-level API, plus several additional exceptions, live in gssapi.exceptions. The rest of the classes may be imported directly from gssapi. Only classes are exported by gssapi – all functions are methods of classes in the high-level API.
Please note that QoP is not supported in the high-level API, since it has been deprecated.
Extensions
In addition to RFC 2743/2744, Python-GSSAPI also has support for:
RFC 5588 (GSS-API Extension for Storing Delegated Credentials)
(Additional) Credential Store Extension
Services4User
Credentials import-export
RFC 6680 (GSS-API Naming Extensions)
DCE and IOV MIC extensions
acquire_cred_with_password and add_cred_with_password
The Team
(GitHub usernames in parentheses)
Solly Ross (@directxman12)
Robbie Harwood (@frozencemetery)
Simo Sorce (@simo5)
Hugh Cole-Baker (@sigmaris)
Get Involved
We welcome new contributions in the form of Issues and Pull Requests on Github. If you would like to join our discussions, you can find us on Freenode IRC, channel #python-gssapi.
Metadata
Release files for gssapi 1.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
File added late
1 file was uploaded more than 14 days after the first file in this release.
While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.
We recommend inspecting the release files before installing.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| gssapi-1.1.1.tgz | 617.5 kB | Details |
Release files / gssapi-1.1.1.tgz
File added late
This file was uploaded more than 14 days after the first file in this release.
While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.
We recommend inspecting the release file before installing.
| Download URL | gssapi-1.1.1.tgz |
|---|---|
| Size | 617.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3dc8f81d897e962fadd3999921d7070853d79412cfd3ac951cdb9b0e7cb58dbe
|
|
BLAKE2b-256 checksum How to use checksums |
3bf861d6305fed49ad94ab1e1cd5d8b5e4adb5fa239e9be69a9ec4cbca7ca607
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |