{ "info": { "author": "Aaron McMillin", "author_email": "fieldobject@aaron.mcmillinclan.org", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Framework :: Django", "Framework :: Django :: 1.7", "Framework :: Django :: 1.8", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.2", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4" ], "description": "=================================\ndjango-field-object-permissions\n=================================\n``django-field-object-permissions`` is an object permission system based on\nfield values of the object. (eg: object.owner == user)\n\nInstall\n-------\nTo install just run::\n\n pip install django-field-object-permissions\n\nConfiguration\n-------------\n\n1. Put ``fieldobjectpermissions`` to your ``INSTALLED_APPS`` of the settings module::\n\n INSTALLED_APPS = (\n ...\n 'fieldobjectpermissions',\n )\n\n2. Replace the default authentication backend (fieldobjectpermissions is based\non it)::\n\n AUTHENTICATION_BACKENDS = (\n # django.contrib.auth.backends.ModelBackend, # Default\n fieldobjectpermissions.backends.FieldObjectPermissionsBackend,\n )\n\n3. These new values are optional, defaults are shown below::\n\n FIELD_OBJECT_PERMISSIONS = {\n 'OWNER_FIELDS': ('owner',),\n 'GROUP_FIELDS': ('group',),\n 'OWNER_ACTIONS': ('change', 'delete'),\n 'GROUP_ACTIONS': ('change', 'delete'),\n }\n\n4. Run ``python manage.py migrate`` as there are post-migration triggers to create\nthe extra permissions required.\n\nUsage\n-----\n\nYou can now assign permissions like ``owner_change_foo`` to allow only the user\nwho matches the value of the ``owner`` field to change an object (or the\nsuperuser, of course).\n\nOr the permission ``group_delete_foo`` to all allow any user who is a member of\na group listed in the ``group`` field of an object to delete it (or the\nsuperuser, you know this).\n\nThese permissions are created in a post-migrate signal handler, and will only\nbe created for models with have the required field(s).\n\nBy specifying multiple fields for ``OWNER_FIELDS`` or ``GROUP_FIELDS`` only one of\nthe listed fields needs to exist for permission creation. And only one needs\nto match for permission to be granted by the auth backend.\n", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/aarcro/django-field-object-permissions", "keywords": null, "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "django-field-object-permissions", "package_url": "https://pypi.org/project/django-field-object-permissions/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/django-field-object-permissions/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://github.com/aarcro/django-field-object-permissions" }, "release_url": "https://pypi.org/project/django-field-object-permissions/0.1.1/", "requires_dist": null, "requires_python": null, "summary": "Provides an object permission system based on field values (eg: object.owner == user)", "version": "0.1.1" }, "last_serial": 2767158, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "00c372abd442059fe742532ee69e8a08", "sha256": "8961c45e4b11f93081ba6b9784f2536115c6e951b3d85db14930998d5beecf93" }, "downloads": -1, "filename": "django-field-object-permissions-0.0.1.tar.gz", "has_sig": false, "md5_digest": "00c372abd442059fe742532ee69e8a08", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7056, "upload_time": "2015-09-06T03:14:37", "url": "https://files.pythonhosted.org/packages/73/f2/bcb9f7365a71ed8d6ec63fde92412c0bacd3147854aaa6532c06cee7dfe3/django-field-object-permissions-0.0.1.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "ef2731e794b30daf5f484b698e4791b1", "sha256": "d573f4a4d8b9f4bf6a59f5719030f7c2122a71f54969a4fe6b50403b8d328dc1" }, "downloads": -1, "filename": "django-field-object-permissions-0.1.0.tar.gz", "has_sig": false, "md5_digest": "ef2731e794b30daf5f484b698e4791b1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7682, "upload_time": "2015-09-06T03:34:26", "url": "https://files.pythonhosted.org/packages/3e/43/e8c3d3c7f0f65c39baaaf4a6f454d19e03fea7a679f39402e223bed7349a/django-field-object-permissions-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "ea62d691035e4548a474e070c7b907d4", "sha256": "e28300dc7031428466f497f0ef122d81514f95d55632a6734b1d02ab02224b57" }, "downloads": -1, "filename": "django-field-object-permissions-0.1.1.tar.gz", "has_sig": false, "md5_digest": "ea62d691035e4548a474e070c7b907d4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4898, "upload_time": "2017-04-10T18:18:18", "url": "https://files.pythonhosted.org/packages/cb/00/b79542b0641708e55cf837f70f6b461d1879fc95887afa58ad97f674dcb8/django-field-object-permissions-0.1.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "ea62d691035e4548a474e070c7b907d4", "sha256": "e28300dc7031428466f497f0ef122d81514f95d55632a6734b1d02ab02224b57" }, "downloads": -1, "filename": "django-field-object-permissions-0.1.1.tar.gz", "has_sig": false, "md5_digest": "ea62d691035e4548a474e070c7b907d4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4898, "upload_time": "2017-04-10T18:18:18", "url": "https://files.pythonhosted.org/packages/cb/00/b79542b0641708e55cf837f70f6b461d1879fc95887afa58ad97f674dcb8/django-field-object-permissions-0.1.1.tar.gz" } ] }