Skip to main content

MyProxy Client

Project description

MyProxy Client Package

This a pure Python implementation of a client to the MyProxy Credential Management Server (http://grid.ncsa.uiuc.edu/myproxy/). It provides both a Python API and a command line interface.

  • i.e. MyProxy C client libraries are not required for this package.

It uses pyOpenSSL to make an SSL connection to the server following the messaging interface as outlined in: http://grid.ncsa.uiuc.edu/myproxy/protocol/

The code is based on an original program myproxy_logon by Tom Uram of ANL.

Examples

These show how to retrieve a certificate bootstrapping trust in remote service:

API

>>> from myproxy.client import MyProxyClient
>>> myproxy_clnt = MyProxyClient(hostname="myproxy.somewhere.ac.uk")
>>> cert, private_key = myproxy_clnt.logon(username, password, bootstrap=True)

Command line interface

$ myproxyclient logon -s myproxy.somewhere.ac.uk -l <username> -o creds.pem -b

Releases

2.1.1

2.1.0

  • Refactored package hierarchy - myproxy.client is now a package
  • fixed six package dependency

2.0.3

  • Default to TLS v1.2 for security

2.0.2

  • Added new command line option -e which will force output of any error trace. The default is now that the error trace is not echoed. Instead only the message from top-level exception is included.
  • Fix for certificate DN list for Python 2 version. Thanks to Lukasz for reporting the bug: https://github.com/cedadev/MyProxyClient/issues/12

2.0.1

  • Updated hashing algorithm to sha256 after reported errors interacting with some servers

2.0.0

  • Ported to Python 3. This version is dual compatible with Python 2 and 3.
  • Minor fix to script to improve error reporting
  • Added Vagrantfile to enable provisioning of test myproxy-server for use with the tests.

Tested on CentOS 6.8 and OSX El Capitan

1.4.4

  • Minor changes for ready for inclusion in conda-forge. Thanks to Alex Goodman.

1.4.3

  • Fix for SSL to use TLS instead of SSLv3 to address POODLE vulnerability
  • Fix for SSL verification for PyOpenSSL version 0.14 - v1.3.1 was broken because it passed the call back method to OpenSSL using verification classes' __call__ method.

Tested on CentOS 6.4

1.3.1

  • Fix to MyProxyClient.writeProxyFile and MyProxyClient.readProxyFile to correctly pick-up overridden file setting. Thanks to Nicolas Carenton, IPSL.

Tests

Unit test module with test files is in test/. See the README in that directory.

Documentation

Sphinx generated documentation is available in documentation/. run the Makefile to regenerate if required.

Thanks

  • to OMII-UK (Now Software Sustainability Institute) for funding development of NDG Security (2007-2008)
  • Tom Uram who wrote the myproxy_logon program on which this package is based.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

myproxyclient-2.2.0.tar.gz (474.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

myproxyclient-2.2.0-py3-none-any.whl (45.4 kB view details)

Uploaded Python 3

File details

Details for the file myproxyclient-2.2.0.tar.gz.

File metadata

  • Download URL: myproxyclient-2.2.0.tar.gz
  • Upload date:
  • Size: 474.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for myproxyclient-2.2.0.tar.gz
Algorithm Hash digest
SHA256 9e65226f2790fdb9ecc2f7543736b5445cd2dae26b265d951dfe5cb73c8803df
MD5 8462f6141a6a7833cef5fbf21af6c398
BLAKE2b-256 8133ce3e43ecc1101c308a8604fbced662d66ad44b2b86f59039d22eb7614930

See more details on using hashes here.

Provenance

The following attestation bundles were made for myproxyclient-2.2.0.tar.gz:

Publisher: build-and-deploy-on-pypi.yml on cedadev/MyProxyClient

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file myproxyclient-2.2.0-py3-none-any.whl.

File metadata

  • Download URL: myproxyclient-2.2.0-py3-none-any.whl
  • Upload date:
  • Size: 45.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for myproxyclient-2.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7ff3c1ae976bfb586230d746f605d3d20ad151ac9ce905bf52d74581cedf9744
MD5 f0ec7428594358c33a2d1ae19cb00176
BLAKE2b-256 2e4d9ccd0223ee1c3e108290704e60b5f1e8f3e0c4b5664b6108e27d754a8bfe

See more details on using hashes here.

Provenance

The following attestation bundles were made for myproxyclient-2.2.0-py3-none-any.whl:

Publisher: build-and-deploy-on-pypi.yml on cedadev/MyProxyClient

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page