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.2.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.2-py3-none-any.whl (14.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: psonoapi-0.1.2.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.2.tar.gz
Algorithm Hash digest
SHA256 dd0e2d73dd7b9cf8a899f7ab0d0c552dd58d9292e1cfe3e89dc0bac0718e218e
MD5 4f66b40941bfc4d19d87ad21b492c13f
BLAKE2b-256 910e85a3d649e93072f0166e6f77398e65c952c1271abf9749e337327762b80d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: psonoapi-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 14.1 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 626b5352421ccfcc6d244d2a29099b9d4a8df949c9d6baecdc3f376d79efefd9
MD5 1db239c81685c63da6fc2a8c5b0dfb3e
BLAKE2b-256 2309485c836bcc3848996566aeb32587e7572a5253d706823be634377b671d3c

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