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.

Project details


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.1.1.tar.gz (474.0 kB view details)

Uploaded Source

Built Distribution

MyProxyClient-2.1.1-py3-none-any.whl (45.4 kB view details)

Uploaded Python 3

File details

Details for the file MyProxyClient-2.1.1.tar.gz.

File metadata

  • Download URL: MyProxyClient-2.1.1.tar.gz
  • Upload date:
  • Size: 474.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for MyProxyClient-2.1.1.tar.gz
Algorithm Hash digest
SHA256 7e998f1cf2246abdd1fbeba067f87d00d7a18d3bc138334dd93ae9a5f5ae3e5e
MD5 cf03861ceb6761c9e3645e8c19e13a5c
BLAKE2b-256 7e07532396a66141ea6293ddf4d9dc8fd6ba8bb839f9f5ff3b27fcc0a2a8c765

See more details on using hashes here.

File details

Details for the file MyProxyClient-2.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for MyProxyClient-2.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 7e95927fec0e0981f1911aa8a766f77b81ecfd3a696a2bb7e20381c04649d9ae
MD5 56484d2e2f612ed4dc5c113318602cb0
BLAKE2b-256 3febc1da7480060e49273cb3cb57284f071fc9d2ebb485c2ccf076e9bacd360c

See more details on using hashes here.

Supported by

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