Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

A Python API for Mac OS X Keychain, port of https://github.com/jprichardson/keychain_manager

Project Description

A Python api for Mac OS X Keychain. It is a port of https://github.com/jprichardson/keychain_manager

  • Free software: BSD license

Getting started

To install the package do:

pip install keychain-manager

Usage

Example of generating Apple Push Certificate

from keychain_manager import KeychainManager
import os.path

USER = 'youremail@example.com'
# let's choose a keychain name, so we won't pollute the 'login' keychain
KEYCHAIN = 'apple_push_keychain'
# this is where the file aps_production_identity.cer will be downloaded
YOUR_DOWNLOADS_DIR = os.path.expanduser('~/Downloads/')

RSA_FILE = '/tmp/myrsa.key'
KeychainManager.generate_rsa_key(RSA_FILE)

CERT_FILE = '/tmp/CertificateSigningRequest.certSigningRequest'
# 'US' is the country abbreviation.
KeychainManager.generate_cert_request(USER, 'US', RSA_FILE, CERT_FILE)

kcm = KeychainManager(KEYCHAIN)
if kcm.exists():
    kcm.delete()
kcm.create()

kcm.import_rsa_key(RSA_FILE)

# now from your browser, you'll have downloaded a file from Apple
# typically named: aps_production.cer
kcm.import_apple_cert(os.path.join(YOUR_DOWNLOADS_DIR, 'aps_production.cer'))

P12_FILE = '/tmp/push_prod.p12'
kcm.export_identities(P12_FILE)

PEM_FILE = '/tmp/push_prod.pem'
KeychainManager.convert_p12_to_pem(P12_FILE, PEM_FILE)

kcm.delete()

Tests

Tests are running on the Mac OS X only, since we need to have actualy Keychain Manager. Just clone the repo on your Mac computer and run:

python setup.py test

History

0.1.0 (2013-09-11)

  • First release on PyPI.
Release History

Release History

This version
History Node

0.1.3

History Node

0.1.2

History Node

0.1.1

History Node

0.1.0

Download Files

Download Files

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

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
keychain_manager-0.1.3.tar.gz (6.5 kB) Copy SHA256 Checksum SHA256 Source Oct 28, 2013

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting