{ "info": { "author": "Marc-Antoine Gouillart", "author_email": "marsu_pilami@msn.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Web Environment", "Framework :: Django", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python :: 2.7" ], "description": "Django OpenID Connect (OIDC) authentication provider\n====================================================\n\nThis module makes it easy to integrate OpenID Connect as an authentication source in a Django project.\n\nBehind the scenes, it uses Roland Hedberg's great pyoidc library.\n\nQuickstart\n----------\n\nInstall djangooidc::\n\n # Latest released package:\n pip install django-oidc\n \n # Latest code - unstable!\n pip install git+https://github.com/marcanpilami/django-oidc.git\n \n\nThen to use it in a Django project, add this to your urls.py::\n\n url(r'openid/', include('djangooidc.urls')),\n\n\nThen add the following items to your settings.py:\n\n* add `'djangooidc.backends.OpenIdConnectBackend'` to AUTHENTICATION_BACKENDS **after** the default\n `'django.contrib.auth.backends.ModelBackend'`\n* set LOGIN_URL = 'openid'\n* add the specific OIDC parameters (change the absolute URLs to yours)::\n\n # Information used when registering the client, this may be the same for all OPs\n # Ignored if auto registration is not used.\n OIDC_DYNAMIC_CLIENT_REGISTRATION_DATA = {\n \"application_type\": \"web\",\n \"contacts\": [\"ops@example.com\"],\n \"redirect_uris\": [\"http://localhost:8000/openid/callback/login/\", ],\n \"post_logout_redirect_uris\": [\"http://localhost:8000/openid/callback/logout/\", ]\n }\n\n # Default is using the 'code' workflow, which requires direct connectivity from your website to the OP.\n OIDC_DEFAULT_BEHAVIOUR = {\n \"response_type\": \"code\",\n \"scope\": [\"openid\", \"profile\", \"email\", \"address\", \"phone\"],\n }\n\nThe configuration above is enough to use OIDC providers (OP) that support discovery and self client registration.\nIn addition, you may want to use a specific OpenID Connect provider that is not auto-discoverable. This is done\nby adding items to the OIDC_PROVIDERS dictionary. See full documentation for parameter names.\n\nFor example, an Azure AD OP (V1 endpoint, as V2 does not support code flow yet) would be::\n\n OIDC_PROVIDERS = {\n \"Azure Active Directory\": {\n \"srv_discovery_url\": \"https://sts.windows.net/aaaaaaaa-aaaa-1111-aaaa-xxxxxxxxxxxxx/\",\n \"behaviour\": OIDC_DEFAULT_BEHAVIOUR,\n \"client_registration\": {\n \"client_id\": \"your_client_id\",\n \"client_secret\": \"your_client_secret\",\n \"redirect_uris\": [\"http://localhost:8000/openid/callback/login/\"],\n \"post_logout_redirect_uris\": [\"http://localhost:8000/openid/callback/logout/\"],\n \"token_endpoint_auth_method\": \"client_secret_post\",\n }\n }\n }\n\n\nYou may now test the authentication by going to (on the development server) http://localhost:8000/openid/login or to any\nof your views that requires authentication.\n\n\nFeatures\n--------\n\n* Ready to use Django authentication backend\n* No models stored in database - just some configuration in settings.py to keep it simple\n* Fully integrated with Django's internal accounts and permission system\n* Support for all OIDC workflows: Authorization Code flow, Implicit flow, Hybrid flow. Don't worry if you don't know\n what these are - the package comes with great defaults.\n* Includes logout at the provider level\n\n\n\n\nHistory\n-------\n\n0.1.4 (2017-01-07)\n++++++++++++++++++\n\n* OIDC library was updated. Its version is no longer \"latest\" to avoid breaking django-oidc on each major library update.\n* code that was broken by the update was fixed.\n* no more need for wheels on Windows.\n\n0.1.0 (2015-05-08)\n++++++++++++++++++\n\n* First release\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/marcanpilami/django-oidc", "keywords": "repo_name", "license": "Apache Software License", "maintainer": "", "maintainer_email": "", "name": "django-oidc", "package_url": "https://pypi.org/project/django-oidc/", "platform": "", "project_url": "https://pypi.org/project/django-oidc/", "project_urls": { "Homepage": "https://github.com/marcanpilami/django-oidc" }, "release_url": "https://pypi.org/project/django-oidc/0.1.4/", "requires_dist": null, "requires_python": "", "summary": "A Django OpenID Connect (OIDC) authentication backend", "version": "0.1.4" }, "last_serial": 2559454, "releases": { "0.1.2": [ { "comment_text": "", "digests": { "md5": "837a64a2bfc6ed1e5541b4ccf7f058ed", "sha256": "a6ee39296c1ab974a1366212be0c0ca02a2152bedd0f3585ccc8071a2dbc1b99" }, "downloads": -1, "filename": "django-oidc-0.1.2.zip", "has_sig": false, "md5_digest": "837a64a2bfc6ed1e5541b4ccf7f058ed", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20380, "upload_time": "2015-06-14T10:15:51", "url": "https://files.pythonhosted.org/packages/1c/45/e12b4db327f42b9dcc54bb86fcd1a9628212b76c314fe75498850ee78c57/django-oidc-0.1.2.zip" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "a954d87e03905c4669406b59b48cfbf3", "sha256": "4b60b1daf3bcb3142a1c7123986b76659fd8b4714a10f89d246f204f053e8649" }, "downloads": -1, "filename": "django-oidc-0.1.3.zip", "has_sig": false, "md5_digest": "a954d87e03905c4669406b59b48cfbf3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20383, "upload_time": "2015-06-14T11:19:28", "url": "https://files.pythonhosted.org/packages/36/40/25d92cf3de1ba4127b0c9651f4dd97c1df6bc2c5b2bc386ffefa3283eaea/django-oidc-0.1.3.zip" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "17e553e51f2ac0a254041d72cfa2d5a4", "sha256": "566fcc38abc8206ac60438d69f985fdfb13adfd204055bdc4c942a1fb204a8a8" }, "downloads": -1, "filename": "django-oidc-0.1.4.tar.gz", "has_sig": false, "md5_digest": "17e553e51f2ac0a254041d72cfa2d5a4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13677, "upload_time": "2017-01-07T15:09:04", "url": "https://files.pythonhosted.org/packages/72/f3/72a64e7db0653aab25bf26721187f27a81a208caf9bd3373d53b31f3a2e0/django-oidc-0.1.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "17e553e51f2ac0a254041d72cfa2d5a4", "sha256": "566fcc38abc8206ac60438d69f985fdfb13adfd204055bdc4c942a1fb204a8a8" }, "downloads": -1, "filename": "django-oidc-0.1.4.tar.gz", "has_sig": false, "md5_digest": "17e553e51f2ac0a254041d72cfa2d5a4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13677, "upload_time": "2017-01-07T15:09:04", "url": "https://files.pythonhosted.org/packages/72/f3/72a64e7db0653aab25bf26721187f27a81a208caf9bd3373d53b31f3a2e0/django-oidc-0.1.4.tar.gz" } ] }