{ "info": { "author": "Grow SDK Authors", "author_email": "hello@grow.io", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Environment :: Web Environment", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Topic :: Internet :: WWW/HTTP", "Topic :: Internet :: WWW/HTTP :: Dynamic Content", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "# airlock\n\nAirlock is a lightweight, web-security-concious wrapper for *webapp2* on\nGoogle App Engine. It provides oauth2 integration for identity management\nwith Google Accounts, sessions, and user management.\n\n## Comparison\n\nAirlock is a drop-in replacement for several `webapp2` and `protorpc`\nobjects. Specifically, it wraps `remote.Service`, `webapp2.WSGIApplication`,\nand `webapp2.RequestHandler` to provide authentication and session features\nvia oauth2 and the `oauth2client` library.\n\n| original | airlock variant |\n| -------- | --------------- |\n| `protorpc.remote.Service` | `airlock.Service` |\n| `webapp2.RequestHandler` | `airlock.Handler` |\n| `webapp2.WSGIApplication` | `airlock.WSGIApplication` |\n\n## User features\n\n* Oauth2 integration with Google Accounts (sign in and sign out).\n* Anonymous user/session support.\n\n## Security features\n\n* A standard configuration format for specifying the security characteristics of an application.\n* Provides a framework for setting the following headers:\n * Content security policy.\n * HSTS policy.\n * XSRF.\n\n## Usage\n\n1. Download client secrets.\n1. In appengine config, use airlock.set_config\n1. Use airlock's subclasses.\n1. Set up a `User` model.\n", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/grow/airlock", "keywords": "cloud endpoints,google app engine,oauth2", "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "airlock", "package_url": "https://pypi.org/project/airlock/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/airlock/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/grow/airlock" }, "release_url": "https://pypi.org/project/airlock/0.0.13/", "requires_dist": null, "requires_python": null, "summary": "A lightweight wrapper providing Google OAuth2 integration, sessions, XSRF validators, and user management for App Engine apps.", "version": "0.0.13" }, "last_serial": 1485783, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "a237d2727e401760cdcd0ba9b7940d32", "sha256": "3c85761678ad8316787f71d197fdd64598be874f91e08c0e639aa19c32e97476" }, "downloads": -1, "filename": "airlock-0.0.1.tar.gz", "has_sig": false, "md5_digest": "a237d2727e401760cdcd0ba9b7940d32", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 193135, "upload_time": "2015-01-16T02:16:44", "url": "https://files.pythonhosted.org/packages/b4/85/737897054f682a7cd9883075344d3fa73887252675faa4840eee3858b757/airlock-0.0.1.tar.gz" } ], "0.0.11": [ { "comment_text": "", "digests": { "md5": "623ebebe63992acf6747207486986c8b", "sha256": "5cd3a0d154fe17286195cdeb7e7e76208684acd722616549754cdd3c6b8b3ea8" }, "downloads": -1, "filename": "airlock-0.0.11.tar.gz", "has_sig": false, "md5_digest": "623ebebe63992acf6747207486986c8b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 195032, "upload_time": "2015-03-30T19:23:07", "url": "https://files.pythonhosted.org/packages/93/4a/c87e38c99a91cbf315a30802c4425d5a79e2a7757b60a7ac7bf2ac1fcc20/airlock-0.0.11.tar.gz" } ], "0.0.12": [ { "comment_text": "", "digests": { "md5": "ee9f97707a11078d97fdfd3f1a4fccf1", "sha256": "df70e6d122acab1de219a9ca30bf3c70f977e52ddf88edfb96501499d68ff41a" }, "downloads": -1, "filename": "airlock-0.0.12.tar.gz", "has_sig": false, "md5_digest": "ee9f97707a11078d97fdfd3f1a4fccf1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 195087, "upload_time": "2015-03-31T22:54:15", "url": "https://files.pythonhosted.org/packages/13/c2/d817407a617d4fda0a16770fa0b6a82121b78f5fa4de93f0148b83bb4a84/airlock-0.0.12.tar.gz" } ], "0.0.13": [ { "comment_text": "", "digests": { "md5": "a83b3dc949ffefb8c4871e6618d6ce72", "sha256": "e6a70fd721e03bd7204d23376a3d04c259a1ef38943373bb77dd244e62bdb4f1" }, "downloads": -1, "filename": "airlock-0.0.13.tar.gz", "has_sig": false, "md5_digest": "a83b3dc949ffefb8c4871e6618d6ce72", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 239698, "upload_time": "2015-03-31T23:20:10", "url": "https://files.pythonhosted.org/packages/2a/6b/3a9c39babdf7ea9cfb516b3c86b7be8bc218b4aecc3ec1b015ef666e5e36/airlock-0.0.13.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a83b3dc949ffefb8c4871e6618d6ce72", "sha256": "e6a70fd721e03bd7204d23376a3d04c259a1ef38943373bb77dd244e62bdb4f1" }, "downloads": -1, "filename": "airlock-0.0.13.tar.gz", "has_sig": false, "md5_digest": "a83b3dc949ffefb8c4871e6618d6ce72", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 239698, "upload_time": "2015-03-31T23:20:10", "url": "https://files.pythonhosted.org/packages/2a/6b/3a9c39babdf7ea9cfb516b3c86b7be8bc218b4aecc3ec1b015ef666e5e36/airlock-0.0.13.tar.gz" } ] }