The `abstract_security` module is a Python utility that provides functionality for managing environment variables and securely loading sensitive information from `.env` files. It is designed to simplify the process of accessing and managing environment variables within your Python applications.
Project description
Abstract Security
The abstract_security
module is a Python utility that provides functionality for managing environment variables and securely loading sensitive information from .env
files. It is designed to simplify the process of accessing and managing environment variables within your Python applications.
Table of Contents
Features
- Flexible
.env
File Location: Searches for.env
files in current working directory, home directory, and a special.envy_all
directory within the home directory. - Clean and Secure Key Retrieval: Offers functionality to cleanly split strings at equals signs and safely retrieve environment variable values.
Installation
Install abstract_security
using pip:
pip install abstract-security
Usage
Basic Usage
Here's a simple example to get started:
from abstract_security import get_env_value
env_key = 'YOUR_ENV_VARIABLE_KEY'
value = get_env_value(key=env_key)
Advanced Usage
The AbstractEnv
class can be used for more advanced scenarios, including custom paths and file names for the .env
file.
from abstract_security import AbstractEnv
# Initialize with custom parameters
abstract_env = AbstractEnv(key='YOUR_ENV_VARIABLE_KEY', file_name='custom.env', path='/custom/path')
value = abstract_env.env_value
##Functions
AbstractEnv
Class
The AbstractEnv
class allows you to manage environment variables and securely load values from a .env
file. Here's how to use it:
Initializing an AbstractEnv
Object
# Create an AbstractEnv object with default settings
abstract_env = AbstractEnv()
You can also customize the initialization by specifying the key, file name, and path as follows:
# Custom initialization
abstract_env = AbstractEnv(key='MY_PASSWORD', file_name='.env', path='/path/to/.env')
Getting Environment Variable Values
You can retrieve the value of a specific environment variable using the get_env_value
method of the AbstractEnv
object:
# Retrieve the value of a specific environment variable
value = abstract_env.get_env_value(key='YOUR_ENV_VARIABLE')
get_env_value
Function
Alternatively, you can use the get_env_value
function to directly retrieve the value of an environment variable without creating an AbstractEnv
object:
from abstract_security import get_env_value
# Retrieve the value of a specific environment variable
value = get_env_value(key='YOUR_ENV_VARIABLE', path='/path/to/.env')
API Reference
AbstractEnv
Class
AbstractEnv(key='MY_PASSWORD', file_name='.env', path=os.getcwd())
Initializes an AbstractEnv
object to manage environment variables.
key
(str, optional): The key to search for in the.env
file. Defaults to 'MY_PASSWORD'.file_name
(str, optional): The name of the.env
file. Defaults to '.env'.path
(str, optional): The path where the.env
file is located. Defaults to the current working directory.
re_initialize(key='MY_PASSWORD', file_name='.env', path=os.getcwd())
Re-initializes an AbstractEnv
object with new settings.
key
(str, optional): The key to search for in the.env
file. Defaults to 'MY_PASSWORD'.file_name
(str, optional): The name of the.env
file. Defaults to '.env'.path
(str, optional): The path where the.env
file is located. Defaults to the current working directory.
get_env_value(key='MY_PASSWORD', path=os.getcwd(), file_name='.env')
Retrieves the value of the specified environment variable.
key
(str): The key to search for in the.env
file.path
(str): The path to the environment file.file_name
(str): The name of the environment file.
get_env_value
Function
get_env_value(key=None, path=None, file_name=None)
Retrieves the value of a specified environment variable from a .env
file.
key
(str, optional): The key to search for in the.env
file. Defaults to None.path
(str, optional): The path to the.env
file. Defaults to None.file_name
(str, optional): The name of the.env
file. Defaults to None.
License
This module is distributed under the MIT License.
For more information and usage examples, please refer to the GitHub repository and PyPI package.
If you encounter any issues or have questions, feel free to open an issue on GitHub or contact the author, putkoff, for assistance.
Contact
Author: putkoff
Email: partners@abstractendeavors.com
Project Link: https://github.com/AbstractEndeavors/abstract_security
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file abstract_security-0.63.tar.gz
.
File metadata
- Download URL: abstract_security-0.63.tar.gz
- Upload date:
- Size: 7.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bd95b5ecebd3a6a3c368fe02fc5a4d5841b10123af88daa9cb0f6522b4bfc53d |
|
MD5 | 832f3eb63379c80f17ea57acb02734cc |
|
BLAKE2b-256 | c6f3deb9d11c1d6a1f696e5380c2ff67b4b5de352c303113c947de87dd75f986 |
File details
Details for the file abstract_security-0.63-py3-none-any.whl
.
File metadata
- Download URL: abstract_security-0.63-py3-none-any.whl
- Upload date:
- Size: 7.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bfa9f1f4a67ba07821ee07b365074482d6888ba863590ce976ce655d3ccf8a0d |
|
MD5 | b839a5dfc52867c6b9f366776f1a2747 |
|
BLAKE2b-256 | fdd683bd237d1baba45a6a8027274511dec755ba2dec255855661477316790c1 |