Mozilla IAM user profile ('v2') class utility.
Project description
# moz_iam_profile
This library is a dynamic class-constructor for the Mozilla IAM profiles (v2).
It takes the Mozilla IAM default profile and schema, and creates a Python class from it dynamically.
This means that the default profile (JSON file: user_profile_null.json) and schema can be changed without
affecting the class code (to some degree).
## Example usage
### Using profiles
```
from cis_profile import User
skel_user = User(user_id="bobsmith")
skel_user.user_id.value = "notbobsmith"
if skel_user.validate():
profile = skel_user.as_json()
user = { exiting...user..json }
skel_user2 = User(profile_structure_json=user)
skel_user2.fun_title.value = 'New title!'
skel_user2.sign_attribute('fun_title', 'ldap')
```
### Faking profiles
```
from cis_profile import FakeUser
user = FakeUser()
print(user.first_name.value)
# Jim
```
## About tests
`cis_crypto` must be setup and function for tests to run, see the `cis_crypto` module if is it not setup (in particular
keys must be created)
This library is a dynamic class-constructor for the Mozilla IAM profiles (v2).
It takes the Mozilla IAM default profile and schema, and creates a Python class from it dynamically.
This means that the default profile (JSON file: user_profile_null.json) and schema can be changed without
affecting the class code (to some degree).
## Example usage
### Using profiles
```
from cis_profile import User
skel_user = User(user_id="bobsmith")
skel_user.user_id.value = "notbobsmith"
if skel_user.validate():
profile = skel_user.as_json()
user = { exiting...user..json }
skel_user2 = User(profile_structure_json=user)
skel_user2.fun_title.value = 'New title!'
skel_user2.sign_attribute('fun_title', 'ldap')
```
### Faking profiles
```
from cis_profile import FakeUser
user = FakeUser()
print(user.first_name.value)
# Jim
```
## About tests
`cis_crypto` must be setup and function for tests to run, see the `cis_crypto` module if is it not setup (in particular
keys must be created)
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
cis_profile-0.3.7.tar.gz
(22.3 kB
view details)
File details
Details for the file cis_profile-0.3.7.tar.gz.
File metadata
- Download URL: cis_profile-0.3.7.tar.gz
- Upload date:
- Size: 22.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: Python-urllib/3.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f2a06e54da528ec91f84ba5c13713d946bb9577ef9c4173f815dc683cea83dc9
|
|
| MD5 |
37ec1b7580d3769971ef3627a6abdea4
|
|
| BLAKE2b-256 |
e070e5b14f5973932e059b2b639312997c273a18934680c6d98e6d5bf779965e
|