Skip to main content

Psono API interface for python

Project description

Psono python module

This module is intended to allow you to interface with psono, a self hosted/cloud hosted open source secret manager.

This module has been developed by http://www.cybersecure.com/ . We provide managed backups and data resilience.

Authentication

You can either set it in the code as per below, or you can set it in the environment, and it will login automagically.

export PSONO_API_KEY_ID=
export PSONO_API_PRIVATE_KEY=
export PSONO_API_SECRET_KEY=
export PSONO_API_SERVER_URL=https://psono.org.com/server
export PSONO_API_SERVER_PUBLIC_KEY=
export PSONO_API_SERVER_SIGNATURE=

Simple examples

import psonoapi

# This connects to the psono public server by default.
psonoserver=psonoapi.PsonoServerConfig(key_id='b3b5c964-50d2-40d7-a0f0-69ae43c498d3',
                                    private_key='test'
                                    secret_key='test')
psono = psonoapi.PsonoAPI(serverconfig=psonoserver)

# getting a secret (this requires full api)
mysecret = psono.get_path('sharename/foldername/secretname')

# getting a secret 
mysecret = psono.get_secret(secret_id='b3b5c964-50d2-40d7-a0f0-69ae43c498d3')

# Getting a list of secrets that apply to a urlfilter:
mysecrets = psono.search_urlfilter('example.com')

# Updating (works as long as you have write permissions)
mysecret.title = 'I want a new title'
psono.update_secret(mysecret)

# You could also use write_secret instead
psono.write_secret(mysecret)

# Creating a new secret
newsecret = psono.generate_new_secret('website_password') # must be one of psonoapi.psono_type_list
newsecret : psonoapi.models.PsonoApplicationPassword # set the type to make life easy for yourself.
newsecret.path = 'existingfolder/newfolder/secretname'
newsecret.password = '1234'
newsecret.username = 'myusername'
newsecret.title = 'My special new secret'
psono.write_secret(newsecret)

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

psonoapi-0.1.0.tar.gz (13.7 kB view details)

Uploaded Source

Built Distribution

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

psonoapi-0.1.0-py3-none-any.whl (14.3 kB view details)

Uploaded Python 3

File details

Details for the file psonoapi-0.1.0.tar.gz.

File metadata

  • Download URL: psonoapi-0.1.0.tar.gz
  • Upload date:
  • Size: 13.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for psonoapi-0.1.0.tar.gz
Algorithm Hash digest
SHA256 4c766afee151107917298a75da90a217b8cee30f894c3c01259a91b9c5bbdc69
MD5 eb4b25a700c96adc4e0382f5ee52e4da
BLAKE2b-256 fadbe9bd3596b85fc496f8ca3464495092b8089e76b4292ac69a16d225ecbe64

See more details on using hashes here.

File details

Details for the file psonoapi-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: psonoapi-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 14.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for psonoapi-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 72f37dabe0217e7bbe3d6d5cd7ca03dbffb02224c7db84d811fb357492540b86
MD5 1b30cee288eeaa479a09f6cb470ba53f
BLAKE2b-256 469a632bba7540b5c7ebd4523ee1801a3ba3cb5c4578cd03e0ff968d5c8d4797

See more details on using hashes here.

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