Skip to main content

PyAMS security management package

Project description

What is PyAMS?

PyAMS (Pyramid Application Management Suite) is a small suite of packages written for applications and content management with the Pyramid framework.

PyAMS is actually mainly used to manage web sites through content management applications (CMS, see PyAMS_content package), but many features are generic and can be used inside any kind of web application.

All PyAMS documentation is available on ReadTheDocs; source code is available on Gitlab and pushed to Github.

What is PyAMS_security?

PyAMS_security is a core extension package for PyAMS which provides all main security-related features; the package provides a custom authentication policy which is based on a custom “security manager”. This utility is a pluggable tool which is handling system users, local users and groups, as well as OAuth authentication; external packages can also provide authentication based on an LDAP directory.

PyAMS_security also provides utilities to extract credentials from queries, like HTTP basic authentication or JWT tokens, and can also provide your own credentials extraction mechanisms.

Finally, PyAMS_security provides roles management, as well as custom schema fields to store roles assigned to principals.

Changelog

1.7.0

  • added ProtectedViewObjectMixin, to be used as base for any object using dynamic permission property

  • added “action” argument to “get_edit_permission()” function; this allows to register custom adapters to IViewContextPermissionChecker with this name, to be able to check edit permissions for custom actions

  • added ISecurityContext interface

1.6.2

  • renamed ‘skin’ module to ‘api’

1.6.1

  • correction in Gitlab-CI Pylint task

1.6.0

  • removed support for Python < 3.7

  • added custom password encoders

  • updated doctests

1.5.5

  • updated Gitlab-CI configuration

1.5.4

  • updated Gitlab-CI configuration

1.5.3

  • added wheels to Buildout configuration

1.5.2

  • updated Gitlab-CI configuration for last Python versions

1.5.1

  • updated doctests

1.5.0

  • added ISecurityManager factory configuration

  • removed Travis-CI configuration

1.4.0

  • added config.upgrade_role function, to be able to add permissions to an existing role

  • updated default site roles

  • updated doctests

1.3.1

  • updated security manager interface to add registered credentials plug-ins names

1.3.0

  • added argument in “find_principals” methods to only allow exact match

1.2.1

  • use updated WSGI decorator to prevent storage of null values into request environment

1.2.0

  • updated roles management; this will allow to extend supported roles of a given class just by adding adapters, without modifying the original class

  • moved PyAMS security policy to dedicated module

  • added registration of standard roles and security policy

  • add factories registration in default security plug-ins

  • updated users registration process

  • updated adapter_config decorator arguments

  • updated doctests

1.1.3

  • small updates in policy management of authenticated_user_id

1.1.2

  • updated doctests with configured cache

1.1.1

  • removed dependency on pyams_auth_http package

1.1.0

  • moved authentication plug-ins to dedicated packages (see pyams_auth_http, pyams_auth_jwt…)

  • moved PyAMS authentication policy to dedicated module

  • handle ConnectionStateError in authentication policy

  • updated doctests

1.0.5

  • simple version switch to avoid mismatch in Buildout configuration file… :(

1.0.4

  • code cleanup

1.0.3

  • handle ConnectionStateError in JWT authentication plug-in

  • updated doctests

1.0.2

  • added support for HS512 and RS512 JWT encryption protocols

1.0.1

  • updated imports in include file for tests integration

1.0.0

  • initial release

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

pyams_security-1.7.0.tar.gz (60.8 kB view details)

Uploaded Source

Built Distributions

pyams_security-1.7.0-py3.9.egg (161.3 kB view details)

Uploaded Source

pyams_security-1.7.0-py3.8.egg (161.4 kB view details)

Uploaded Source

pyams_security-1.7.0-py3.7.egg (161.0 kB view details)

Uploaded Source

pyams_security-1.7.0-py3-none-any.whl (100.7 kB view details)

Uploaded Python 3

File details

Details for the file pyams_security-1.7.0.tar.gz.

File metadata

  • Download URL: pyams_security-1.7.0.tar.gz
  • Upload date:
  • Size: 60.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.3.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.7.10

File hashes

Hashes for pyams_security-1.7.0.tar.gz
Algorithm Hash digest
SHA256 ebfac3906a19bb08cba029d11fb236263e9c3a86a9beda00a6a266de00d55133
MD5 808d0c84681c2536190c9fa501917e40
BLAKE2b-256 e8a1569ea6b1a3328fb2760cf978ee6e8cca1061cc5cd23804d788ed49f4d53e

See more details on using hashes here.

File details

Details for the file pyams_security-1.7.0-py3.9.egg.

File metadata

  • Download URL: pyams_security-1.7.0-py3.9.egg
  • Upload date:
  • Size: 161.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.3.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

File hashes

Hashes for pyams_security-1.7.0-py3.9.egg
Algorithm Hash digest
SHA256 46cfad1ff43c8546a9852625007fa030cd0d483e4b4a96ffc775fa9cd348bdb9
MD5 c6ecc467cc75c54d03d54cc9c5281863
BLAKE2b-256 0ee477f1d122c43df2278261cbd11b760371777ba7db9feb32ff04249fad328f

See more details on using hashes here.

File details

Details for the file pyams_security-1.7.0-py3.8.egg.

File metadata

  • Download URL: pyams_security-1.7.0-py3.8.egg
  • Upload date:
  • Size: 161.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.3.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.8.10

File hashes

Hashes for pyams_security-1.7.0-py3.8.egg
Algorithm Hash digest
SHA256 482114bf8dd33df973d17a4130de98214295977b2c5ec380e0f371408b291885
MD5 eeda7421a95ef038f971f7c2adac8e98
BLAKE2b-256 ae8b99198584b0e19967d8bd148df55cfbc19cbdaaedc7da1aafed1cd6466dbf

See more details on using hashes here.

File details

Details for the file pyams_security-1.7.0-py3.7.egg.

File metadata

  • Download URL: pyams_security-1.7.0-py3.7.egg
  • Upload date:
  • Size: 161.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.3.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.7.10

File hashes

Hashes for pyams_security-1.7.0-py3.7.egg
Algorithm Hash digest
SHA256 8406f29aed207807f6ccd83b279b5303485fc12ec4a8e6f3c2de35859004e093
MD5 6d4fdbb5f12b6e0b233c9bca184eb872
BLAKE2b-256 8ead69cdc09a900d8c7ec0c72da6fdf1d34ed1d6a65d1d3928e8ddaddc847dff

See more details on using hashes here.

File details

Details for the file pyams_security-1.7.0-py3-none-any.whl.

File metadata

  • Download URL: pyams_security-1.7.0-py3-none-any.whl
  • Upload date:
  • Size: 100.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.3.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.7.10

File hashes

Hashes for pyams_security-1.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b7b4d8f5e0bfcfbfa65e166b6cd32233817448d4d67f8f5202b2dc3a26e6e2e7
MD5 30ae82f0cad2606ef6577d352c1efcd0
BLAKE2b-256 81c4b0ee5558fd3b6f147d5b52298d45667eb20de4d84619d161967888e42e65

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page