Skip to main content

Zope Security Framework

Project description

The Security framework provides a generic mechanism to implement security policies on Python objects.

CHANGES

4.0.0b1 (2013-03-11)

  • Added support for PyPy.

  • Fixed extension compilation on windows python 3.x

4.0.0a5 (2013-02-28)

  • Undo changes from 4.0.0a4. Instead, zope.untrustedpython is only included during Python 2 installs.

4.0.0a4 (2013-02-28)

  • Remove untrustedpython extra again, since we do not want to support zope.untrustedpython in ZTK 2.0. If BBB is really needed, we will create a 3.10.0 release.

4.0.0a3 (2013-02-15)

  • Fix test breakage in 4.0.0a2 due to deprecation strategy.

4.0.0a2 (2013-02-15)

  • Added back the untrustedpython extra: now pulls in zope.untrustedpython. Restored deprecated backward-compatible imports for zope.security.untrustedpython.{builtins,interpreter,rcompile} (the extra and the imports are to be removed in version 4.1).

4.0.0a1 (2013-02-14)

  • Added support for Python 3.2 and 3.3.

  • 100% unit test coverage.

  • zope.security.untrustedpython moved to separate project: zope.untrustedpython

  • Converted use of assert in non-test code to apprpriate error types:

    • Non-dict’s passed to Checker.__init__.

  • Removed dprecattion of zope.security.adapter.TrustedAdapterFactory. Although it has been marked as deprectaed since before Zope3 3.2, current versions of zope.compoent still rely on it.

  • Converted doctests to Sphinx documentation in ‘docs’.

  • Added ‘setup.py docs’ alias (installs Sphinx and dependencies).

  • Added ‘setup.py dev’ alias (runs setup.py develop plus installs nose and coverage).

  • Made non-doctest tests fully independent of zope.testing.

    Two modules, zope.security.checker and zope.security.management, register cleanups with zope.testing IFF it is importable, but the tests no longer rely on it.

  • Enabled building extensions without the ‘svn:external’ of the zope.proxy headers into our ‘include’ dir.

  • Bumped zope.proxy dependency to “>= 4.1.0” to enable compilation on Py3k.

  • Replaced deprecated zope.component.adapts usage with equivalent zope.component.adapter decorator.

  • Replaced deprecated zope.interface.classProvides usage with equivalent zope.interface.provider decorator.

  • Replaced deprecated zope.interface.implements usage with equivalent zope.interface.implementer decorator.

  • Dropped support for Python 2.4 and 2.5.

  • Added test convenience helper create_interaction and with interaction().

3.9.0 (2012-12-21)

  • Pin zope.proxy >= 4.1.0

  • Ship with an included proxy.h header which is compatible with the 4.1.x version ov zope.proxy.

3.8.5 (2012-12-21)

  • Ship with an included proxy.h header which is compatible with the supported versions of zope.proxy.

3.8.4 (2012-12-20)

  • Pin zope.proxy >= 3.4.2, <4.1dev

3.8.3 (2011-09-24)

  • Fixed a regression introduced in 3.8.1: zope.location's LocationProxy did not get a security checker if zope.security.decorator was not imported manually. Now zope.security.decorator is imported in zope.security.proxy without re-introducing the circular import fixed in 3.8.1.

3.8.2 (2011-05-24)

  • Fix a test that failed on Python 2.7.

3.8.1 (2011-05-03)

  • Fixed circular import beween zope.security.decorator and zope.security.proxy which led to an ImportError when only importing zope.security.decorator.

3.8.0 (2010-12-14)

  • Added tests for our own configure.zcml.

  • Added zcml extra dependencies, run related tests only if zope.configuration is available.

  • Run tests related to the untrustedpython functionality only if RestrictedPython is available.

3.7.3 (2010-04-30)

  • Prefer the standard libraries doctest module to the one from zope.testing.

  • Fixed directlyProvides IVocabularyFactory for PermissionIdsVocabulary in Python code, even if it’s unnecessary because IVocabularyFactory is provided in zcml.

  • Removed the dependency on the zope.exceptions package: zope.security.checker now imports DuplicationError from zope.exceptions if available, otherwise it defines a package-specific DuplicationError class which inherits from Exception.

3.7.2 (2009-11-10)

  • Added compatibility with Python 2.6 abstract base classes.

3.7.1 (2009-08-13)

  • Fix for LP bug 181833 (from Gustavo Niemeyer). Before “visiting” a sub-object, a check should be made to ensure the object is still valid. Because garbage collection may involve loops, if you garbage collect an object, it is possible that the actions done on this object may modify the state of other objects. This may cause another round of garbage collection, eventually generating a segfault (see LP bug). The Py_VISIT macro does the necessary checks, so it is used instead of the previous code.

3.7.0 (2009-05-13)

  • Made pytz a soft dependency: the checker for pytz.UTC is created / tested only if the package is already present. Run bin/test_pytz to run the tests with pytz on the path.

3.6.3 (2009-03-23)

  • Ensure that simple zope.schema’s VocabularyRegistry is used for PermissionVocabulary tests, because it’s replaced implicitly in environments with zope.app.schema installed that makes that tests fail.

  • Fixed a bug in DecoratedSecurityCheckerDescriptor which made security-wrapping location proxied exception instances throw exceptions on Python 2.5. See https://bugs.launchpad.net/zope3/+bug/251848

3.6.2 (2009-03-14)

  • Add zope.i18nmessageid.Message to non-proxied basic types. It’s okay, because messages are immutable. It was done by zope.app.security before.

  • Add “__name__” and “__parent__” attributes to list of available by default. This was also done by zope.app.security package before.

  • Added PermissionsVocabulary and PermissionIdsVocabulary vocabularies to the zope.security.permission module. They were moved from the zope.app.security package.

  • Add zcml permission definitions for most common and useful permissions, like “zope.View” and “zope.ManageContent”, as well as for the special “zope.Public” permission. They are placed in a separate “permissions.zcml” file, so it can be easily excluded/redefined. They are selected part of permissions moved from zope.app.security and used by many zope.* packages.

  • Add addCheckerPublic helper function in zope.security.testing module that registers the “zope.Public” permission as an IPermission utility.

  • Add security declarations for the zope.security.permisson.Permission class.

  • Improve test coverage.

3.6.1 (2009-03-10)

  • Use from imports instead of zope.deferred to avoid circular import problems, thus drop dependency on zope.deferredimport.

  • Raise NoInteraction when zope.security.checkPermission is called without interaction being active (LP #301565).

  • Don’t define security checkers for deprecated set types from the “sets” module on Python 2.6. It’s discouraged to use them and set and frozenset built-in types should be used instead.

  • Change package’s mailng list address to zope-dev at zope.org as zope3-dev at zope.org is now retired.

  • Remove old zpkg-related files.

3.6.0 (2009-01-31)

  • Install decorated security checker support on LocationProxy from the outside.

  • Added support to bootstrap on Jython.

  • Moved the protectclass module from zope.app.security to this package to reduce the number of dependencies on zope.app.security.

  • Moved the <module> directive implementation from zope.app.security to this package.

  • Moved the <class> directive implementation from zope.app.component to this package.

3.5.2 (2008-07-27)

  • Made C code compatible with Python 2.5 on 64bit architectures.

3.5.1 (2008-06-04)

  • Add frozenset, set, reversed, and sorted to the list of safe builtins.

3.5.0 (2008-03-05)

  • Changed title for zope.security.management.system_user to be more presentable.

3.4.3 - (2009/11/26)

  • Backported a fix made by Gary Poster to the 3.4 branch: Fix for LP bug 181833 (from Gustavo Niemeyer). Before “visiting” a sub-object, a check should be made to ensure the object is still valid. Because garbage collection may involve loops, if you garbage collect an object, it is possible that the actions done on this object may modify the state of other objects. This may cause another round of garbage collection, eventually generating a segfault (see LP bug). The Py_VISIT macro does the necessary checks, so it is used instead of the previous code.

3.4.2 - (2009/03/23)

  • Added dependency ‘zope.thread’ to setup.py, without the tests were failing.

  • Backported a fix made by Albertas Agejevas to the 3.4 branch. He fixed a bug in DecoratedSecurityCheckerDescriptor which made security-wrapping location proxied exception instances throw exceptions on Python 2.5. See https://bugs.launchpad.net/zope3/+bug/251848

3.4.1 - 2008/07/27

  • Made C code compatible with Python 2.5 on 64bit architectures.

3.4.0 (2007-10-02)

  • Updated meta-data.

3.4.0b5 (2007-08-15)

  • Bug: Fixed a circular import in the C implementation.

3.4.0b4 (2007-08-14)

  • Bug: zope.security.management.system_user had an ugly/brittle id.

3.4.0b3 (2007-08-14)

  • zope.security now works on Python 2.5

  • Bug: zope.security.management.system_user wasn’t a valid principal (didn’t provide IPrincipal).

  • Bug: Fixed inclusion of doctest to use the doctest module from zope.testing. Now tests can be run multiple times without breaking. (#98250)

3.4.0b2 (2007-06-15)

  • Bug: Removed stack extraction in newInteraction. When using eggs this is an extremly expensive function. The publisher is now more than 10 times faster when using eggs and about twice as fast with a zope trunk checkout.

3.4.0b1

  • Temporarily fixed the hidden (and accidental) dependency on zope.testing to become optional.

Note: The releases between 3.2.0 and 3.4.0b1 where not tracked as an individual package and have been documented in the Zope 3 changelog.

3.2.0 (2006-01-05)

  • Corresponds to the verison of the zope.security package shipped as part of the Zope 3.2.0 release.

  • Removed deprecated helper functions, ‘proxy.trustedRemoveSecurityProxy’ and ‘proxy.getProxiedObject’.

  • Made handling of ‘management.{end,restore}Interaction’ more careful w.r.t. edge cases.

  • Made behavior of ‘canWrite’ consistent with ‘canAccess’: if ‘canAccess’ does not raise ‘ForbiddenAttribute’, then neither will ‘canWrite’. See: http://www.zope.org/Collectors/Zope3-dev/506

  • Code style / documentation / test fixes.

3.1.0 (2005-10-03)

  • Added support for use of the new Python 2.4 datatypes, ‘set’ and ‘frozenset’, within checked code.

  • C security proxy acquired a dependency on the ‘proxy.h’ header from the ‘zope.proxy’ package.

  • XXX: the spelling of the ‘#include’ is bizarre! It seems to be related to ‘zpkg’-based builds, and should likely be revisited. For the moment, I have linked in the ‘zope.proxy’ package into our own ‘include’ directory. See the subversion checkin: http://svn.zope.org/Zope3/?rev=37882&view=rev

  • Updated checker to avoid re-proxying objects which have and explicit ‘__Security_checker__’ assigned.

  • Corresponds to the verison of the zope.security package shipped as part of the Zope 3.1.0 release.

  • Clarified contract of ‘IChecker’ to indicate that its ‘check*’ methods may raise only ‘Forbidden’ or ‘Unauthorized’ exceptions.

  • Added interfaces, (‘IPrincipal’, ‘IGroupAwarePrincipal’, ‘IGroup’, and ‘IPermission’) specifying contracts of components in the security framework.

  • Code style / documentation / test fixes.

3.0.0 (2004-11-07)

  • Corresponds to the version of the zope.security package shipped as part of the Zope X3.0.0 release.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

zope.security-4.0.0b1.tar.gz (729.6 kB view details)

Uploaded Source

Built Distributions

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

zope.security-4.0.0b1.win-amd64-py3.3.exe (349.1 kB view details)

Uploaded Source

zope.security-4.0.0b1.win-amd64-py3.2.exe (351.4 kB view details)

Uploaded Source

zope.security-4.0.0b1.win-amd64-py2.7.exe (351.9 kB view details)

Uploaded Source

zope.security-4.0.0b1.win-amd64-py2.6.exe (351.8 kB view details)

Uploaded Source

zope.security-4.0.0b1.win32-py3.3.exe (317.8 kB view details)

Uploaded Source

zope.security-4.0.0b1.win32-py3.2.exe (323.3 kB view details)

Uploaded Source

zope.security-4.0.0b1.win32-py2.7.exe (324.1 kB view details)

Uploaded Source

zope.security-4.0.0b1.win32-py2.6.exe (324.0 kB view details)

Uploaded Source

zope.security-4.0.0b1-py3.3-win-amd64.egg (243.6 kB view details)

Uploaded Egg

zope.security-4.0.0b1-py3.3-win32.egg (243.3 kB view details)

Uploaded Egg

zope.security-4.0.0b1-py3.2-win-amd64.egg (233.0 kB view details)

Uploaded Egg

zope.security-4.0.0b1-py3.2-win32.egg (232.8 kB view details)

Uploaded Egg

zope.security-4.0.0b1-py2.7-win-amd64.egg (230.4 kB view details)

Uploaded Egg

zope.security-4.0.0b1-py2.7-win32.egg (230.1 kB view details)

Uploaded Egg

zope.security-4.0.0b1-py2.6-win-amd64.egg (230.9 kB view details)

Uploaded Egg

zope.security-4.0.0b1-py2.6-win32.egg (230.5 kB view details)

Uploaded Egg

File details

Details for the file zope.security-4.0.0b1.tar.gz.

File metadata

File hashes

Hashes for zope.security-4.0.0b1.tar.gz
Algorithm Hash digest
SHA256 d2f27db4f82b3de6d85b91d87277f338de4ef3940ded0e31df9878a7d5c8db53
MD5 5215fb9275164e860abc0c30985294d7
BLAKE2b-256 bb570528eeab0caad3428dc9210652dda0d869090354339a1dd4401a17e88fe3

See more details on using hashes here.

File details

Details for the file zope.security-4.0.0b1.win-amd64-py3.3.exe.

File metadata

File hashes

Hashes for zope.security-4.0.0b1.win-amd64-py3.3.exe
Algorithm Hash digest
SHA256 0e6b2a5b47741a1d4220fd97ae7fda1b237463b50b169ba768c1811f2be94e37
MD5 b83a77221e8c47d76ae90bbb69e6a0a0
BLAKE2b-256 1217bc29aa28a2310880027904f7ad72449b7e93f6ee9a06a4b9472e83ff2540

See more details on using hashes here.

File details

Details for the file zope.security-4.0.0b1.win-amd64-py3.2.exe.

File metadata

File hashes

Hashes for zope.security-4.0.0b1.win-amd64-py3.2.exe
Algorithm Hash digest
SHA256 01144d8376db8803eea96892b8b66fcafe616e49b6961151b78da106c3c9fc20
MD5 d024324945020399f952ecbe32e95deb
BLAKE2b-256 55d30c60ea309cf66d7e414eaf362285a3d19d1f8839a442e318ffd97062e7af

See more details on using hashes here.

File details

Details for the file zope.security-4.0.0b1.win-amd64-py2.7.exe.

File metadata

File hashes

Hashes for zope.security-4.0.0b1.win-amd64-py2.7.exe
Algorithm Hash digest
SHA256 3ca204bc1935cc5ce0174719f9149db85f09eff29beb800c6c28e8585b248355
MD5 b60a6aa2037025b31f32eeee058a56dc
BLAKE2b-256 f3b695b47fd2f64432582b1ad3980a9584acbeec2359050689e7104bbfe70b73

See more details on using hashes here.

File details

Details for the file zope.security-4.0.0b1.win-amd64-py2.6.exe.

File metadata

File hashes

Hashes for zope.security-4.0.0b1.win-amd64-py2.6.exe
Algorithm Hash digest
SHA256 47dd91a729a9fd97b27bab39a563d6092648fa29a3234470b42096425aa0d157
MD5 cf0e30f2b7439173b716caf0918f4b6f
BLAKE2b-256 e8fae3d4506a04690c8ddb9d07ac94c0e4ae671f3f2e9c3c5b67a8927ce81306

See more details on using hashes here.

File details

Details for the file zope.security-4.0.0b1.win32-py3.3.exe.

File metadata

File hashes

Hashes for zope.security-4.0.0b1.win32-py3.3.exe
Algorithm Hash digest
SHA256 a00a1f94c77c832a097af7c579ad0aa3b6bf3f008860da290472553ffe287811
MD5 1c7a83e6447bcd5502c9fae90182fdd8
BLAKE2b-256 a557d767d52c53c8b4a164c5cdbcedea672acf6e5daf520c1d2a1b72915e097b

See more details on using hashes here.

File details

Details for the file zope.security-4.0.0b1.win32-py3.2.exe.

File metadata

File hashes

Hashes for zope.security-4.0.0b1.win32-py3.2.exe
Algorithm Hash digest
SHA256 a01fcda1c609439bf22e55cfbc7ae5c3877141f2026283a830bfc4b7137bd8e7
MD5 d462f7f64a008bb2c4e623774af4e257
BLAKE2b-256 e1a83e7de942d5e1cff5dd62681a16d7532bf5854a8db30675bc24e07d202b6b

See more details on using hashes here.

File details

Details for the file zope.security-4.0.0b1.win32-py2.7.exe.

File metadata

File hashes

Hashes for zope.security-4.0.0b1.win32-py2.7.exe
Algorithm Hash digest
SHA256 68ca3c6a50a9ab369344eb5fabf4b698fa7506400dd6238f1dec2346fddbf6f0
MD5 0741c2f6eccdbe93afd0369c13cdb158
BLAKE2b-256 7b704afbc9282c4cf1f129120cf53e7fb232db8b377784a825eecea2f161ac70

See more details on using hashes here.

File details

Details for the file zope.security-4.0.0b1.win32-py2.6.exe.

File metadata

File hashes

Hashes for zope.security-4.0.0b1.win32-py2.6.exe
Algorithm Hash digest
SHA256 423cc6857b7aaa1e935eaaccb29644d27d54badd54a5595b1aff99be474b996c
MD5 3dfaafa33bc8d09411ac7555d565f03b
BLAKE2b-256 f6e019e739998adf3990b3832dec24f7ac1473f12432b99ceb29aecfc92d4853

See more details on using hashes here.

File details

Details for the file zope.security-4.0.0b1-py3.3-win-amd64.egg.

File metadata

File hashes

Hashes for zope.security-4.0.0b1-py3.3-win-amd64.egg
Algorithm Hash digest
SHA256 135a9246990b70d9bf8255e4473a97c103fa2639a3d52c5f605d3e6187c7889c
MD5 a057d4165443b637c84abf98655aa642
BLAKE2b-256 b9a0ffc25b63f1fb984c2bfb38af4367a0b1f95f4693770d9aee3a54907f54d9

See more details on using hashes here.

File details

Details for the file zope.security-4.0.0b1-py3.3-win32.egg.

File metadata

File hashes

Hashes for zope.security-4.0.0b1-py3.3-win32.egg
Algorithm Hash digest
SHA256 e5e9af01c2c84ed861c4639feed0cded0f2e0a0d65759707cc6a1c065855aeb4
MD5 d314288000c7a1fc3a27dc9f6dc4fc85
BLAKE2b-256 4b1caab7148feb730510709310929e6855b69fa4c31420d3c951381d7ae38cfa

See more details on using hashes here.

File details

Details for the file zope.security-4.0.0b1-py3.2-win-amd64.egg.

File metadata

File hashes

Hashes for zope.security-4.0.0b1-py3.2-win-amd64.egg
Algorithm Hash digest
SHA256 02fb2879e9eab358bdfd743b590176ec537b004f0af9253fa04ac1591221388a
MD5 8c48222107f796bf8cdd03f5d7c12d3c
BLAKE2b-256 3b869b58e59fe6c3803b56e84d1eb0da301dd0bd4b520052e95d242cd0b715d9

See more details on using hashes here.

File details

Details for the file zope.security-4.0.0b1-py3.2-win32.egg.

File metadata

File hashes

Hashes for zope.security-4.0.0b1-py3.2-win32.egg
Algorithm Hash digest
SHA256 874e108a674d49f6a6f2e2df3de8d723b966e2ff93e63678e11a7015a9da20b3
MD5 609e091f2578e6506ef6ec4ceb0d1fe7
BLAKE2b-256 9d40c1478984bac600fd941c1d97541f49c0c2baad9490a944cc59f30f659686

See more details on using hashes here.

File details

Details for the file zope.security-4.0.0b1-py2.7-win-amd64.egg.

File metadata

File hashes

Hashes for zope.security-4.0.0b1-py2.7-win-amd64.egg
Algorithm Hash digest
SHA256 c1fb995323038f516661797b6db38265bd7a7d9806944a676a2e51398f3b100f
MD5 356d074d5d8fe15edda5219f63c9d02c
BLAKE2b-256 997777c8a7e37c68bbe97b67c3a748b7c602d494e65249ba0a7740c1ee733f98

See more details on using hashes here.

File details

Details for the file zope.security-4.0.0b1-py2.7-win32.egg.

File metadata

File hashes

Hashes for zope.security-4.0.0b1-py2.7-win32.egg
Algorithm Hash digest
SHA256 a12761c174d55e671d1ff737c0729b93fcfdd3a68872ebc9c5bd02ae4c79d43a
MD5 a4ec4fecb7fc1fe93a3232e1e9fcc2b6
BLAKE2b-256 4a136adf461ce6e14e152e8a3292c13b0d730388853d22281e6df8e74bf32719

See more details on using hashes here.

File details

Details for the file zope.security-4.0.0b1-py2.6-win-amd64.egg.

File metadata

File hashes

Hashes for zope.security-4.0.0b1-py2.6-win-amd64.egg
Algorithm Hash digest
SHA256 8b32ac992889c8a6e80e511dd52c3faab2c50567c7590a173f61c2696e0c4d19
MD5 306b2a07bf53c1aa50a9d13950a9c8fe
BLAKE2b-256 6d9354bdc799e071cea4aa7a20a499e48356236b7a79daff33281ff1cc2768b1

See more details on using hashes here.

File details

Details for the file zope.security-4.0.0b1-py2.6-win32.egg.

File metadata

File hashes

Hashes for zope.security-4.0.0b1-py2.6-win32.egg
Algorithm Hash digest
SHA256 7a202886b93add70eca45266cb975ef3695000d71fe957e1edd829df9552273f
MD5 e943424ab4219ea41590b1be941e999b
BLAKE2b-256 8ab305e6afbfe6b959124d50fd6cd3082ee138923350f9cd181dcabb28f01dc5

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